پروتکل انتقال فایل (FTP) یک پروتکل شبکه برای انتقال نسخههای کپی شده از فایلها از یک کامپیوتر به کامپیوتر دیگر است. FTP Client یا خدمات گیرنده FTP برنامهای است که به شما امکان انتقال فایلها بین کامپیوترها را میدهد. بهعنوان مثال، میتوانید صفحات وب را روی کامپیوتر خود بسازید و از یک FTP کلاینت برای آپلود وبسایت به سروری که قرار است میزبان باشد استفاده کنید.
FTP چیست؟
پروتکل FTP در طی سالهای 1970 و 1980 میلادی بهمنظور پشتیبانی از اشتراکگذاری فایل روی TCP/IP و شبکههای قدیمیتر توسعه پیدا کرد. این پروتکل از مدل کلاینت - سرور در ارتباطات پیروی میکند. برای انتقال فایلها بهوسیله FTP، کاربر برنامه FTP کلاینت را اجرا میکند و فرآیند اتصال به یک کامپیوتر دوردست که نرمافزار FTP سرور روی آن در حال اجرا است را آغاز میکند. بعد از برقراری اتصال، کلاینت میتواند انتخاب کند که نسخههای کپی از فایلها را ارسال یا دریافت کند. FTP سرور از طریق پورت 21 در TCP برای تقاضاهای ورودی جهت برقراری ارتباط با FTP کلاینتها گوش میکند. وقتی تقاضایی دریافت میشود، سرور از این پورت برای کنترل ارتباط استفاده میکند و یک پورت جداگانه را برای انتقال دادههای فایل باز میکند.
با این وجود، FTP روی دو پورت متفاوت TCP (پروتکل کنترل توزیع) عمل میکند: 20 و 21. پورتهای 20 و 21 در FTP باید هر دو روی شبکه باز باشند تا عملیات انتقال فایل با موفقیت انجام شود.
بعد از آنکه نام کاربری و پسورد صحیح FTP در نرمافزار FTP کلاینت وارد شدند، نرمافزار FTP سرور پورت 21 را باز میکند. پورت 21 در FTP گاهی اوقات بهطور پیشفرض با نام پورت فرمان یا کنترل هم شناخته میشود. سپس کلاینت یک اتصال دیگر را از طریق پورت 20 به سرور برقرار میکند تا انتقال واقعی فایل صورت بگیرد.
پورت پیشفرض برای فرامین و فایلهای ارسالی بر روی FTP قابل تغییر است. این استاندارد وجود دارد، با اینحال، برنامههای کلاینت/نرمافزار، روترها و دیوارههای آتش میتوانند روی پورتهای مشابه با هم بهتوافق برسند تا در نهایت منجر به سادهتر شدن پیکربندی شود.
FTP کلاینتهای اصلی برنامههای خط فرمان برای سیستمعاملهای یونیکس بودند. حالت دیگری از FTP به نام TFTP هم توسعه داده شده بود تا از سیستمهای low-end پشتیبانی کند. بعد از آن، مایکروسافت "ویندوز FTP کلاینت" را منتشر کرد که از رابط گرافیکی بهرهمند بود. FTP کلاینتهای متعددی برای سیستمعاملهای گوناگون در دسترس قرار دارند. خیلی از آنها رایگان هستند، اما در کنار آنها FTP کلاینتهای پرمیوم هم هستند که شامل ویژگیهای اضافه مانند گزینه انتقال فایلها بهطور خودکار طبق یک برنامه زمانی مشخص هستند.
چگونه از طریق پورت 21 در FTP اتصال برقرار کنیم
اگر FTP شکست بخورد، ممکن است پورتهای صحیح روی شبکه باز نباشند. این مسدود بودن میتواند در سمت سرور یا در سمت کلاینت رخ بدهد. هر نرمافزاری که پورتها را مسدود میکند باید بهصورت دستی تغییر کند تا بتواند در صورتی که سیستمعامل از کار افتاد پورتها را مسدود کند.
بهطور پیشفرض، شاید روترها و دیوارههای آتش اتصالات روی پورت 21 را نپذیرند. اگر FTP کار نمیکند، بهتر است که ابتدا بررسی کنید آیا روتر تقاضاها را بهدرستی روی آن پورت فوروارد میکند و اینکه دیواره آتش پورت 21 را مسدود نکرده باشد.
نکته: برای اسکن شبکه از Port Checker استفاده کنید تا بررسی کنید آیا روتر پورت 21 را باز کرده است. یک ویژگی به نام passive mode (حالت پسیو) کمک میکند تا موانع موجود در برابر دسترسی به پورت شناسایی شوند.
علاوه بر اینکه باید مطمئن شد پورت 21 روی هر دو سمت کانال ارتباطی باز است، پورت 20 هم باید هم روی شبکه و هم از طریق نرمافزار کلاینت اجازه داشته باشد. اگر از باز کردن هر دو پورت چشمپوشی شود از انتقال کامل در هر دو مسیر رفت و برگشت جلوگیری میشود.
وقتی که اتصال به FTP سرور برقرار میشود، نرمافزار کلاینت گزینههای نام کاربری و پسورد را که برای دسترسی به آن سرور خاص مورد نیاز است را اعلان میکند. اگر از طریق تلنت یا ارتباط Secure Shell (پوسته امن) لاگین کنید، خیلی از FTP سرورها اطلاعات پیشفرض ناشناس را ممکن میسازند.
نکته: دو FTP کلاینت محبوب به نامهای FileZilla و WinSCP وجود دارند که هر دوی آنها بدون نیاز به پرداخت هزینه در دسترس هستند.
راهاندازی FTP کلاینتها
وقتی FTP کلاینت را باز میکنید، چند کادر مختلف میبینید که باید آنها را پر کنید:
- Profile Name: در این قسمت باید نامی که میخواهید برای وبسایت خود داشته باشید را وارد کنید.
- Host Name or Address: این نام سروری است که میزبان صفحه هوم شما است.
User ID and Password: اینها همان نام کاربری و پسوردی است که در هنگام ثبتنام برای سرویس هاست خود ساخته بودید.
برای اتصال به FTP سرور، به نام کاربری و پسوردی نیاز دارید که توسط administrator ساخته شده است. البته سرورهایی هستند که از قراردادهای خاص استفاده میکنند و بر اساس آن کلاینت میتواند از نام "anonymous" بهعنوان نام کاربری انتخاب کند. کلاینتها، FTP سرورها را یا با آدرس IP (مانند 192.168.0.1) یا با نام هاست میشناسند.
علاوه بر این باید یک مود برای انتقال FTP تعیین کنید. FTP از دو مود مختلف برای انتقال داده استفاده میکند: متن ساده (ASCII) و باینری. یکی از اشتباهات رایج در هنگام استفاده از FTP تلاش برای انتقال فایل باینری (مانند عکس، برنامه یا فایل موسیقی) در حالت متن است که باعث میشود تا فایل منتقل شده غیرقابل استفاده باشد.
نکته: میتوانید به قسمت خصوصیات استارتآپ بروید و پوشه پیشفرض محلی را به پوشهای در کامپیوتر که فایلهای صفحه وب را در آن نگه میدارید تغییر دهید.
چگونه با استفاده از FTP فایلها را انتقال دهیم
FTP کلاینتها تا حدودی با هم فرق میکنند، اما رابط آنها اصولا از دو پنل اصلی تشکیل شده است:
- پنل سمت چپ فایلهای روی کامپیوتر را نمایش میدهد.
- پنل سمت راست فایلهای روی سرور هاست را نشان میدهد.
در پنل سمت چپ فایلی که میخواهید منتقل کنید را مشخص کرده و روی آن دو بار کلیک کنید تا فایل در پنل سمت راست ظاهر شود. همچنین میتوانید فایلها را از سرور هاست به کامپیوتر خود انتقال دهید. علاوه بر این، میتوانید فایلهای خود را ببینید، تغییر نام دهید، پاک کنید یا انتقال دهید. اگر برای فایلهایی که دارید نیاز به ساخت پوشههای جدید دارید، میتوانید آنرا انجام دهید.
نکته: مطمئن شوید پوشههایی که روی سرویس هاستینگ دارید دقیقا مشابه همان چیزی باشد که روی کامپیوتر خود دارید.
جایگزینهای FTP
سیستمهای اشتراکگذاری فایل نظیر به نظیر (P2P) مانند BitTorrent نسبت به فناوری FTP حالتهای پیشرفتهتر و بسیار ایمنتری را ارائه میدهند. BitTorrent در کنار سیستمهای پیشرفته امروزی در زمینه ذخیرهساز کلاود مانند "باکس" و دراپباکس" بهطور قابل توجهی نیاز به FTP را از بین برده است. با این وجود، توسعهدهندگان وب و ادمینهای سرور همچنان نیاز دارند تا بهصورت منظم از FTP استفاده کنند.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟