در این محتوا میخواهیم به معرفی و بررسی پروتکل ftp بپردازیم. ببینیم چطور کار میکند و با چه پروتکلهای دیگر شبکه ترکیب میشود. با توسعه شبکه آداکهمراه باشید.
- پروتکل ftp چیست؟
- تاریخچه و آینده FTP
- کاربرد FTP چیست؟
- ftp چطور کار میکند؟
- راههای استفاده از FTP
- پورت ftp چیست؟
- sftp چیست؟
- مقایسه SFTP و FTPS
- tftp چیست؟
- Ftp در موبایل چیست؟
پروتکل ftp چیست؟
ftp مخفف چیست؟ ftp مخفف File Transfer Protocol و راهی برای انتقال فایل به صورت آنلاین است. شاید فکر کنید سایتها را در مرورگرتان میبینید، اما مرورگر شما فقط از HTTP استفاده میکند. پروتکلهای دیگری هستند که در کنار هم اینترنت را به وجود میآورند. مثلا IMAP و POP دو پروتکلی هستند که کاربران ایمیل از آنها برای ارسال و دریافت پیامها استفاده میکنند و یا خود ftp.
مقاله “معرفی امن ترین و بهترین نرم افزار FTP Server” را برای آشنایی با انواع ftp سرورها مطالعه کنید.
تاریخچه و آینده FTP
FTP یکی از قدیمیترین پروتکلهایی است که برای انتقال فایلها استفاده میشود و راه راحتی است. سرور ftp امکان دسترسی به دایرکتوری ها را با استفاده از ساب دایرکتوری ها فراهم میکند. کاربران با کلاینت ftp به این سرورها وصل میشوند و از نرم افزاری که اجازه دانلود / آپلود فایلها را از / به سرور میدهد استفاده میکنند. برای خرید سرور hp روی لینک بزنید.
ftp یکی از سادهترین فرمتهایی است که فایلها را به سرعت از دستگاهی به دستگاه دیگر منتقل میکند. قدمت آن به سال ۱۹۷۱ میرسد وقتی که اولین نسخه آن تولید و منتشر شد. در سالهای ۱۹۸۰ فرمت ftp به نسخه tcp/ip آپدیت شد.
البته که ftp بیش از هر پروتکل دیگری در دنیای آنلاین حضور داشته است اما با به عرصه آمدن پروتکلهایی مثل SFTP به سرعت، پشتیبانی از ftp کنار میرود. به نظزر میرسد سال ۲۰۲۰ سال شروع خداحافظی با ftp است چون بسیاری از مرورگرهای وب تغییر کردند. در آپدیت گوگل کروم در اوایل سال ۲۰۲۰، اولین بار بود که حضور ftp به صورت اتوماتیک وجود نداشت ولی امکان روشن کردن آن با تغییر Command Line وجود داشت اما با آمدن نسخه ۸۲ به طور کل حذف شد.
کاربرد FTP چیست؟
ftp برای انتقال فایلهای حجیم مناسب است. ftp ابزار مفیدی برای انتقال اطلاعات کامپیوتری که روی آن کار میکنید به سروری است که وب سایتی را هاست میکند. مثلا اگر بخواهید وردپرس را روی وب سرور نصب کنید باید از ftp استفاده کنید تا فایلها را روی آن کپی کنید.
ftp برای اشتراک گذاری فایلها هم استفاده میشود. یک نفر فایلی را روی ftp سرور آپلود میکند و لینک آن را با دیگران به اشتراک میگذارد. این مورد بیشتر در سرویسهای ابری Easy to use کاربرد دارد. اما اغلب افراد تمایل دارند فایلهایشان روی home server هاست شود و از ftp استفاده کنند تا آن را فعال کنند.
تا وقتی رمزگذاری و اقدامات امنیتی در سطح پروتکل IP انجام نشود مثلا پیاده سازی پروتکل IPsec، نباید از ftp استفاده کنیم مخصوصا اگر اطلاعات مهم و حساسی را انتقال میدهیم.
ftp چطور کار میکند؟
ftp دو کانال اصلی برای انجام وظیفهاش دارد:
- کانال Command که وظیفه برقراری ارتباط و احراز هویت را برعهده دارد و شامل اطلاعاتی مانند اینکه چه فایلهایی میتوانند در دسترس باشند است.
- کانال Data که فایلها را بین دستگاهها منتقل میکند.
اتصالات ftp دو حالت Active و Passive دارند. حالت active رایجترین حالت است و ارتباطات Open بین سرور و دستگاه، در هر دو کانال فراهم میکند. به سرور نقش اکتیو داده میشود تا اتصال را با تایید درخواست دیتا برقرار کند. اما ممکن است این حالت با فایروال ها و موارد این چنینی مختل شود در نتیجه حالت Passive استفاده میشود. در این حالت دیگر سرور مسئول نگه داشتن اتصال نیست و دستگاهِ دیگر تمام کارها را انجام میدهد.
راههای استفاده از FTP
برای استفاده از ftp سه روش وجود دارد:
- استفاده از نرم افزارها: آسان ترین و رایجترین راه استفاده از FTP است. با نصب نرم افزارهایی مانند filezilla و ulletProof FTP و WS FTP Professional و FTP Explorer و CuteFTP و Smart FTP روی سیستم میتوانید به سرور FTP وصل شوید و با Drag and Drop فایلها، آنها را دانلود و آپلود کنید.
- استفاده از مرورگرها: با وارد کردن آدرس FTP یک سایت مثلا ftp.example.com در مرورگری مثل کروم و فایرفاکس و وارد کردن نام کاربری و پسورد، به فایلها دسترسی داشته باشید. این روش زمانی کاربرد دارد که فقط بخواهید فایلی را سرچ کرده و بخوانید. در این روش نمیتوانید فایلی را آپلود و ارسال کنید. سرعت و امنیت این روش از روش اول کمتر است.
- استفاده از Command line: محیط زمخت خط فرمان طرفدار کمتری دارد اما دستورهای پیشرفته با آن قابل اجرا است و با این روش هم میتوانید به فایلهای ftp دست یابید. بیشتر در محیط لینوکس استفاده میشود و برای ایجاد پروتکل ftp استفاده میشود.
پورت ftp چیست؟
در صورت استفاده از نرم افزار ftp Client علاوه بر نام کاربری و پسورد، به پورت ftp نیاز دارید. در اتصال tcp / ip برای برقراری ارتباط بین سرور و کلاینت به چهار مورد نیاز است: آدرس و پورت سرور، آدرس و پورت کلاینت.
پروتکل ftp به عنوان پروتکل لایه هفتم مدل مرجع OSI معمولا ار tcp و یا udp استفاده میکند. ftp برای انجام وظایفش ممکن است از دو شماره پورت استفاده کند یکی برای ارسال داده و دیگری برای گوش دادن به دستورات. شماره پورت پروتکل ftp در حالت ارسال دیتا ۲۰ و هنگام گوش دادن ۲۱ است.
sftp چیست؟
پروتکل sftp پروتکل ftp است که Secure Shell یا SSH دارد یعنی ftp روی پروتکل ssh اجرا میشود. secure Shell مولفه رمزنگاری در امنیت اینترنت است و امنیت و احراز هویت کاملی در وب فراهم میکند. روشهای دسترسی به sftp دو روش نرم افزار و command prompt است.
در مواردی که امنیت فایل مهم است SFTP جایگزین FTP میشود مثلا تبادلات مالی و ارزی، پروندههای پزشکی و درمانی. sftp یکی از روشهای محفوط نگه داشتن بسته ارسالی از دسترس هکرها است. به خصوص در برابر حملات password sniffing و man-in-the-middle attacks بسیار موثر است.
sftp از پورت رایج ssh یعنی پورت ۲۲ استفاده میکند. فقط وقتی کاربر به سروری که از ssh استفاده میکند لاگین میشود، پروتکل sftp کار میکند. پورت جداگانه sftp روی سرور نداریم پس نیازی به پیکربندی جداگانهای روی فایروال نیست.
مقایسه SFTP و FTPS
در پروتکل ftps پروتکل ftp روی SSL (Secure Sockets Layer) و یا TLS (Transport Layer Security) اجرا میشود. مزایای sftp نسبت به ftps عبارتند از:
- sftp روی پورت ssh اجرا میشود و نیازی به پورت اضافه و احراز هویت اضافه نیست در نتیجه کانفیگ و پیکربندی، سادهتر و راحتتر است و بالطبع اشتباه کمتری از لحاظ پیکربندی داریم.
- ftps نیاز به پیکربندیهای پیچیده فایروالی دارد و ممکن است روی NAT که نیاز به پورت ۹۸۹ و ۹۹۰ دارد کار نکند. ftps هم از حالت active و هم از حالت Passive پشتیبانی میکند که پیکربندی فایروال را پیچیده میکند. برای آشمایی با پروتکل nat مقاله “تکنولوژی NAT کاربرد و انواع آن و تفاوتش با PAT” را بخوانید.
- ftps نیاز به گواهی X.509 برای سرور دارد. ssh نیاز به هیچ زیرساخت متمرکز و کار اضافی ندارد.
- ftps اساسا ftp است که یعنی حالت ASCII دارد اگر مود آن به درستی تنظیم نشده باشد، ممکن است فایلها را خراب کند. برخی پیاده سازی ها به صورت پیش فرض ASCII هستند.
- ftps به عنوان فایل سیستم نمیتواند استفاده شود.
- ftps به نرم افزار اضافی روی سرور نیاز دارد در حالی که sftp معمولا با ssh است.
tftp چیست؟
tftp مخفف Trivial File Transfer Protocol است. tftp از udp برای انتقال دیتا استفاده میکند و بیشتر برای خواندن و نوشتن فایل/ایمیل به/از سرور ریموت کاربرد دارد.
tftp طراحی سادهای دارد و در مقایسه با ftp ویژگیهای محدودتری دارد. مثلا هیچ احراز هویت و امنیتی در انتقال فایل فراهم نمیکند. در نتیجه معمولا برای انتقال فایلهای بوت یا فایلهای پیکربندی بین دو ماشین در تنظیمات لوکال به کار میرود. طراحی آسان آن باعث میشود کاربران شبکه کامپیوتری به ندرت با آن کار کنند. از طرفی فقدان امنیت در آن استفاده از آن را در اینترنت خطرناک میکند.
tftp برای بوت کامپیوترها و دستگاههایی که هارد دیسک یا دستگاه ذخیره سازی ندارند مناسب است. بدین ترتیب یکی از پروتکلهای عالی برای پروتکل بوت شبکه یا preboot execution environment (PXE) است.
انتقال دیتا در tftp از طریق پورت ۶۹ انجام میشود هر چند که پورت انتقال دیتا هنگام برقراری اتصال، توسط فرستنده و گیرنده مشخص میشود.
Ftp در موبایل چیست؟
ftp برای انتقال دیتا بین دو کامپیوتر یا کامپیوتر و موبایل یا کلود و کامپیوتر روی اینترنت استفاده میشود. کاربرانی که به سرور ftp وصل میشوند کلاینت FTP هستند که میتوانند از اسمارت فون و موبایل خود برای اتصال به سرور FTP استفاده کنند. این کلاینت ها میتوانند از طریق مرورگر وب گوشی خود به سرور FTP وصل شوند. همچنین امکان استفاده از نرم افزارهای FTP روی موبایل وجود دارد.
کانال Command که وظیفه برقراری ارتباط و احراز هویت را برعهده دارد و شامل اطلاعاتی مانند اینکه چه فایلهایی میتوانند در دسترس باشند است.
کانال Data که فایلها را بین دستگاهها منتقل میکند.”
}
},{
“@type”: “Question”,
“name”: “راههای استفاده از FTP”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “برای استفاده از ftp سه روش وجود دارد:
استفاده از نرم افزارها: آسان ترین و رایجترین راه استفاده از FTP است. با نصب نرم افزارهایی مانند filezilla و ulletProof FTP و WS FTP Professional و FTP Explorer و CuteFTP و Smart FTP روی سیستم میتوانید به سرور FTP وصل شوید و با Drag and Drop فایلها، آنها را دانلود و آپلود کنید.”
}
},{
“@type”: “Question”,
“name”: “پورت ftp چیست؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “در صورت استفاده از نرم افزار ftp Client علاوه بر نام کاربری و پسورد، به پورت ftp نیاز دارید. در اتصال tcp / ip برای برقراری ارتباط بین سرور و کلاینت به چهار مورد نیاز است: آدرس و پورت سرور، آدرس و پورت کلاینت.”
}
},{
“@type”: “Question”,
“name”: “sftp چیست؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “پروتکل sftp پروتکل ftp است که Secure Shell یا SSH دارد یعنی ftp روی پروتکل ssh اجرا میشود. secure Shell مولفه رمزنگاری در امنیت اینترنت است و امنیت و احراز هویت کاملی در وب فراهم میکند. روشهای دسترسی به sftp دو روش نرم افزار و command prompt است.”
}
},{
“@type”: “Question”,
“name”: “مقایسه SFTP و FTPS”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “در پروتکل ftps پروتکل ftp روی SSL (Secure Sockets Layer) و یا TLS (Transport Layer Security) اجرا میشود. مزایای sftp نسبت به ftps عبارتند از:
sftp روی پورت ssh اجرا میشود و نیازی به پورت اضافه و احراز هویت اضافه نیست در نتیجه کانفیگ و پیکربندی، سادهتر و راحتتر است و بالطبع اشتباه کمتری از لحاظ پیکربندی داریم.”
}
},{
“@type”: “Question”,
“name”: “tftp چیست؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “tftp مخفف Trivial File Transfer Protocol است. tftp از udp برای انتقال دیتا استفاده میکند و بیشتر برای خواندن و نوشتن فایل/ایمیل به/از سرور ریموت کاربرد دارد.”
}
},{
“@type”: “Question”,
“name”: “Ftp در موبایل چیست؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “ftp برای انتقال دیتا بین دو کامپیوتر یا کامپیوتر و موبایل یا کلود و کامپیوتر روی اینترنت استفاده میشود. کاربرانی که به سرور ftp وصل میشوند کلاینت FTP هستند که میتوانند از اسمارت فون و موبایل خود برای اتصال به سرور FTP استفاده کنند. این کلاینت ها میتوانند از طریق مرورگر وب گوشی خود به سرور FTP وصل شوند. همچنین امکان استفاده از نرم افزارهای FTP روی موبایل وجود دارد.”
}
}]
}