برای ساخت سرور FTP راه های متفاوتی وجود دارد که در این مقاله ما یکی از این روش های رایج ساخت سرور FTP را بیان می کنیم.
عملکردهای FTP در واقع یک مدل سرویس دهنده است. سرور میزبان دارای پرونده هایی است که باید بین کاربران به اشتراک گذاشته شوند. کلاینت برای دسترسی، بارگیری و آپلود فایل ها به سرور، فایل های رابط را فراهم می کند. کامپیوترهای انتقال دهنده پرونده ها می توانند در همان شبکه که پیکربندی سرور FTP انجام شده قرار داشته باشند. همچنین امکان دارد خارج از شبکه (از طریق اینترنت) قرار داشته باشند. FTP از دو پورت، یکی برای اتصال و دیگری برای ارسال داده استفاده می کند.
FTP می تواند در دو حالت فعال (active) و غیرفعال (passive) اجرا شود. از دو کانال بین کلاینت و سرور استفاده می کند: کانال فرمان و کانال داده. کانال فرمان برای ارسال دستورات و پاسخ ها است و کانال داده برای ارسال داده های واقعی است. در مورد حالت های فعال و غیرفعال نیز می توان گفت: در حالت فعال، کلاینت کانال فرمان را و سرور کانال داده را راه اندازی می کند. در حالت غیرفعال، هر دو کانال دستور و داده توسط کلاینت تنظیم می شوند.
بیشتر سازمان ها حالت passive را ترجیح می دهند. در این حالت، کلاینت هر دو کانال را ایجاد می کند. بنابراین، سازمان تغییرات کمتری برای ایجاد در فایروال کلاینت دارد. اتصال از کلاینت به سرور است و داده ها با مراجعه به کلاینت به ترافیک برگشتی تبدیل می شوند. به طور کلی، سازمان ها می توانند به کاربران (مشتری) خود اجازه دهند بدون مشکل برای امنیت شبکه، به سرورهای FTP وصل شوند.
تنظیم FTP در حالت passive
ابتدا، کانال فرمان توسط کلاینت به سمت سرور FTP در پورت 21 باز می شود. کلاینت همچنین دو درگاه تصادفی و غیرقابل کنترل (معمولاً یک درگاه بزرگتر از 1023) باز می کند. اولین پورت را P و پورت دوم را P + 1 می نامیم. FTP کلاینت با ارسال یک دستور PASV اتصال به سرور را آغاز می کند. کلاینت با دستور PASV از پورت P به پورت 21 سرور متصل می شود. سپس سرور پورت غیرقابل کنترل دیگر یا Q (هر پورت بزرگتر از 1023) را باز می کند و اطلاعات درگاه را به عنوان پاسخ به دستور PASV، ارسال می کند. اکنون کلاینت برای شروع انتقال داده، از اتصال پورت P + 1 به پورت Q روی سرور شروع می کند.
مراحل:
- کلاینت با استفاده از دستور PASV در پورت 21 با سروراتصال می گیرد.
- سرور با استفاده از درگاه 2000 پاسخ می دهد. در اینجا، پورت 2000 پورتی است که سرور برای اتصال داده به آن توجه دارد.
- مشتری اتصال را از درگاه 1025 تا 2000 (روی سرور) آغاز می کند.
- سرور ACK (تصدیق) را ارسال می کند.
در ادامه مقاله نحوه ساخت سرور FTP، راجع به باز کردن کانال ها صحبت خواهیم کرد:
باز کردن کانال ها در سرویس گیرنده و سرور FTP
سمت مشتری: داده ها و سایر ارتباطات کلاینت باید به سرور FTP برسند. اطمینان حاصل کنید که داده های خروجی و سایر ارتباطات از کلاینت امکان دسترسی به سرور FTP را دارند.
سمت سرور: پورت 21 باید باز باشد، زیرا این پورت است که فرمان PASV را برای شروع اتصال دریافت می کند. پورت مورد استفاده سرور برای پاسخگویی به مشتری می تواند چیزی بین پورت 22 تا 1022 باشد. از آنجا که سرور FTP یک درگاه تصادفی (هر چیزی بزرگتر از 1023) را مشخص می کند، باید این پورت ها برای ارتباطات باز باشند.
فعال کردن FTP در ویندوز
در این مثال ، ما از Windows Server 2008 R2 برای پیکربندی FTP استفاده خواهیم کرد.
اگر IIS نصب شده باشد:
- به مسیر Start > Control Panel > Administrative Tools > Server Manager بروید.
- در Windows Server Manager، به گره Roles رفته و (Web Server (IIS را توسعه دهید.
- روی (Web Server (IIS کلیک راست کنید و گزینه Add Role Services را انتخاب کنید.
- در Add Role Services ویندوز، به قسمت Roles Services رفته و FTP Server را چک نمایید.
- بررسی نمایید IIS Management Console ،دارای گزینه IIS Management Console باشد.
- بر روی Next کلیک کرده و سپس روی Install کلیک کنید.
انتقال پرونده ها
برای انتقال فایل ها، باید یک سایت FTP اضافه کنید. پس از فعال شدن سایت FTP، کلاینت ها می توانند با استفاده از پروتکل FTP به سایت و از سایت انتقال را انجام دهند.
اگر IIS نصب نشده باشد:
1- به مسیر Start > Control Panel > Administrative Tools > Server Manager در Windows Server Manager بروید.
2- به گره Roles بروید و روی Roles کلیک راست کنید و سپس روی Add Roles کلیک کنید.
3- در پنجره Add Roles ، Server Roles را باز کرده و (Web Server (IIS را بررسی کنید.
4- با استفاده از setup wizard اقدام کرده و روی نصب کلیک کنید. صبر کنید تا نصب تمام شود.
راه اندازی یک سایت FTP
1- به مسیر Start > Control Panel > Administrative Tools > Internet Information Services (IIS) Manager بروید.
2- پس از باز شدن کنسول IIS، سرور محلی را توسعه دهید.
3- روی Sites کلیک راست کرده و Add FTP Site را انتخاب کنید.
4- در پنجره Add FTP Site، نام سرور FTP و مسیر فهرست محتوا را تایپ کرده و Next را بزنید. مسیر دایرکتوری باید همان مسیری باشد که مجوزها را برای دسترسی ناشناس در بالا تنظیم کردیم، ما از مسیر زیر استفاده کردیم:
%SystemDrive%\ ftp \ftproot
5- در پنجره تنظیمات اتصال و SSL، آدرس IP سرور را تایپ کنید. Start FTP Site Automatically را بررسی نمایید و SSL Based on Constraint را انتخاب کنید و روی Next بزنید.
6- اکنون، گزینه Basic را برای تأیید اعتبار انتخاب کنید.
7- روی Finish کلیک کنید. اکنون، ایجاد سایت FTP کامل شده است.
نحوه ساخت سرور FTP به طور کامل برای شما عزیزان توضیح داده شد. برای اطلاع از نحوه اتصال با استفاده از filezilla می توانید به مقاله لینک داده شده مراجعه نمایید.