اگر برنامه نویس و یا وب مستر باشید، بدون شک پروتکل FTP را زیاد شنیده اید اما شاید هیچ وقت به دنبال پیدا کردن معنی و کاربرد آن نبوده اید. پروتکل FTP یا File Transfer Protocol یک پروتکل است که در سال ۱۹۷۱ در بستر اینترنت توسعه یافت. این پروتکل یکی از پرکاربردترین و قدیمیترین پروتکلهای اینترنت است. در ادامه این مطلب میخواهیم ببینیم که پروتکل FTP چیست و چه کاربردهایی در دنیای وب دارد؟ پس اگر به این موضوع علاقه مندید، تا انتهای این مطلب همراه ما باشید.
پروتکل FTP چیست؟
پروتکل اف تی پی یا FTP در سال ۱۹۷۱ توسط Abhay Bhushan و تحت عنوان RFC114 منتشر شد. همانطور که از نام این پروتکل مشخص است، پروتکل FTP وظیفه انتقال فایلها از یک کامپیوتر به کامپیوتر دیگری را برعهده دارد. این پروتکل با هدف ارائه روشی استاندارد برای انتقال فایل در شبکه ای کوچک از کامپیوترها ایجاد شد. این شبکه شامل چند مرکز نظامی، دانشگاهی و عده کمی از افراد می شد. در ابتدای ایجاد این پروتکل شبکه از تعداد مشخص و کمی از کامپیوترها و کاربران تشکیل شده بود. به همین دلیل مسائل امنیتی در نسخههای اولیه پروتکل FTP از اهمیت چندانی برخوردار نبود.
اما به تدریج و با گسترش شبکه کامپیوتر و افزایش ناگهانی کاربران آن نیاز به در نظر گرفتن مسائل امنیتی احساس شد. بنابراین به منظور پر کردن این خلا امنیتی، بروزرسانیهای RFC 2228 و RFC 2428 برای این پروتکل ارائه شدند. FTP یک پروتکل استاندارد بر پایه TCP/IP است. معمولا ارتباط در این پروتکل از طریق پورتهای ۲۰ و ۲۱ برقرار میشود. پورت ۲۱ به منظور ارتباط میان سرور و کلاینت و پورت ۲۰ برای تبادل و ارسال فایلها در شبکه مورد استفاده قرار میگیرد.
منظور از FTP Client و FTP Server چیست؟
استفاده از پروتکل FTP به منظور انتقال فایلها به یک سیستم دیگر، نیازمند دو پیش نیاز اصلی میباشد. این پیش نیازها عبارتند از :
- FTP Client : برای استفاده از FTP به منظور انتقال فایل ها، باید از نرم افزارهای مخصوص FTP استفاده کنید. این نرم افزارها به صورت گرافیکی هستند. البته برای استفاده از این پروتکل راههای دیگری هم به جز استفاده از این نرم افزارها وجود دارد که در ادامه به معرفی آنها خواهیم پرداخت.
- FTP Server : برای اینکه بتوانیم از این پروتکل استفاده کنیم باید نرم افزاری تحت عنوان FTP Server را بر روی سرور و یا سیستمی که قصد داریم از آن به عنوان سرور استفاده کنیم، نصب کنیم. این نرم افزار وظیفه برقراری ارتباط با کلاینت و پردازش دستورات ارسالی از سمت آن به سرور را دارد.
راههای استفاده از پروتکل FTP
به صورت کلی سه راه برای استفاده از FTP وجود دارد که عبارتند از :
- استفاده از نرم افزارهای گرافیکی : این روش از رایجترین راه استفاده از FTP است. در این روش کاربر با نصب نرم افزارهایی مانند FileZilla، CuteFTP بر روی سیستم خود به راحتی میتواند به سرور FTP متصل شود. با استفاده از این نرم افزارها کاربر میتواند به راحتی با عملیات کشیدن و رها کردن (Drag and Drop) فایلهای خود را دانلود و یا آپلود کند. مزیت این روش عدم نیاز به دانش فنی است. زیرا محیط کار با نرم افزارها بسیار شبیه محیط پیش فرض سیستم عامل ویندوز میباشد.
- استفاده از مرورگرهای اینترنتی : برای اتصال به سرورهای FTP میتوان از مرورگرهای اینترنتی مانند کروم و فایرفاکس موزیلا استفاده کرد. در این روش کافیست که آدرس FTP یک سایت را در مرورگر وارد شود، سپس نام کاربری و رمز عبور وارد شود. مرورگرها فقط قادرند فایلها و محتویات فضای مورد نظر را نمایش دهند ولی قادر به آپلود و یا ارسال فایل نیستند. بنابراین استفاده از این روش برای جست و جو و یا خواندن فایل مناسب است. همچنین این روش نسبت به روش اول از سرعت و امنیت پایینتری برخوردار است.
- استفاده از خط فرمان (Command line) : در این روش میتوان از خط فرمان سیستم عامل ها برای اتصال به سرور FTP استفاده کرد. اما این روش به دلیل نداشتن رابط گرافیکی کاربرپسند معمولا کمتر مورد استفاده قرار میگیرد.
پروتکل FTP چه کاربردهایی دارد؟
از FTP برای انتقال فایلها بین حسابهای یک کامپیوتر، بین دو کامپیوتر مختلف و… در یک شبکه استفاده می شود. معمولا وب مستران برای انتقال محتوای مختلف به سایتها از FTP استفاده میکنند. زیرا معمولا زمانی که بخواهند یک فایل را از یک سیستم در هاست آپلود کنند، FTP بهترین گزینه برای این کار خواهد بود. همچنین از FTP میتوان برای اشتراک گذاری فایلها استفاده کرد. مثلا زمانی که بخواهند دسترسی به یک فایل را از طریق لینک در اختیار سایر کاربران قرار دهند. کاربردهای این پروتکل به صورت کلی عبارتند از :
- ارائه گزارش از فایلهای موجود در سیستم مورد نظر
- حذف، تغییرنام و جابجا کردن فایل ها
- جستجو در دایرکتوری ها
- ایجاد یا حذف دایرکتوری روی سیستم مورد نظر
- ایجاد امکان دانلود فایل از سیستم مورد نظر
- ایجاد امکان آپلود فایل بر روی سیستم مورد نظر
امنیت در پروتکل FTP
همانطور که اشاره شد زمانی که پروتکل FTP ارائه شده بود، شبکه کامپیوترها بسیار کوچک و محدود بود. به همین دلیل در آن زمان صحبتی از امنیت سایبری و رعایت نکات امنیتی در برقراری ارتباطات به میان نیامده بود. این موضوع به این مساله اشاره میکند که ارتباطات در پروتکل FTP رمزنگاری (Encrypted) نمی شوند.
بر این اساس اگر کسی به مسیر ارتباطی FTP دسترسی پیدا کند به راحتی میتواند عملیاتهای انجام شده را بررسی کند. حتی امکان دارد به راحتی با تغییر و یا پاک کردن فایل ها، اطلاعات سایت را به خطر بیندازد. به همین دلیل امروزه اکثر کاربران از FTPS استفاده میکنند. FTPS اطلاعات و ارتباطات رمزنگاری میشوند تا هکرها، خرابکارها و یا هر کاربر غیرمجاز دیگری نتواند به فایلهای سرور دسترسی داشته باشد.
جمع بندی
پروتکل FTP وظیفه انتقال فایلها از کامپیوتری به کامپیوتر دیگری را برعهده دارد. این پروتکل با هدف ارائه روشی استاندارد برای انتقال فایل در شبکه ای کوچک از کامپیوترها ایجاد شد. از این پروتکل برای انتقال فایلها بین حسابهای یک کامپیوتر، بین دو کامپیوتر مختلف و… در یک شبکه استفاده می شود.