ftp چیست؟
File Transfer Protocol یا به اختصار FTP یک پروتکل استاندارد شبکه برای انتقال فایل از یک هاست به هاست دیگر است که از سال 1970 مطرح و مشخصات استاندارد آن طی RFC 959 در اکتبر سال 1985 ارائه گردید.
این پروتکل از دو اتصال به نامهای کانال کنترل و کانال داده بهره میگیرد. کانال کنترل یک اتصال بین دو رایانه برقرار میسازد و عملیات احراز هویت را بر عهده دارد. کانال داده مسئول انتقال دادهها بین دو رایانه است.
عملیات مهم که با استفاده از پروتکل FTP قابل انجام هستند:
بارگیری فایلها از سرور به کلاینت
بارگذاری فایلها از کلاینت به سرور
حذف فایلها از سرور
تغییر نام فایلها در سرور
ایجاد دایرکتوریها و مدیریت ساختار فایلها در سرور
FTP يک پروتکل استاندارد بر پایه TCP/IP است
.معمولا ارتباط در این پروتکل از طریق پورتهای 20 و 21 برقرار میشود. پورت 21 به منظور ارتباط میان سرور و کلاینت و پورت 20 برای تبادل و ارسال فایلها در شبکه مورد استفاده قرار میگیرد
مزایای پروتکل
1-انتقال سریع فایل ها
2-پشتیبانی از هاست های متعدد
3-امکان انتقال فایل های بزرگ با حجم زیاد
4-امکان زمان بندی پروسه انتقال فایل
5-امکان از سرگیری فرآیند انتقال فایل در صورت هر گونه اشکال و قطعی در ارتباط
6-ایجاد صف از فایل های در حال انتقال توسط FTP client
معایب پروتکل
1-پایین بودن امنیت سرورFTP
2-عدم پشتیبانی مرورگرهای اصلی مانند کروم و فایرفاکس از FTP
3-عدم رمزگذاری اطلاعات کاربری
4-امکان وجود فایل های مضر در برخی از سرورها
5-قدیمی بودن پروتکل و امکان مسدود شدن برخی اتصالات از طرف فایروال ها
6-نیاز به حافظه و تلاش بیشتر برای برنامه نویسی درست به خاطر سخت بودن خطایابی
Sftp چیست؟
SFTP اختصاری برای عبارت «SSH File Transfer Protocol» (پروتکل انتقال فایل روی SSH) است. SSH خود اختصاری برای عبارت «پروتکل پوسته امن» (Secure Shell Protocol) است و برای ایجاد امنیت برای اتصالهای ناامن استفاده میشود. با این حال نباید SSH را با SSL یا HTTPS اشتباه بگیرید، چون اینها چیزهای متفاوتی هستند. بین SFTP با FTP و FTPS دو تفاوت مهم وجود دارند.
تفاوت sftp و ftp چیست؟
انتقال پرونده ها از طریق شبکه با فرمت متن ساده می تواند نگرانی امنیتی ایجاد کند. پروتکل FTP زمانی معرفی شد که امنیت در اینترنت مساله بزرگی نبود. داده های به صورت رمز نگاری نشده در FTP ارسال می شوند و به راحتی توسط مهاجم قابل رهگیری است. از این رو، برخی کانال های امن برای انتقال پرونده ها مورد نیاز بود و به همین منظور یک لایه با نام Secure Socket Layer به FTP اضافه شد و پروتکلی با نام SFTP ایجاد گردید.
SFTP ( پروتکل امن انتقال پرونده ) روشی مطمئن برای انتقال پرونده ها از طریق شبکه است. SFTP بخشی از پروتکل SSH ( Secure Shell ) است. پروتکل SSH ارتباط مستقیمی بین مشتری و سرور برقرار می کند و سپس SFTP مشابه FTP عمل می کند و پرونده را در کانال امن ایجاد شده توسط SSH انتقال می دهد. در این روش، پرونده با استفاده از SFTP به صورت ایمن قابل انتقال است.
1-امنیت
FTP: استفاده از رمزنگاری ناامن و انتقال اطلاعات به صورت متنباز.
SFTP: استفاده از رمزنگاری امن و اتصال امن بر اساس پروتکل SSH.
2-پورت
FTP: پورت 21 برای ارتباط کنترلی و پورت 20 برای انتقال داده.
SFTP: پورت 22 که پورت SSH است.
3-قابلیت اجرای عملیات جانبی
FTP: معمولا تنها امکان انتقال فایل را فراهم میکند.
SFTP: علاوه بر انتقال فایل، امکانات مدیریت فایل و دسترسی به سیستم عامل را نیز فراهم میکند.
4-پشتیبانی از فایروال
FTP: ممکن است به دلیل استفاده از پورتهای غیر استاندارد و مسائل امنیتی با مشکلاتی در هنگام استفاده با فایروالها روبرو شود.
SFTP: با استفاده از پورت SSH، به راحتی در بیشتر محیطهای شبکه قابل استفاده است.
5-قابلیت پشتیبانی از IPv6
FTP: نیاز به پشتیبانی مناسب از IPv6 دارد.
SFTP: با توجه به استفاده از پروتکل SSH، به طور طبیعی از IPv6 پشتیبانی میکند.