آشنایی با FTP
اگر برنامه نویس و یا وب مستر باشید، بدون شک FTP را زیاد شنیده اید اما شاید هیچ وقت به دنبال پیدا کردن معنی و کاربرد آن نبوده اید. FTP یا File Transfer Protocol یک پروتکل است که در سال ۱۹۷۱ در بستر اینترنت توسعه یافت. این پروتکل یکی از پرکاربردترین و قدیمیترین پروتکلهای اینترنت است. در ادامه این مطلب میخواهیم ببینیم که پروتکل FTP چیست و چه کاربردهایی در دنیای وب دارد؟
پروتکل اف تی پی یا FTP در سال ۱۹۷۱ توسط Abhay Bhushan و تحت عنوان RFC114 منتشر شد. همانطور که از نام این پروتکل مشخص است، FTP وظیفه انتقال فایلها از یک کامپیوتر به کامپیوتر دیگری را برعهده دارد. این پروتکل با هدف ارائه روشی استاندارد برای انتقال فایل در شبکه ای کوچک از کامپیوترها ایجاد شد. این شبکه شامل چند مرکز نظامی، دانشگاهی و عده کمی از افراد می شد. در ابتدای ایجاد این پروتکل شبکه از تعداد مشخص و کمی از کامپیوترها و کاربران تشکیل شده بود. به همین دلیل مسائل امنیتی در نسخههای اولیه پروتکل FTP از اهمیت چندانی برخوردار نبود.
اما به تدریج و با گسترش شبکه کامپیوتر و افزایش ناگهانی کاربران آن نیاز به در نظر گرفتن مسائل امنیتی احساس شد. بنابراین به منظور پر کردن این خلا امنیتی، بروزرسانیهای RFC 2228 و RFC 2428 برای این پروتکل ارائه شدند. FTP يک پروتکل استاندارد بر پایه TCP/IP است. معمولا ارتباط در این پروتکل از طریق پورتهای 20 و 21 برقرار میشود. پورت 21 به منظور ارتباط میان سرور و کلاینت و پورت 20 برای تبادل و ارسال فایلها در شبکه مورد استفاده قرار میگیرد.
FTP که مخفف کلمه File Transfer Protocol می باشد یکی از مناسب ترین و در عین حال سریع ترین روش های انتقال فایل از دیسکت کامپیوتر به روی اینترنت می باشد. امروزه از پروتكل های متعددی در شبكه های كامپيوتری استفاده می گردد كه صرفاٌ تعداد اندكی از آنان به منظور انتقال داده طراحی و پياده سازی شده اند. اينترنت نيز به عنوان يك شبكه گسترده از اين قاعده مستثنی نبوده و در اين رابطه از پروتكل های متعددی استفاده می شود. برای بسياری از كاربران اينترنت همه چيز محدود به وب و پروتكل مرتبط با آن يعنی HTTP است، در صورتیكه در اين عرصه پروتكل های متعدد ديگری نيز وجود دارد. FTP نمونه ای در اين زمينه است. مانند HTTP که محتواي وب را منتقل مي کند يا SMTP که ايميل ها را منتقل مي نماید، FTP نیز ساده ترين راه براي تبادل فايل از يک کامپيوتر به کامپيوتر ديگر مي باشد. يکي از کاربرد هاي FTP، دانلود موزيک و برنامه هاي کاربردي از وب سايت ها است. به خاطر استفاده اين پروتکل از يک پورت مجزا که پورت شماره 21 است، عمل دانلود بسيار سريع انجام مي شود. مانند آدرسهاي وب سايت ها، FTP هم آدرس مخصوص خود را دارد چون همانند يک وب سايت، اين پروتکل بر روي هارد کامپيوتر سرور فضاي مشخصي را اشغال ميکند. معمولاً اگر آدرس يک وب سايت بطور مثال http://www.domain.com باشد، آدرس FTP آن سايت به صورت ftp://ftp.domain.com خواهد بود. FTP در انتقال فايل بسيار قويتر از HTTP است ولی به مراتب پيچيده تر از HTTP می باشد. جهت استفاده از پروتکل FTP شما به نرم افزارهای سرويس دهنده مانند FileZilla نياز دارید. Cute FTP،WSFTP و FTP Voyager نيز نمونه های ديگری هستند.
FTP چه کاربردی دارد؟
این پروتکل، برای توسعهدهندگان وب، ابزاری است برای انتقال فایلها از کامپیوتر محلی به سرور میزبان وبسایت. برای مثال اگر شما بخواهید سیستم مدیریت محتوا WordPress را بر روی سرور میزبان نصب کنید، برای انتقال فایلها بین سرور و کامپیوتر به FTP نیاز خواهید داشت.
همچنین در مواردی هم برای به اشتراکگذاری فایلها مورد استفاده قرار میگیرد. برای مثال، کاربری پس از آپلود فایل در سرور FTP، لینک دسترسی به آن را در اختیار سایر کاربران قرار میدهد. اگرچه این روش به اشتراکگذاری در دنیای سرویسهای ابری متداول نیست اما برخی کاربران ترجیح میدهند تا با ایجاد میزبان (Host) برای فایلها در سرور خانگی خود، سرویس FTP خود را راهاندازی کنند.
- تهیه لیستی از فایل های موجود از سیستم فایل کامپیوتر از راه دور
- حذف ، تغییر نام و جابجا کردن فایل های کامپیوتری از راه دور
- جستجو در شاخه های ( دایرکتوری ) کامپیوتر از راه دور
- ایجاد یا حذف شاخه روی کامپیوتر از راه دور
- انتقال فایل از کامپیوتر راه دور به کامپیوتر میزبان
- انتقال فایل و ذخیره آن از کامپیوتر میزبان به کامپیوتر راه دور
امنیت در پروتکل FTP
همانطور که اشاره شد زمانی که پروتکل FTP ارائه شده بود، شبکه کامپیوترها بسیار کوچک و محدود بود. به همین دلیل در آن زمان صحبتی از امنیت سایبری و رعایت نکات امنیتی در برقراری ارتباطات به میان نیامده بود. این موضوع به این مساله اشاره میکند که ارتباطات در پروتکل FTP رمزنگاری (Encrypted) نمی شوند.
بر این اساس اگر کسی به مسیر ارتباطی FTP دسترسی پیدا کند به راحتی میتواند عملیاتهای انجام شده را بررسی کند. حتی امکان دارد به راحتی با تغییر و یا پاک کردن فایل ها، اطلاعات سایت را به خطر بیندازد. به همین دلیل امروزه اکثر کاربران از FTPS استفاده میکنند. FTPS اطلاعات و ارتباطات رمزنگاری میشوند تا هکرها، خرابکارها و یا هر کاربر غیرمجاز دیگری نتواند به فایلهای سرور دسترسی داشته باشد.
- فعال (Active) : در این روش برای انتقال داده ها، ارتباط بین سرویس دهنده و سرویس گیرنده از سمت سرویس دهنده شروع میشود.
- غیر فعال (Passive) : در این روش برای انتقال داده ها، ارتباط بین سرویس دهنده و سرویس گیرنده از سمت سرویس گیرنده شروع میشود.
- سرویس گیرنده به پورت شماره 21 سرویس دهنده، متصل می شود.
- هر زمان که سرویس گیرنده از طریق خط کنترلی داده ای از سرویس دهنده تقاضا کند، ارتباطی از سمت سرویس دهنده و روی پورت 20 بین آن دو ایجاد می شود.
- در نتیجه داده ها از طریق پورت شماره 20 روی سرویس دهنده و یک پورت شماره بالا (بزرگتر از 1024) روی سرویس گیرنده بین دو کامپیوتر منتقل می شوند.
- سرویس گیرنده به پورت شماره 21 سرویس دهنده، متصل می شود. دستورات از طریق این خط انتقال می یابند.
- هر زمان که سرویس گیرنده از طریق خط کنترلی داده ای تقاضا کند، ارتباطی از طریق یک پورت شماره بالا روی سرویس گیرنده با یک پورت شماره بالا روی سرویس دهنده برقرار می شود.
- FTP این قابلیت را ندارد که بتوان همانند پروتکل Telnet برنامه ای را بر روی ماشین از راه دور اجرا کند، بلکه فقط روشی سریع، ساده و مطمئن برای خدمات کاربران راه دور محسوب می شود.
- FTP هیچ گونه رمزنگاری را پشتیبانی نمی کند. FTP حتی کلمات عبور را نیز بصورت رمز نشده انتقال می دهد و بدین ترتیب اجازه سو استفاده آسان از سیستم را می دهد.
- FTP به عنوان یک روش امن مورد توجه نیست مگر اینکه درون یک کانال امن مانند SSL یا IPsec قرار گیرد.
جمع بندی
پروتکل اف تی پی یا FTP وظیفه انتقال فایلها از کامپیوتری به کامپیوتر دیگری را برعهده دارد. این پروتکل با هدف ارائه روشی استاندارد برای انتقال فایل در شبکه ای کوچک از کامپیوترها ایجاد شد. از این پروتکل برای انتقال فایلها بین حسابهای یک کامپیوتر، بین دو کامپیوتر مختلف و… در یک شبکه استفاده می شود.
نظرات