FTP چیست؟
FTP مخفّف File Transfer Protocol یک پروتکل است که در سال ۱۹۷۱توسط شخصی به نامAbhay Bhushan و تحت عنوان RFC114 در بستر اینترنت انتشار و توسعه پیدا کرد و از پروتکلهای پرکاربرد و قدیمی اینترنتی میباشد و یکی از راههای آسان برای انتقال فایلها (مخصوصاً فایلهای نستباً حجیم) محسوب میشود. همانطور که از نام این پروتکل مشخص است، وظیفه FTP انتقال فایلها از یک کامپیوتر به کامپیوتر دیگری است. به زبان ساده، FTP یک روش برای انتقال فایلها بین دو کامپیوتر به صورت آنلاین است.
کاربردهای FTP
FTP برای web developers یا توسعهدهندگان وب، ابزاری برای انتقال فایلها (مخصوصاً فایلهای نسبتاً حجیم) از کامپیوتر محلی به سرور میزبان وبسایت است. برای مثال اگر شما بخواهید روی هاستتان WordPress نصب کنید، برای انتقال فایل zip نصبی wordpress از کامپیوتر شخصی شما به سرور میزبانی کنندههای هاست، به FTP نیاز پیدا خواهید کرد.
اگر وبسایت دارید، FTP یک ابزار ضروری و کارآمد برای شما است.حتی اگر web developer نیستید، آشنایی با آن برای شما مفید خواهد بود. در ادامه، تمامی اطلاعاتی که لازم است شما به عنوان یک کاربر در سطح اینترنت درباره FTP و کاربردهای FTP بدانید، شرح داده خواهد شد در انتها نیز راهاندازی FTP Server در windows server را برای شما شرح خواهیم داد. پس با ما همراه باشید.
ایمنسازی FTP
پروتکل FTP در سال ۱۳۵۰ شمسی ظهور کرد، در آن زمان، امنیت سایبری مانند امروز اهمیت پیدا نکرده بود. به بیان دیگر ارتباطها و تراکنشها در پروتکل FTP رمزنگاری (Encrypted) نمیشوند.
به همین دلیل است که کاربرانِ FTP امروزه از FTPS استفاده میکنند. FTPS دقیقاً مشابه FTP است، با این تفاوت که تمامی ارتباطات در آن رمزنگاری شده است و به همین دلیل کاربران غیرمجاز در صورت دسترسی به فایلها نمیتوانند از آنها استفاده کنند. امروزه اغلب شرکتها ضمن خودداری از انتقال اطلاعات رمزنگاری نشده، به جای سرویس FTP، از سرویس امنFTPS استفاده میکنند.
راهاندازی FTP Server شخصی
یک FTP Server فولدرهایی را برای انتقال فایل در اختیار کاربر قرار میدهد. کاربران با FTP Account به این سرور متصل میشوند و از طریق نرمافزارهای مختلف (مانند File Zilla و Cute FTP و…) امکان دانلود فایل از سرور و همچنین آپلود فایل به سرور را پیدا میکنند.
به دو روش میتوان راهاندازی FTP Server در ویندوز سرور را پیگیری نمود، پیشتر در این مقاله در مورد نحوه راهاندازی و نصب FileZilla server صحبت کردیم، در این آموزش قصد داریم نصب FTP Server با استفاده از Roleهای ویندوز روی ویندوز سرور را قدم به قدم با هم پیش ببریم.
نصب رول FTP Server
در ابتدا توجّه داشته باشید که روی سرورتان IIS و DNS نصب و کانفیگ شده باشد، مانند تصویر زیر روی Start Menu و سپس بر روی Server Manager کلیک کنید.
پس از باز شدن Server Manager روی Add roles and features کلیک کنید.
در این مرحله روی Next کلیک کنید.
روی گزینهی Role-Based or feature-based installation کلیک و سپس روی Next کلیک کنید.
مانند تصویر زیر گزینهی Select a server from the server pool را انتخاب و روی Next کلیک کنید.
در مرحلهی Select one or more roles to install گزینههای FTP Server و FTP Service و FTP Extensibility را انتخاب نموده و روی Next کلیک کنید.
در صورتیکه علاوه بر FTP سرور، Feature خاصی مدنظر دارید، انتخاب نموده و روی Next کلیک کنید.
روی Install کلیک کنید تا رول FTP بر روی سرور نصب گردد.
حال باید برای userهایی که به FTP میبایست متصل شوند، Group ایجاد کرده و userها را ایجاد کنیم، مجدداً Server Manager را باز کرده، از منوی Tools بر روی Computer Management کلیک میکنیم.
در بخش Local Groups and users در وسط صفحه راست کلیک نموده و روی New User کلیک میکنیم.
یوزرهایی که قصد داریم از طریق FTP به سرور متصل شوند را ایجاد میکنیم.
روی گزینهی Groups راست کلیک کرده و در سمت چپ صفحه روی More Actions کلیک کرده و روی New Group کلیک میکنیم.
یک نام به Group اختصاص میدهیم و روی Add کلیک میکنیم.
روی گزینهی Advanced کلیک کنید.
سپس روی دکمهی find now کلیک کنید و دو یوزری که در مرحلهی قبل ایجاد کردید را در این گروه Add کنید.
سپس روی Create کلیک نمایید تا گروه ایجاد شود.
اکنون یک فولدر برای FTP Access یوزرها ایجاد نمایید و روی فولدر راست کلیک کنید، گزینهی Properties را انتخاب نموده و روی تب Security کلیک و دکمهی Edit را انتخاب کنید.
روی گزینهی Advanced کلیک کنید.
روی find now کلیک کنید و یوزرهای FTP که در مرحلهی قبل ایجاد کردیم را انتخاب نموده و در نهایت Ok کنید.
در این مرحله، به یوزرها دسترسی Full Control اختصاص دهید و Ok کنید.
مجدداً Server Manager را باز کنید و از منوی Tools گزینهی IIS را باز میکنیم.
در وسط صفحه روی FTP Authentication کلیک کنید.
گزینهی Basic Authentication را Enable کنید.
مجدداً در صفحهی اصلی IIS گزینهی FTP Authorization Rules را انتخاب نمایید.
در بخش Specified users، نام یوزرهایی که برای Ftp ساختیم را درج میکنیم و مجوزهای read و write را به یوزرها بدهید.
حال به صفحه اصلی IIS برگشته، روی گزینهی Sites راست کلیک کرده و روی Add FTP Site کلیک کنید.
برای FTP Site یک نام و یک مسیر در نظر بگیرید و روی Next کلیک کنید
گزینهی SSL را روی No SSL قرار دهید و روی Next کلیک کنید.
از بخش Authorization، گزینهی Specified Users را انتخاب نموده، یوزرهایی که ایجاد کرده بودیم را در فیلد مورد نظر درج میکنیم و مجوزهای read و write به آنها میدهیم.
سپس در صفحهی اصلی IIS روی FTP Firewal Supoort کلیک کنید.
در بخش Data Channel Port range دو عدد 0-0 را وارد نمایید تا محدودیتی در رنج پورتها نباشد، ابتدا روی apply و سپس روی Ok کلیک کنید.
حال از طریق یک نرم افزار FTP Client مانند Filezilla Client یا Cute FTP به سرور از طریق یوزری که ایجاد کرده بودید، متصل شوید اگر اتصال درست باشد، صفحهای مانند تصویر زیر مشاهده میکنید:
به جهت تست صحت دسترسی read و write، در وسط صفحه راست کلیک میکنیم و یک فولدر میسازیم(فولدر از طریق FTP در مسیر مورد نظر ساخته شده است)
طبق تصویر زیر فولدر ایجاد شد.
وارد ریموت سرور مشوید و مسیر فولدر FTP را باز کنید، فولدری که از طریق نرم افزار FTP Client ایجاد کردید، در این بخش قابل مشاهده است.