نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی پرتال اطلاعاتی
  • خانه
  • خطاها
  • پروتکل انتقال فایل FTP پروتکل FTP FTP FTP (پروتکل انگلیسی انتقال فایل) پروتکلی است که برای انتقال فایل ها از طریق شبکه های کامپیوتری طراحی شده است. FTP

پروتکل انتقال فایل FTP پروتکل FTP FTP FTP (پروتکل انگلیسی انتقال فایل) پروتکلی است که برای انتقال فایل ها از طریق شبکه های کامپیوتری طراحی شده است. FTP

FTP نوعی پروتکل انتقال داده است که برای کپی و انتقال فایل ها در اینترنت و شبکه های TCP استفاده می شود. FTP اغلب برای دانلود صفحات و اسناد استفاده می شود از انواع مختلفبه میزبانی کامپیوترها FTP از معماری سرویس گیرنده-سرور و اتصالات مختلفدر داخل شبکه به منظور انتقال دستورات و اطلاعات از کلاینت به سرور و بالعکس. کاربران FTP مجاز به انجام مراحل احراز هویت با استفاده از لاگین و رمز عبور هستند، یا اگر چنین فرمی روی سرور مجاز باشد، کاربران می توانند در حالت ناشناس به آن دسترسی پیدا کنند.
علاوه بر پروتکل معمول، از FTPS نیز استفاده می شود که یک فرمت ویژه از FTP استاندارد است که به مشتریان امکان دسترسی به سرور و استفاده از جلسات انتقال داده رمزگذاری شده را می دهد. این رویکرد با ارسال دستور احراز هویت "auth tls" اجرا می شود، در حالی که سرور مجاز است اتصالاتی را که درخواست اتصالات TLS را ندارند بپذیرد یا رد کند.

SFTP

SFTP یک استاندارد انتقال اینترنت برای جابجایی و کپی فایل ها از طریق اتصال امن و ایمن SSH (Secure Shell) است. این نوع اتصال می تواند دسترسی و انتقال ایمن را فراهم کند که با رمزگذاری هر دو ورود و رمز عبور و محتوای خود انتقال انجام می شود و در نتیجه از رمزهای عبور و محافظت می کند. اطلاعات محرمانهاز جانب انتقال بازبرخط.
برخلاف FTP، پروتکل SFTP، با وجود عملکردهای مشابه، از پروتکل انتقال داده متفاوتی استفاده می کند و بنابراین، کلاینت های استاندارد نمی توانند با سرورهای SFTP ارتباط برقرار کنند.

ویژگی های استاندارد FTP

این استاندارد یکی از قدیمی ترین است پروتکل های شبکه، که 45 سال پیش ایجاد شد و امروزه در اینترنت بسیار مورد استفاده قرار می گیرد. یکی از ویژگی های حیاتیپروتکل استفاده از چندین اتصال است: یکی برای انتقال دستورات کنترلی و دیگری برای انتقال مستقیم فایل ها. در این مورد، می توانید چندین باز کنید اتصالات موازیکه هر کدام می توانند داده ها را در هر دو جهت انتقال دهند.
دو حالت عملیات FTP وجود دارد که در نحوه برقراری اتصالات متفاوت است: غیرفعال و فعال. در حالت فعال، سرور برای انتقال اطلاعات به کاربر و در حالت غیرفعال، بالعکس، اتصال برقرار می کند.
این استاندارد برای مدت طولانی مورد استفاده قرار گرفته است و در نگاه اول بسیار ساده است. اما این سادگی می تواند کاملاً فریبنده باشد، زیرا تعداد زیادی از کاربران ممکن است هنگام دسترسی به این استانداردبه خصوص اگر سرور یا کاربر از فایروال یا NAT استفاده می کند.

ویژگی های حالت فعال

در طول حالت فعال، کلاینت با ارسال فرمان "پورت" که آدرس و پورت انتقال اطلاعات را نشان می دهد، اتصال کنترلی به پورت سرور 21 را آغاز می کند. پس از دریافت این دستور، سرور بیستمین پورت خود را با پورت کاربر مشخص شده شروع می کند.
عیب اصلی این روشداشتن یک آدرس IP اختصاصی در اینترنت برای کاربر الزامی است. علاوه بر این، اگر مشتری پشت فایروال یا NAT باشد، ممکن است برخی مشکلات ایجاد شود.

ویژگی های حالت غیرفعال

به منظور ایجاد یک اتصال غیرفعال، کاربر باید یک دستور خاص "pasv" را به سرور ارسال کند. در پاسخ به این دستور، سرور اطلاعاتی در مورد آدرس و پورتی که مشتری باید با آن ارتباط برقرار کند، ارسال می کند. پس از دریافت این داده ها، کاربر به کامپیوتر سرور متصل شده و اطلاعات را منتقل می کند.
هنگام استفاده از حالت غیرفعال، کاملاً تمام اتصالات توسط مشتری آغاز می شود و بنابراین هیچ الزامی برای آن وجود ندارد. کاربر مجاز است از NAT و فایروال استفاده کند و همچنین از آدرس IP اختصاصی استفاده نکند. بنابراین، امروز، دقیقاً همینطور است حالت غیر فعال.

پیکربندی هنگام استفاده از فایروال

هنگام استفاده از فایروال و حالت فعال، کاربران ممکن است با مشکلات دسترسی مواجه شوند. اگر فایروال به گونه ای پیکربندی شده باشد که اتصالات ورودی غیرداخلی را رد کند، کامپیوتر سرور قادر به برقراری ارتباط و شروع به انتقال اطلاعات نخواهد بود. و با توجه به اینکه پورت اطلاعات دارای تنوع پویا است، در هنگام پیکربندی فایروال مشکلاتی وجود دارد. بهترین گزینه v در این موردتعیین محدوده پورت های مورد استفاده و سازماندهی قوانین فایروال مجاز ویژه برای آنها است.
در صورت استفاده از حالت غیرفعال با پیچیدگی مشابه، شما در معرض خطر مواجهه قرار خواهید داشت کامپیوتر سرور... در این مورد، می توانید از یک راه حل مشابه استفاده کنید - محدوده خاصی از پورت های استفاده شده را در گزینه ها مشخص کنید و یک قانون خاص برای این محدوده ایجاد کنید.

پیکربندی هنگام استفاده از NAT

برای عملکرد صحیح FTP از طریق NAT و انتقال موفقیت آمیز فایل فقط برای تنظیم حمل و نقل پورت های کار کافی نیست، زیرا یک رایانه سرور که از زیر NAT کار می کند آدرس پورت داخلی را منتقل می کند و مشتری به سادگی قادر به اتصال و انتقال اطلاعات نخواهد بود.
برخی از پیاده‌سازی‌های مدرن NAT می‌توانند کانال کنترل اتصال FTP و جعل را کنترل کنند کار معمولیانتقال اطلاعات آدرس داخلی به خارجی علاوه بر این، سرورهای FTP توانایی تعیین را دارند پورت خارجیبرای نمایش در جلسه کنترل
اغلب، برای انتقال عادی فایل از طریق FTP از طریق NAT، ارسال پورت 21 برای اجرای یک جلسه کنترل و همچنین تعیین و ارسال یک محدوده کافی است. آدرس های پویابرای انتقال داده ها در اینترنت استفاده می شود.

طراحی شده برای انتقال فایل ها از طریق شبکه های TCP (به عنوان مثال، اینترنت). از پورت 21 استفاده می کند. FTP اغلب برای دانلود صفحات وب و سایر اسناد از یک دستگاه توسعه خصوصی برای باز کردن سرورهای میزبان استفاده می شود.

پروتکل بر اساس معماری سرویس گیرنده-سرور ساخته شده است و از موارد مختلفی استفاده می کند اتصالات شبکهبرای انتقال دستورات و داده ها بین مشتری و سرور. کاربران FTP می توانند با ارسال نام کاربری و رمز عبور خود به صورت متن واضح احراز هویت کنند، یا در صورت مجاز بودن روی سرور، می توانند به صورت ناشناس متصل شوند. شما می توانید از پروتکل SSH استفاده کنید انتقال امن، که نام کاربری و رمز عبور را مخفی می کند (رمزگذاری می کند) و همچنین محتوا را رمزگذاری می کند.

اولین برنامه های کاربردی کلاینت FTP ابزارهای خط فرمان تعاملی بودند که دستورات و نحو استاندارد را پیاده سازی می کردند. رابط های گرافیکی کاربر از آن زمان برای بسیاری از آنها تا به امروز توسعه یافته است سیستم های عامل... این رابط ها شامل برنامه های طراحی وب عمومی مانند Microsoft Expression Web و کلاینت های تخصصی FTP (مانند FileZilla) می شود.

FTP یکی از قدیمی ترین پروتکل های کاربردی است که قدمت آن مدت ها قبل از HTTP و حتی قبل از TCP / IP در سال 1971 باز می گردد. در ابتدا، در بالای پروتکل NCP کار می کرد. امروزه نیز به طور گسترده برای توزیع نرم افزار و دسترسی به هاست های راه دور استفاده می شود.

یوتیوب دانشگاهی

    1 / 5

    چگونه یک سایت را در اینترنت پست کنیم؟ FTP چیست؟

    مودم GSM / GPRS NEOWAY M590، ما آنلاین می شویم، با FTP و narodmon.ru کار می کنیم

    FTP چیست و چگونه یک وب سایت را در اینترنت میزبانی کنیم

    سرور خانگی، قسمت 2. نصب اوبونتوسرور + وب سرور+ FTP

    FTP و انتشار وب سایت در اینترنت را به زبان هندی بیاموزید

    زیرنویس

شرح پروتکل

تفاوت با HTTP

ویژگی FTP HTTP
بر اساس جلسات کاری آره خیر
احراز هویت کاربر ساخته شده است آره خیر
عمدتا برای انتقال طراحی شده است باینری های بزرگ فایل های متنی کوچک
مدل اتصال اتصال دوگانه اتصال واحد
عمدتاً برای دریافت / ارسال سازگار شده است دریافت و انتقال پذیرایی
از حالت های انتقال متن و باینری پشتیبانی می کند آره خیر
پشتیبانی از تعیین انواع داده های ارسالی (سرصفحه های MIME) خیر آره
پشتیبانی از عملیات بیش از سیستم فایل(mkdir، rm، تغییر نام، و غیره) آره خیر

یک ویژگی نسبتاً چشمگیر پروتکل FTP این است که از چندین اتصال (حداقل دو برابر) استفاده می کند. در این حالت یک کانال کنترلی است که از طریق آن دستورات به سرور دریافت می شود و پاسخ های آن برگردانده می شود (معمولاً از طریق پورت TCP 21) و از طریق بقیه انتقال واقعی داده انجام می شود، یک کانال برای هر ارسال. بنابراین در چارچوب یک جلسه از طریق پروتکل FTP امکان انتقال چندین فایل به صورت همزمان و در هر دو جهت وجود دارد. هر کانال داده مختص به خود است پورت TCPکه تعداد آنها بسته به حالت انتقال یا توسط سرور یا مشتری انتخاب می شود.

FTP دارای حالت انتقال باینری است که باعث کاهش سربار ترافیک و کاهش زمان انتقال می شود فایل های حجیم... پروتکل HTTP لزوماً نیاز به رمزگذاری دارد. اطلاعات باینری v فرم متنبرای مثال با استفاده از الگوریتم Base64.

با شروع کار از طریق FTP، مشتری وارد جلسه می شود و تمام عملیات در این جلسه انجام می شود (به عبارت دیگر، سرور به خاطر می آورد وضعیت فعلی). پروتکل HTTPچیزی را "به خاطر نمی آورد" - وظیفه آن ارائه داده ها و فراموشی است، بنابراین، به یاد آوردن وضعیت زمانی است با استفاده از HTTPتوسط روش های خارج از پروتکل انجام می شود.

اتصال و انتقال داده

پشتیبانی از مرورگر وب

نحو

سینتکس URL های FTP در RFC1738 به شکل: ftp: // [<пользователь>[:<пароль>]@]<хост>[:<порт>]/<путь>(پارامترها در براکتاختیاری). مثلا:

جزئیات بیشتر در مورد تعیین نام کاربری و رمز عبور در اسناد مرورگر نوشته شده است. به طور پیش فرض، اکثر مرورگرهای وب از حالت غیرفعال (PASV) استفاده می کنند که بهتر فایروال های کاربر نهایی را دور می زند.

امنیت

FTP به عنوان یک پروتکل امن (مخصوصاً با استانداردهای امروزی) طراحی نشده است و دارای آسیب پذیری های امنیتی متعددی است. در می 1999، نویسندگان RFC 2577 آسیب پذیری ها را در لیست مشکلات زیر خلاصه کردند:

  • حملات جهشی
  • حملات جعلی
  • حملات بی رحمانه
  • گرفتن بسته، بو کشیدن
  • حفاظت از نام کاربری
  • دزدی بندری

FTP نمی‌تواند ترافیک خود را رمزگذاری کند، همه انتقال‌ها متن شفاف هستند، بنابراین نام‌های کاربری، رمز عبور، دستورات و داده‌ها توسط هر کسی که بتواند بسته را از طریق شبکه رهگیری کند، قابل خواندن است. این مشکل در بسیاری از مشخصات پروتکل اینترنت (از جمله SMTP، Telnet، POP، IMAP) که قبل از ایجاد مکانیسم‌های رمزگذاری مانند TLS و SSL ایجاد شده‌اند، رایج است. راه حل معمولاین مشکل استفاده از نسخه‌های امن و محافظت‌شده با TLS پروتکل‌های آسیب‌پذیر (FTPS برای FTP، TelnetS برای Telnet و غیره) یا پروتکل امن‌تر دیگری مانند SFTP / SCP است که با اکثر پیاده‌سازی‌های پروتکل Secure Shell ارائه می‌شود.

FTP ایمن

چندین روش برای انتقال امن فایل وجود دارد که در یک زمان به نام "Secure FTP" نامیده می شود.

FTPS

Explicit FTPS یک فرمت استاندارد FTP است که به مشتریان اجازه می دهد درخواست کنند که جلسه FTP رمزگذاری شود. این با ارسال دستور "AUTH TLS" انجام می شود. سرور این قابلیت را دارد که اتصالاتی را که درخواست TLS ندارند مجاز یا رد کند. این پسوند پروتکل در RFC 4217 تعریف شده است. FTPS ضمنی یک استاندارد FTP قدیمی است که نیاز به استفاده از اتصال SSL یا TLS دارد. این استاندارد قرار بود از پورت هایی متفاوت از FTP معمولی استفاده کند.

SFTP

SFTP یا "SSH File Transfer Protocol" ارتباطی با FTP ندارد، به جز اینکه فایل ها را نیز منتقل می کند و مجموعه ای از دستورات مشابه برای کاربران دارد. SFTP یا امن FTP برنامه ای است که از SSH (Secure Shell) برای انتقال فایل ها استفاده می کند. بر خلاف FTP استانداردهم دستورات و هم داده ها را رمزگذاری می کند و از انتقال رمز عبور و اطلاعات محرمانه از طریق شبکه جلوگیری می کند. SFTP از نظر عملکرد مشابه FTP است، اما از آنجایی که از پروتکل متفاوتی استفاده می کند، کلاینت های استاندارد FTP نمی توانند با سرور SFTP و بالعکس ارتباط برقرار کنند.

FTP روی SSH (نه SFTP)

FTP over SSH (نه SFTP) به تمرین تونل زدن یک جلسه FTP معمولی از طریق اتصال SSH اشاره دارد. از آنجایی که FTP از چندین اتصال TCP استفاده می کند، تونل زدن بر روی SSH به ویژه دشوار است. هنگامی که بسیاری از سرویس گیرندگان SSH سعی می کنند یک کانال کنترل را تونل کنند (اتصال اصلی "مشتری-سرور" در پورت 21)، فقط آن کانال محافظت می شود. هنگام انتقال داده ها، نرم افزار FTP در هر دو طرف، اتصالات TCP جدید (لوله های داده) را ایجاد می کند که اتصال SSH را دور می زند و در نتیجه امنیت ذاتی را از دست می دهد.

در غیر این صورت برای مشتری نرم افزار SSH برای ردیابی و بازنویسی پیام ها در یک جریان نیاز به دانش FTP دارد. مدیریت FTPو به طور مستقل تغییر مسیرهای جدید را برای جریان باز می کند داده های FTP. بسته های نرم افزاریپشتیبانی از این حالت:

  • Tectia ConnectSecure (Win / Linux / Unix)
  • سرور Tectia برای IBM z / OS از SSH Communications Security Suite
  • (تحت مجوز GPL)

FTP بیش از SSH گاهی اوقات به عنوان امن FTP نامیده می شود. اما آن را با روش های دیگر مانند SSL / TLS (FTPS) اشتباه نگیرید. روش های دیگر انتقال فایل ها با استفاده از SSH و غیر مرتبط با FTP - SFTP و SCP. در هر یک از آنها، هم اعتبار و هم داده های فایل همیشه توسط پروتکل SSH محافظت می شوند.

تاریخ

اولین پیاده سازی پروتکل (1971) برای تبادل پیام بین مشتری و سرور، متشکل از یک هدر (72 بیت) و داده ها ارائه شد. طول متغیر... سرصفحه پیام شامل درخواست یا پاسخی از سرور FTP، نوع و طول داده های منتقل شده بود. پارامترهای درخواست (به عنوان مثال، مسیر و نام فایل)، اطلاعات از سرور (به عنوان مثال، لیست فایل های موجود در فهرست) و خود فایل ها به عنوان داده ارسال شدند. بنابراین، دستورات و داده ها از طریق یک کانال منتقل می شدند.

در سال 1972، پروتکل به طور کامل تغییر کرد و شکلی نزدیک به پروتکل مدرن به خود گرفت. دستورات با پارامترهای پاسخ مشتری و سرور از طریق اتصال TELNET (کانال کنترل) منتقل می شوند، برای انتقال داده یک اتصال جداگانه (کانال داده) ایجاد می شود.

در نسخه های بعدی، قابلیت کار در حالت غیرفعال اضافه شد، انتقال فایل بین سرورهای FTP، دستوراتی برای به دست آوردن اطلاعات، تغییر دایرکتوری فعلی، ایجاد و حذف دایرکتوری ها، ذخیره فایل ها با یک نام منحصر به فرد معرفی شد. دستورات انتقال ایمیل از طریق FTP مدتی بود که وجود داشت اما بعداً از پروتکل حذف شد.

در سال 1980 پروتکل FTP شروع به استفاده از TCP کرد. آخرین ویرایش پروتکل در سال 1985 منتشر شد. در سال 1997، پروتکل اضافی ظاهر شد که امکان رمزگذاری و امضای اطلاعات در کانال کنترل و کانال داده را فراهم می کند. در سال 1999، یک مکمل بین المللی سازی پروتکل منتشر شد که استفاده از رمزگذاری UTF-8 برای دستورات و پاسخ های سرور و تعریف را توصیه می کرد. تیم جدید LANG که زبان پاسخ ها را تعیین می کند.

دستورات اساسی

  • ABOR - لغو انتقال فایل
  • CDUP - دایرکتوری بالادست را تغییر دهید.
  • CWD - تغییر دایرکتوری
  • DELE - حذف فایل (نام فایل DELE).
  • EPSV - وارد حالت منفعل پیشرفته شوید. به جای PASV استفاده می شود.
  • HELP - لیستی از دستورات پذیرفته شده توسط سرور را نمایش می دهد.
  • LIST - فهرستی از فایل‌ها را در یک دایرکتوری برمی‌گرداند. لیست از طریق یک اتصال داده منتقل می شود.
  • MDTM - زمان اصلاح یک فایل را برمی گرداند.
  • MKD - ایجاد دایرکتوری.
  • NLST - فهرستی از فایل‌ها را در فهرستی در فهرست‌های بیشتر برمی‌گرداند فرمت کوتاهاز LIST. لیست از طریق یک اتصال داده منتقل می شود.
  • NOOP - عملیات خالی.
  • PASS - رمز عبور.
  • PASV - وارد حالت غیرفعال شوید. سرور آدرس و پورتی را که برای دریافت داده ها باید به آن وصل شوید، برمی گرداند. انتقال با وارد کردن دستورات زیر آغاز می شود: RETR، LIST و غیره.
  • PORT - وارد حالت فعال شوید. به عنوان مثال PORT 12,34,45,56,78,89. برخلاف حالت غیرفعال، برای انتقال داده، خود سرور به کلاینت متصل می شود.
  • PWD - دایرکتوری فعلی را برمی گرداند.
  • QUIT - قطع کن.
  • REIN - اتصال را دوباره راه اندازی کنید.
  • RETR - دانلود فایل. RETR باید قبل از دستور PASV یا PORT باشد.
  • RMD - حذف دایرکتوری.
  • RNFR و RNTO - تغییر نام فایل. RNFR - چه چیزی را تغییر نام دهیم، RNTO - چه.
  • SIZE - اندازه فایل را برمی گرداند.
  • STOR - آپلود فایل. قبل از STOR باید یک دستور PASV یا PORT باشد.
  • SYST - نوع سیستم (UNIX، WIN، ...) را برمی گرداند.
  • TYPE - نوع انتقال فایل (باینری، متن) را تنظیم کنید.
  • USER - نام کاربری برای ورود به سرور.

کدهای پاسخ FTP

در زیر است توضیح کوتاهکدهای پاسخی که می توانند توسط سرور FTP برگردانده شوند. این کدها توسط IETF در RFC 959 استاندارد شده اند. همانطور که قبلا ذکر شد، کد پاسخ یک عدد سه رقمی است. رقم اول مسئول یکی از سه نتیجه است: موفقیت، شکست، یا نشانه ای از خطا، یا پاسخ ناقص.

  • 2xx - پاسخ موفقیت آمیز
  • 4xx / 5xx - فرمان را نمی توان اجرا کرد
  • 1xx / 3xx - خطا یا پاسخ ناقص

رقم دوم نوع خطا را مشخص می کند:

  • x0z - نحوی.
  • x1z - اطلاعات. مربوط به یک پیام اطلاعاتی است.
  • x2z - اتصالات. پیام یا برای اتصال کنترل یا برای اتصال داده است.
  • x3z - پیام‌های مربوط به احراز هویت و حقوق کاربر را مطابقت می‌دهد.
  • x4z - مشخص نیست.
  • x5z - سیستم فایل. مربوط به پیام وضعیت سیستم فایل است.

رقم سوم در نهایت خطا را مشخص می کند.

مثال

220 سرور FTPآماده. USER ftp // Anonymous 230 ورود با موفقیت انجام شد. PASV 227 ورود به حالت غیرفعال (192,168,254,253,233,92) // کلاینت باید اتصالی را به IP منتقل شده باز کند LIST 150 در اینجا فهرست دایرکتوری آمده است. // سرور لیستی از فایل ها را در دایرکتوری ارسال می کند 226 فهرست ارسال OK. دایرکتوری ورودی 250 CWD با موفقیت تغییر کرد. ورود PASV 227 به حالت غیرفعال (192,168,254,253,207,56) STOR gyuyfotry.avi 150 Ok برای ارسال داده. // کلاینت محتویات فایل را ارسال می کند 226 فایل دریافت OK. QUIT 221 خداحافظ.

آرگومان 192,168,254,253,207,56 به این معنی است که اتصال به سرور در هاست با آدرس IP 192.168.254.253 در پورت 207 انتظار می رود.<< 8 + 56 = 53048 (где << - операция побитового сдвига, 207 записывается в младший разряд, а потом сдвигается в старший, чтобы в младший записать 56 или 207*256+56=53048).

بسیاری از سرورهای FTP دارای دایرکتوری (به نام ورودی، آپلود و غیره) هستند که برای نوشتن باز است و برای آپلود فایل ها روی سرور استفاده می شود. این به کاربران اجازه می دهد تا سرورها را با داده های تازه پر کنند.

Fxp

Fxp(English File eXchange Protocol) روشی برای انتقال مستقیم فایل ها بین دو سرور FTP بدون آپلود آنها در رایانه شما است. در یک جلسه FXP، کلاینت دو اتصال FTP را به دو سرور مختلف باز می کند و یک فایل را در سرور اول درخواست می کند و آدرس IP سرور دوم را در دستور PORT مشخص می کند.

مزیت بدون شک پشتیبانی از استاندارد FXP این است که کاربران نهایی که مایل به کپی فایل ها از یک سرور FTP به سرور دیگر هستند، دیگر مشمول محدودیت پهنای باند اتصال اینترنت خود نیستند. نیازی به دانلود فایلی برای خودتان نیست تا بعداً آن را در سرور FTP دیگری آپلود کنید. بنابراین، زمان انتقال فایل تنها به سرعت اتصال بین دو سرور FTP راه دور بستگی دارد، که در بیشتر موارد آشکارا بیشتر از "کاربر" است.

FXP توسط مجرمان سایبری برای حمله به سرورهای دیگر مورد استفاده قرار گرفت: دستور PORT آدرس IP و پورت سرویس مورد حمله را در رایانه قربانی مشخص می کند و دستورات RETR / STOR این پورت را از طرف سرور FTP فراخوانی می کند نه ماشین مهاجم. ، که امکان ترتیب دادن حملات DDoS در مقیاس بزرگ را با استفاده از بسیاری از سرورهای FTP به طور همزمان یا دور زدن سیستم امنیتی رایانه قربانی در صورتی که فقط به بررسی IP مشتری متکی باشد و سرور FTP مورد استفاده برای حمله در یک مورد اعتماد قرار گرفته باشد، ممکن می سازد. شبکه یا در یک دروازه در نتیجه، اکنون تقریباً همه سرورها بررسی می کنند که آدرس IP مشخص شده در دستور PORT با آدرس IP مشتری FTP مطابقت داشته باشد و به طور پیش فرض استفاده از آدرس های IP شخص ثالث را در آنجا ممنوع می کنند. بنابراین، استفاده از FXP هنگام کار با سرورهای FTP عمومی امکان پذیر نیست.

آرشیوهای FTP یکی از منابع اطلاعاتی اصلی در اینترنت هستند. در واقع یک انبار توزیع شده از متون، برنامه ها، عکس ها و سایر اطلاعات ذخیره شده در قالب فایل در رایانه های مختلف در سراسر جهان است.

اطلاعات موجود در آرشیوهای FTP عمدتا به سه دسته تقسیم می شوند:

  • اطلاعات محافظت شده که نحوه دسترسی به آن توسط صاحبان آن تعیین می شود و با توافق ویژه با مصرف کننده مجاز است. این نوع منابع شامل آرشیوهای تجاری (مثلاً نسخه های تجاری برنامه ها در بایگانی) می شود ftp.microsoft.com، منابع غیرتجاری ملی و بین المللی بسته (به عنوان مثال، کار بر روی پروژه های بین المللی CES یا IAEA)، اطلاعات غیر تجاری خصوصی با حالت های دسترسی ویژه (به عنوان مثال، بنیادهای خیریه خصوصی).
  • منابع اطلاعاتی با استفاده محدود، مانند برنامه‌های اشتراک‌افزار. این کلاس می تواند شامل منابع زمان استفاده محدود یا زمان محدود عمل باشد.
  • منابع اطلاعاتی رایگان یا نرم افزار رایگان وقتی صحبت از نرم افزار می شود. این منابع شامل هر چیزی است که می توان آزادانه از طریق شبکه بدون ثبت نام خاص به دست آورد. این می تواند مستندات، برنامه ها یا چیز دیگری باشد. لازم به ذکر است که نرم افزار رایگان گواهی کیفیت ندارد، اما توسعه دهندگان آن آماده به اشتراک گذاری تجربیات هستند.

از میان منابع فوق، جالب ترین دو دسته آخر است که به عنوان یک قاعده، در قالب آرشیوهای FTP طراحی شده اند.

فناوری FTP به عنوان بخشی از پروژه ARPA توسعه یافته است و برای تبادل مقادیر زیادی اطلاعات بین ماشین هایی با معماری های مختلف طراحی شده است. تمرکز اصلی پروژه اطمینان از انتقال قابل اعتماد بود، بنابراین از دیدگاه مدرن، به نظر می رسد FTP با ویژگی های اضافی و به ندرت مورد استفاده قرار می گیرد. هسته اصلی این فناوری پروتکل FTP است.

پروتکل FTP

FTP (پروتکل انتقال فایل یا "پروتکل انتقال داده") یکی از قدیمی ترین پروتکل های موجود در اینترنت است که در استانداردهای آن گنجانده شده است. اولین مشخصات FTP به سال 1971 برمی گردد. از آن زمان، FTP دستخوش تغییرات زیادی شده و قابلیت های خود را بسیار گسترش داده است. FTP را می توان هم در برنامه های کاربر و هم به عنوان یک ابزار ویژه برای سیستم عامل استفاده کرد.

FTP برای حل مشکلات اشتراک گذاری دسترسی به فایل ها در هاست های راه دور، استفاده مستقیم یا غیرمستقیم از منابع رایانه های راه دور، اطمینان از استقلال مشتری از سیستم های فایل میزبان های راه دور، انتقال داده کارآمد و قابل اعتماد طراحی شده است.

تبادل داده FTP از طریق یک کانال TCP انجام می شود. صرافی بر اساس فناوری "مشتری-سرور" ساخته شده است. FTP نمی تواند برای انتقال داده های محرمانه استفاده شود، زیرا از اطلاعات ارسال شده محافظت نمی کند و متن واضح را بین سرور و مشتری منتقل می کند. سرور FTP ممکن است به کلاینت FTP برای احراز هویت نیاز داشته باشد (یعنی هنگام اتصال به سرور FTP، کاربر باید شناسه و رمز عبور خود را وارد کند). اما رمز عبور و شناسه کاربری از کلاینت به سرور منتقل می شود. در متن ساده.

مدل های کاری FTP

ساده ترین مدل پروتکل FTP در شکل 1 نشان داده شده است. در FTP، یک اتصال توسط مفسر پروتکل کاربر آغاز می شود. تبادل از طریق یک کانال کنترل در استاندارد پروتکل TELNET کنترل می شود. دستورات FTP توسط مفسر پروتکل کاربر تولید شده و به سرور ارسال می شود. پاسخ های سرور نیز از طریق کانال کنترل برای کاربر ارسال می شود. به طور کلی کاربر توانایی برقراری ارتباط با مفسر پروتکل سرور و ابزاری غیر از مفسر پروتکل کاربر را دارد.

دستورات FTP پارامترهای کانال انتقال داده و خود فرآیند انتقال را تعریف می کند. آنها همچنین ماهیت کار با سیستم های فایل از راه دور و محلی را تعیین می کنند.

جلسه کنترل کانال داده را مقدار دهی اولیه می کند. هنگام سازماندهی یک کانال انتقال داده، توالی اقدامات با سازماندهی یک کانال کنترل متفاوت است. در این حالت سرور تبادل داده را مطابق با پارامترهای توافق شده در جلسه مدیریت آغاز می کند.

کانال داده برای همان میزبانی تنظیم شده است که کانال کنترلی از طریق آن کانال داده پیکربندی شده است. کانال داده می تواند هم برای دریافت و هم برای انتقال داده استفاده شود.

الگوریتم پروتکل FTP به شرح زیر است:

  1. سرور FTP از پورت TCP 21 به عنوان اتصال کنترلی خود استفاده می کند که همیشه منتظر اتصال کاربر FTP است.
  2. پس از برقراری ارتباط کنترلی بین ماژول User Protocol Interpreter و Server Protocol Interpreter ماژول، کاربر (سرویس گیرنده) می تواند دستورات را به سرور ارسال کند. دستورات FTP پارامترهای اتصال انتقال داده را تعیین می کند: نقش شرکت کنندگان در اتصال (فعال یا غیرفعال)، پورت اتصال (هم برای ماژول "برنامه انتقال داده کاربر" و هم برای ماژول "برنامه انتقال داده سرور") ، نوع انتقال، نوع داده های منتقل شده، ساختار داده و دستورالعمل های کنترلی که اقداماتی را که کاربر می خواهد انجام دهد را نشان می دهد (به عنوان مثال، ذخیره، خواندن، افزودن یا حذف داده ها یا یک فایل و موارد دیگر).
  3. پس از توافق با تمام پارامترهای کانال انتقال داده، یکی از شرکت کنندگان در اتصال که غیرفعال است (به عنوان مثال، "برنامه انتقال داده های کاربر") به حالت انتظار برای باز کردن اتصال به پورت مشخص شده می رود. برای انتقال داده ها سپس ماژول فعال (به عنوان مثال "برنامه انتقال داده سرور") اتصال را باز می کند و شروع به انتقال داده می کند.
  4. پس از تکمیل انتقال، اتصال بین ابزار انتقال سرور و ابزار انتقال کاربر بسته می‌شود، اما اتصال کنترلی بین مفسر پروتکل سرور و مترجم پروتکل کاربر باز می‌ماند. کاربر بدون بستن جلسه FTP می تواند کانال انتقال داده را دوباره باز کند.

این امکان وجود دارد که داده ها به دستگاه سوم منتقل شوند. در این حالت، کاربر یک کانال کنترل با دو سرور و یک کانال داده مستقیم بین آنها سازماندهی می کند. دستورات کنترل از طریق کاربر ارسال می شود و داده ها مستقیماً بین سرورها می روند. هنگام انتقال داده ها بین ماشین ها، کانال کنترل باید باز باشد. در غیر این صورت، اگر بسته شود، انتقال داده خاتمه می یابد. اتصال به دو سرور در شکل 2 نشان داده شده است.


الگوریتم کار هنگام اتصال دو سرور FTP که هیچ کدام در میزبان محلی کاربر قرار ندارد:

  1. ماژول User Protocol Interpreter به ماژول سرور Protocol Interpreter 1 دستور داد تا در حالت غیرفعال کار کند، پس از آن ماژول Server Protocol Interpreter 1 آدرس و شماره پورت (N) را برای کاربر ارسال کرد که او به آن گوش خواهد داد.
  2. ماژول مترجم پروتکل کاربر، ماژول سرور 2 "مفسر پروتکل سرور 2" را به عنوان شرکت کننده فعالاتصال و به او دستور داد تا داده ها را به میزبان "مفسر پروتکل سرور 1" در پورت (N) ارسال کند.
  3. "مفسر پروتکل کاربر" به "مفسر پروتکل سرور 1" دستور "برای ذخیره داده های دریافتی در فلان فایل" و "مفسر پروتکل سرور 2" - "برای انتقال محتویات فلان فایل" داده است. .
  4. یک جریان داده بین ماژول های Interpreter Protocol Server 1 و Server 2 Protocol Interpreter تشکیل می شود که توسط میزبان مشتری کنترل می شود.
در زیر نموداری از سازماندهی انتقال داده بین دو سرور FTP، مطابق با شکل 2 نشان داده شده است. مفسر Server1 (2) پروتکل server1 (server2).
PI کاربر (U) S Server1 (S1) کاربر PI (U) S Server2 (S2)
U Yu S1: اتصال

U S S1: PASV

U b S1: 227 ورود به حالت غیرفعال.

A1، A2، A3، A4، a1، a2

U Yu S2 Connect

U Yu S2: PORT A1، A2، A3، A4، a1، a2

U b S2: 200 بسیار خوب
U Yu S1: STOR ... U Yu S2: RETR ...

S1 Yu S2: اتصال ...

انتقال داده FTP بر اساس مکانیسم برقراری ارتباط بین پورت های مربوطه و انتخاب پارامترهای انتقال است. هر شرکت کننده FTP باید از پورت داده پیش فرض پشتیبانی کند. به طور پیش فرض، User Communications Utility از همان پورت برای ارسال دستورات استفاده می کند (آن را با "U" نشان دهید)، و Server Communications Utility از پورت L-1 استفاده می کند که L پورت کنترل با این حال، شرکت‌کنندگان در اتصال از پورت‌های انتقال داده‌ای که توسط "مترجم پروتکل کاربر" برای آنها انتخاب شده است، استفاده می‌کنند، زیرا به دلیل فرآیندهای کنترلی شرکت‌کننده در اتصال، تنها "مفسر پروتکل کاربر" می‌تواند درگاه‌های انتقال داده هر دو را تغییر دهد. برنامه انتقال داده های کاربر" و "برنامه های انتقال داده سرور".

قسمت غیرفعال اتصال باید قبل از اینکه دستور "شروع انتقال" داده شود، به درگاه انتقال داده خود "گوش دهد". سمت فعال که دستور شروع انتقال داده را می دهد، جهت حرکت داده ها را تعیین می کند.

هنگامی که اتصال برقرار شد، انتقال بین برنامه انتقال سرور و برنامه انتقال کاربر آغاز می شود. در همان زمان، اعلان های دریافت داده ها از طریق کانال "مفسر پروتکل سرور" - "مترجم پروتکل کاربر" منتقل می شود. FTP نیاز دارد که یک اتصال کنترلی در حین ارسال پیوند داده باز باشد. جلسه FTP تنها پس از بسته شدن اتصال کنترل بسته در نظر گرفته می شود.

به طور معمول، سرور FTP مسئول باز و بسته کردن یک کانال داده است. سرور FTP باید کانال انتقال داده را به تنهایی در موارد زیر ببندد:

  1. سرور انتقال داده را در قالبی که نیاز به بسته شدن اتصال دارد، به پایان رسانده است.
  2. سرور یک فرمان "خاتمه اتصال" را از کاربر دریافت کرد.
  3. کاربر پارامترهای پورت داده را تغییر داده است.
  4. اتصال کنترل بسته شد.
  5. خطاهایی رخ داده است که مانع از سرگیری انتقال داده می شود.

دستورات پروتکل .

دستورات کنترلی برای کنترل انتقال داده که بین مفسر پروتکل سرور و مترجم پروتکل کاربر رد و بدل می شود را می توان به سه گروه بزرگ تقسیم کرد:

  • دستورات کنترل دسترسی سیستم
  • دستورات کنترل جریان داده
  • دستورات سرویس FTP

بیایید چند تا از معمولی ترین تیم های هر گروه را در نظر بگیریم. از جمله دستورات کنترل دسترسی به سیستم باید به موارد زیر اشاره کرد:

کاربر. به طور معمول، این دستور یک جلسه FTP را بین مشتری و سرور باز می کند. آرگومان فرمان نام (شناسه) کاربر برای کار با سیستم فایل است. این دستور می تواند نه تنها در ابتدا، بلکه در وسط جلسه صادر شود، به عنوان مثال، اگر کاربر بخواهد شناسه ای را که از طرف آن اقدامات انجام می شود تغییر دهد. در این حالت، تمام متغیرهای مربوط به شناسه قدیمی آزاد می شوند. اگر داده ها در حین تغییر شناسه رد و بدل شوند، مبادله با شناسه کاربری قدیمی پایان می یابد.

عبور. این دستور پس از وارد کردن شناسه کاربری صادر می شود و به عنوان آرگومان حاوی رمز عبور کاربر است. به عنوان یادآوری، داده های احراز هویت FTP از طریق شبکه به صورت متن واضح منتقل می شود، بنابراین، برای اطمینان از امنیت کانال، کاربر باید اقدامات بیشتری را انجام دهد.

CWD. این دستور به کاربران اجازه می دهد تا با دایرکتوری های مختلف در سیستم فایل راه دور کار کنند. آرگومان فرمان رشته ای است که مسیر دایرکتوری را در سیستم فایل راه دور که کاربر می خواهد در آن کار کند را مشخص می کند.

افسار. دستور مقداردهی مجدد این دستور تمام متغیرهای کاربر فعلی را پاک می کند، پارامترهای اتصال را بازنشانی می کند. اگر در زمان دستور، انتقال داده اتفاق بیفتد، انتقال ادامه یافته و با همان پارامترها به پایان می رسد.

ترک. فرمان کانال کنترل را می بندد. اگر در لحظه ارسال فرمان، انتقال داده اتفاق بیفتد، پس از پایان انتقال داده، کانال بسته می شود.

دستورات کنترل جریان پارامترهای انتقال داده را تنظیم می کند. تمام پارامترهای توصیف شده توسط این دستورات دارای یک مقدار پیش فرض هستند، بنابراین دستورات کنترل جریان تنها زمانی استفاده می شود که شما نیاز به تغییر مقدار پارامترهای انتقال پیش فرض داشته باشید. دستورات کنترل جریان را می توان به هر ترتیبی صادر کرد، اما همه آنها باید قبل از دستورات سرویس FTP باشند. موارد زیر را باید از دستورات کنترل جریان داده متمایز کرد:

بندر. این دستور آدرس و پورت هاست را که به عنوان عضو فعال اتصال پیوند داده استفاده می شود، اختصاص می دهد. آرگومان های این فرمان یک آدرس IP 32 بیتی و یک شماره پورت اتصال 16 بیتی است. این مقادیر به شش فیلد 8 بیتی تقسیم می شوند و به صورت اعشاری نشان داده می شوند: h1، h2، h3، h4، p1، p2، ​​که در آن hN است. آدرس بایت (بالا به کم) و pN است بایت پورت (بالا به کم).

PASV. این دستور به ماژول ارسال می شود که نقش غیرفعالی در انتقال داده ها ("گوش دادن" به اتصال خواهد داشت. پاسخ به این دستور باید یک رشته حاوی آدرس و پورت میزبان باشد که در حالت انتظار برای اتصال در فرمت فرمان PORT هستند - "h1, h2, h3, h4, p1, p2".

دستورات TYPE، STRU، MODE به ترتیب نوع داده های ارسال شده (ASCII، Image و دیگران)، ساختار یا قالب انتقال داده ها (فایل، ضبط، صفحه)، روش انتقال (جریان، بلوک و غیره) را تعریف می کنند. استفاده از این دستورات هنگام ایجاد قابلیت همکاری در محیط های ناهمگن و سیستم های عامل و فایل بسیار متفاوت میزبان های تعاملی بسیار مهم است.

دستورات سرویس FTP اقداماتی را که باید روی فایل های مشخص شده انجام شود را تعیین می کند. به طور معمول، آرگومان دستورات در این گروه مسیر فایل است. نحو برای مسیر مشخص شده باید فرمت مورد نیاز سیستم فایل کنترل کننده فرمان را برآورده کند. از دستورات سرویس FTP موارد زیر قابل تشخیص است:

RETR. این دستور به ماژول Server Communications Utility دستور می دهد تا یک کپی از فایل مشخص شده توسط پارامتر فرمان را به Communications Module در انتهای دیگر اتصال ارسال کند.

STOR. این دستور به ماژول "Server data transfer program" دستور می دهد تا داده ها را از طریق کانال انتقال داده دریافت کرده و به صورت فایل ذخیره کند که نام آن با پارامتر این دستور مشخص شده است. اگر چنین فایلی از قبل وجود داشته باشد، توسط یک فایل جدید بازنویسی می شود، در غیر این صورت، یک فایل جدید ایجاد می شود.

تیم های RNFR و RNTO باید یکی دیگر را دنبال کنند. دستور اول شامل نام فایل قدیمی به عنوان آرگومان است، فرمان دوم جدید. اعمال متوالی این دستورات باعث تغییر نام فایل می شود.

ABOR. این دستور به سرور دستور می دهد تا اجرای دستور سرویس قبلی (مثلاً انتقال فایل) را قطع کند و کانال انتقال داده را ببندد.

دستور DELE فایل مشخص شده را حذف می کند.

دستورات MKD و RMD به ترتیب دایرکتوری مشخص شده در آرگومان را ایجاد و حذف می کنند.

دستورات LIST و NLST فایل ها را در یک دایرکتوری مشخص فهرست می کنند.

تمام دستورات پروتکل FTP توسط "مفسر پروتکل کاربر" به صورت متن ساده ارسال می شود - یک دستور در هر خط هر خط فرمان - شناسه و آرگومان - با کاراکترها پایان می یابد ... نام فرمان با یک کاراکتر فاصله از آرگومان جدا می شود - .

کنترل کننده فرمان برای هر دستور یک کد سه رقمی برمی گرداند. کدهای پردازش ساختار سلسله مراتبی خاصی را تشکیل می دهند و به عنوان یک قاعده، یک دستور خاص می تواند تنها مجموعه خاصی از کدها را برگرداند. کد پردازش فرمان با یک کاراکتر فاصله دنبال می شود - به دنبال متن توضیحی به عنوان مثال، خط برای تکمیل موفقیت آمیز عملیات به این شکل است: "200 فرمان خوب است".

در زیر نمونه ای از کار با پروتکل FTP آورده شده است. افسانه: S - سرور، U - کاربر.

S: 220 سرویس برای کاربر جدید آماده است
U: USER Gluk
> S: 331 نام کاربری خوب است، رمز عبور لازم است
U: سوفل PASS
S: 230 کاربر وارد شده است، ادامه دهید
U: RETR test.txt
S: 150 وضعیت فایل خوب است. در شرف باز کردن اتصال داده

<Идет передача файла...>

S: 226 بستن اتصال داده، انتقال فایل با موفقیت انجام شد
U: تایپ I
S: 200 فرمان باشه
U: STOR /home/images/first.my
S: 550 دسترسی رد شد
U: ترک

پروتکل های TFTP و SFTP

پروتکل FTP دو "برادر کوچک" دارد: SFTP - FTP ساده و TFTP - FTP ساده.

TFTP ساده ترین پروتکل انتقال فایل است. این برنامه در بالای پروتکل انتقال UDP اجرا می شود و تنها ابتدایی ترین عملیات انتقال فایل، یعنی نوشتن و خواندن فایل ها را ارائه می دهد. TFTP یک پروتکل ساده و آسان برای استفاده طراحی شده است. این امکان فهرست دهی دایرکتوری را ندارد و هیچ گونه احراز هویتی ندارد، اما می تواند اطلاعات 8 بیتی را مطابق با تمام استانداردهای اینترنت انتقال دهد.

از آنجایی که انتقال داده از طریق UDP انجام می شود، پروتکل TFTP روش های خاص خود را برای تحویل داده قابل اعتماد پیاده سازی می کند - بسته های تأیید، شماره گذاری بلوک های داده و بسته های تأیید و غیره. همه چیز بسیار شبیه به یک نسخه ساده شده از شبیه سازی پروتکل TCP است.

TFTP تنها با پنج دستور کار می کند:

  1. درخواست خواندن (RRQ) - یک درخواست خواندن.
  2. درخواست نوشتن (WRQ) - یک درخواست نوشتن.
  3. داده (DATA) - بسته داده.
  4. تصدیق (ACK) - تصدیق.
  5. خطا (ERROR) - خطا.

فرآیند انتقال داده با درخواست از مشتری TFTP به سرور برای خواندن یا نوشتن یک فایل آغاز می شود. ارتباط پس از دریافت تاییدیه آمادگی برای یکی از درخواست ها چه برای نوشتن و چه برای خواندن برقرار می شود.

هنگام باز کردن یک اتصال، هر یک از طرفین (به طور تصادفی) یک شناسه منحصر به فرد - TID را انتخاب می کند که از آن و UDP به عنوان پورت اتصال استفاده می شود. هر بسته ارسال شده با دو TID مربوط به هر طرف اتصال مرتبط است. درخواست اولیه توسط آغازگر اتصال TF TP در پورت UDP 69 (درگاه اولیه سازی) ارسال می شود که پورت اتصال را مشخص می کند. تبادل بیشتر در حال حاضر از طریق پورت های انتخاب شده توسط شرکت کنندگان در انتقال داده انجام می شود.

اگر سرور درخواست را اجازه دهد، تبادل باز می شود و فایل مشخص شده (در بلوک های 512 بایتی) منتقل می شود. هر بسته داده ارسالی شامل یک بلوک (512 بایت) و یک شماره بلوک در جریان ارسال شده است. ورود هر بلوک به میزبان مقصد باید با یک بسته ACK (تایید) با شماره بلوک دریافتی تأیید شود. تنها پس از دریافت بسته تایید، بسته داده بعدی ارسال می شود.

اگر طول بسته کمتر از 512 بایت باشد، به عنوان سیگنالی برای بستن کانال ارتباطی عمل می کند. اگر بسته ای در حین انتقال گم شود، پس از مدت زمان معینی سرور این بسته داده را دوباره ارسال می کند.

سه نوع موقعیت وجود دارد که باعث ارسال بسته های بد می شود:

  1. یک درخواست تایید نشده، به عنوان مثال، فایل پیدا نشد، هیچ حق دسترسی و غیره وجود ندارد.
  2. قالب بسته نامعتبر است، به عنوان مثال، یک خطای سوئیچینگ رخ داده است.
  3. از دست دادن دسترسی به منابع مورد نیاز

با تعداد زیادی پیغام خطا، اتصال را می توان به ابتکار یکی از طرفین بسته کرد.

طرح تراکنش TFTP به شرح زیر است:

  1. میزبان A یک درخواست WRQ به میزبان B می فرستد. پورت منبع TIDA است، پورت مقصد 69 است. بسته حاوی نام فایل، نوع انتقال است.
  2. میزبان B ACK (شماره بلوک - 0) را به میزبان A می فرستد. پورت منبع TIDB و پورت مقصد TIDA است.
  3. میزبان A (از طریق اتصال TIDA به TIDB) یک فرمان DATA و یک بلوک داده ارسال می کند. بسته شامل شماره بلوک نیز می باشد.

پروتکل انتقال فایل SFTP در مواردی محبوب است که کاربر به پروتکل کمی انعطاف پذیرتر و قابل اعتمادتر از TFTP نیاز دارد و به اندازه FTP پیچیده و دست و پا گیر نیست.

SFTP از مکانیسم های احراز هویت کاربر، انتقال فایل، مرور فهرست، تغییر دایرکتوری فعلی، تغییر نام و حذف فایل ها پشتیبانی می کند. برای اکثر عملیاتی که کاربر با سرور FTP راه دور انجام می دهد، این سرویس کافی است. SFTP می تواند یک جریان داده 8 بیتی را انتقال دهد و مانند TFTP از تنها یک کانال اتصال - برای دستورات و داده ها استفاده می کند. برخلاف TFTP، SFTP در بالای TCP، پورت 115 اجرا می شود.

دستورات SFTP پس از دریافت پاسخ پردازش از دستور قبلی، یکی یکی ارسال می شوند. همه دستورات شامل چهار کاراکتر ASCII و یک کاراکتر فاصله است که دستور را از آرگومان ها جدا می کند. پاسخ سرور شامل یک کد پاسخ و یک پیام متنی است. هر فرمان و پاسخ باید با علامت ختم شود ("\ 0" همان پایان خط در C است). SFTP تنها از 11 دستور اصلی و تنها 4 کد پاسخ برای کنترل انتقال داده ها استفاده می کند (نمادها: "+" - موفق، "-" - خطاها، "!" - توجه، "" - دیگر).

دستورات SFTP تقریباً همان نحو و هدفی با دستورات FTP مشابه دارند.

در سناریوی SFTP زیر، سرور SFTP - "MIT-XX" در انتظار اتصال است. کاربر "MKL" (رمز عبور "foo") متصل به سرور SFTP، لیستی از فایل های فرمت استاندارد را از فهرست "PS" با دستور "LIST F PS:" درخواست کرد، سپس لیستی از فایل ها را با فرمت توسعه یافته از فهرست درخواست کرد. همان دایرکتوری با دستور "LIST V PS:". سپس کاربر درخواستی برای فایلی به نام "Small.File" ساخت - دستور "RETR SMALL.FILE". در پاسخ، سرور اندازه آن - 69 را برگرداند و آن را برای ارسال آماده کرد. پس از آن کاربر با دستور SEND فایل را می خواند. دستور DONE اتصال را بسته است.

افسانه: S - سرور SFTP، U - کاربر SFTP.

S: + سرویس MIT-XX SFTP
U: USER MKL
S: + MKL خوب، رمز عبور را ارسال کنید
U: PASS foo
س:! MKL وارد شد
U: LIST F PS:
S: + PS:
Small.File
U: LIST V PS:
S: + PS:
Small.File 1 69 (7) P775240 2-Aug-94 20:08 MKL
U: RETR SMALL.FILE
S: 69
U: ارسال کنید
S: این یک فایل کوچک است، فایل بدون تهی پایان ارسال می شود.
U: انجام شد
S: + اتصال MIT-XX بسته شدن

همانطور که از سناریوی ارائه شده می بینید، SFTP یک پروتکل ساده است که بر اساس یک طرح بی اهمیت "درخواست پاسخ" با حداقل مجموعه ای از دستورات ساخته شده است که به شما امکان می دهد تمام عملیات لازم برای کنترل انتقال و قرار دادن داده ها بر روی دیسک را انجام دهید. .

SFTP برای کار با یک کاربر و یک سرور کاملاً رضایت بخش است و استفاده و برنامه ریزی آسان است.

ابزار FTP.

کاربر معمولی ترکیب FTP را بیشتر به عنوان نام یک ابزار خدماتی می داند که به شما امکان می دهد فایل ها را بین سرورهای FTP و رایانه های مشتری مبادله کنید. برخی از برنامه های کاربردی از یک سرویس خط فرمان استفاده می کنند، برخی دارای یک رابط گرافیکی هستند، اما، به عنوان یک قاعده، همه آنها از استاندارد پروتکل FTP پشتیبانی می کنند و مجموعه ای اساسی از دستورات را تعریف می کنند که باید توسط تمام پیاده سازی های سرویس FTP پشتیبانی شود.

ابزار FTP پوسته ای با رابط کاربری برای کار در اختیار کاربر قرار می دهد خط فرمان... بسته به اجرا و نسخه برنامه FTP، می تواند از عملکردهای خاصی از کار با یک سیستم فایل راه دور پشتیبانی کند. دستورات ابزار FTP معمولاً بر اساس اصل کار با سیستم فایل محلی ساخته می شوند و بسیار متفاوت از دستورات FTP هستند.

در اصل، یک ابزار FTP یک مفسر دستورات پوسته به دستورات (و توالی) FTP است. ارسال دستورات اتصال FTP، تجزیه و تحلیل پاسخ های سرور FTP، باز کردن کانال انتقال داده، فرآیند انتقال داده - همه اینها در داخل ماژول FTP اتفاق می افتد. کاربر از تمام رویدادهای انتقال دستورات و داده ها مطابق با تفسیر این رویدادها توسط ابزار FTP مطلع می شود.

به عنوان مثال، در اینجا یک اسکریپت برای انتقال یک فایل متنی از یک سرور FTP به یک میزبان محلی است.

C: \> ftp
ftp> ftp.sun.com را باز کنید
220-به سرور FTP شرکتی Sun Microsystems خوش آمدید.
220-
220- ftp FTPسرور (ftpd چهارشنبه 30 اکتبر 23:31:06 PST 1996) آماده است.
کاربر (ftp.sun.com: (هیچکدام)): ftp
331 ورود مهمان خوب، آدرس ایمیل کامل خود را به عنوان رمز عبور ارسال کنید.
کلمه عبور:
230 ورود مهمان خوب است، محدودیت های دسترسی اعمال می شود.
ftp> dir
دستور 200 PORT موفقیت آمیز بود.
150 باز کردن ASCII داده های حالتاتصال برای / bin / ls.
مجموعا 34
dr-xr-xr-x 8 root 0 512 14 فوریه 1997.
d - x - x - x 3 کاربران ریشه 512 اکتبر 31 1996 و غیره
drwxrwx-wt 3 root 42 5120 نوامبر 21 10:37 ورودی
drwxrwxr-x 12 root 42 4096 19 نوامبر 23:26 میخانه
dr-xr-xr-x 4 کاربر ریشه 512 7 ژوئن 1996 usr
-rw-r - r-- 1 کاربر ریشه 49 سپتامبر 27 1996 Welcome.msg
226 انتقال کامل شد.
دریافت 624 بایت در 19.66 ثانیه (0.03 کیلوبایت در ثانیه)
ftp> get welcome.msg primer.txt
دستور 200 PORT موفقیت آمیز بود.
150 باز کردن اتصال داده حالت ASCII برای Welcome.msg (49 بایت).
226 انتقال کامل شد.
دریافت 50 بایت در 2.73 ثانیه (0.02 کیلوبایت در ثانیه)
ftp> خروج
221 خداحافظ.

دستور دستور:

ftp [-v] [-d] [-n]

  • v - پاسخ های سرور و آمار انتقال داده را سرکوب می کند.
  • n - حالت شناسایی کاربر را کنترل می کند. اگر این سوئیچ مشخص شده باشد، ابتدا فایل .netrc بررسی می شود.
  • i - تأیید انتقال فایل را هنگام کپی انبوه فایل ها غیرفعال می کند.
  • د - حالت اشکال زدایی را روشن می کند.
  • g - شفافیت اسامی عبوری را خاموش می کند.

دستورات مهم عبارتند از دستورهای دریافت/انتقال داده‌های get، put، mget، mput و bin. دستورهای get و put به ترتیب برای ارسال و دریافت یک فایل طراحی شده اند. دستور mget و mput مانند دستورات قبلی است، اما برای گروهی از فایل ها. دستور bin به شما امکان می دهد داده ها را در حالت باینری انتقال دهید که برای انتقال برنامه ها و بایگانی ها مهم است، علاوه بر این، این حالت برای داده های کاراکتر با طول خط دلخواه مفید است (ASCII طول خط را به 254 کاراکتر محدود می کند). یکی دیگر از دستورات مفید دستور هش است. خط: "ftp> hash #" هنگام کار با خطوط کند یا انتقال فایل های بزرگ به شما امکان می دهد پیشرفت انتقال داده ها را مشاهده کنید (علامت # پس از انتقال هر بلوک صادر می شود، به جای # می توانید نماد دیگری قرار دهید).

یکی از قدیمی ترین پروتکل های شبکه FTP است. برای چیست، نقش آن در شبکه "ارتباطات" رایانه ها چیست، چگونه کار می کند این پروتکلو اینکه آیا ارزش استفاده از آن را دارد یا خیر - پاسخ تمام این سوالات را در مقاله زیر خواهید یافت.

ماهیت فناوری FTP چیست؟

FTP مدرن به روشی کمی متفاوت از قبل استفاده می شود. در ابتدا برای مدیریت حجم زیادی از داده ها طراحی شده بود. بنابراین، نه تنها پروتکل FTP، بلکه آرشیو FTP نیز اختراع شد. اکنون دومی به یک مخزن جهانی برای بسیاری از فایل‌های میزبانی شده در سرورهای سراسر جهان تبدیل شده است. آرشیو از تشکیل شده است تعداد زیادیسرورهای FTP و خاص وجود دارد موتورهای جستجوکه به شما امکان می دهد داده ها را بر اساس میزبان جستجو کنید، مانند Napalm یا FileSearch.

هر قسمت از آرشیو FTP نمی تواند جا بگیرد کاربر خارجیاز طریق یک موتور جستجو یک سرور با سطوح دسترسی مختلف وجود دارد. بسیاری از مردم FTP را به عنوان پروتکلی می شناسند که برای آپلود یک وب سایت در هاست مورد نیاز است، یعنی برای استفاده محرمانه لازم است. دقیقاً برای اهداف مشابه، آنها از آرشیو FTP برای سازمان های تجاری استفاده می کنند که نوعی از آنها را ذخیره می کنند اطلاعات طبقه بندی شدهدر آنها.

اما بسیاری از آرشیوهای عمومی FTP نیز مانند اشتراک گذاری فایل هستند. برای چنین آرشیوهایی است که موتورهای جستجوی ویژه ای ایجاد شده است - به طوری که کاربران می توانند فایل ها را به طور همزمان پیدا کنند، نه مقالاتی با توضیحات طولانی برنامه ها یا بازی ها، به جای خود برنامه ها.

هدف از FTP چیست؟

پروتکل FTP برای انتقال داده بین مشتری و سرور در نظر گرفته شده است. به آن "پروتکل انتقال داده" می گویند. از آنجایی که مدت زیادی است که وجود داشته است، FTP به یکی از استانداردهای اینترنت تبدیل شده است. این پروتکل برای اولین بار در سال 1971 مورد استفاده قرار گرفت. در طول عمر خود تغییرات زیادی کرده است. برخی از توابع حذف شدند و بر این واقعیت تأکید شد که FTP برای تبادل داده بین رایانه های راه دور مناسب است. با گذشت زمان، برای آن راحت تر شد کاربران عادی... پس از همه، شما می توانید با استفاده از یک برنامه خاص یا با استفاده از خدمات استاندارد سیستم عامل وارد سرور FTP شوید. به عنوان مثال، شما حتی می توانید با استفاده از یک سرور استاندارد به یک سرور FTP متصل شوید.

علاوه بر این، FTP برای توزیع حقوق دسترسی بین آنها طراحی شده است. کاربران مختلفسرورها مجموعه ای از حقوق خود را دارند. به عنوان مثال، برخی فقط می توانند داده ها را بخوانند، در حالی که برخی دیگر می توانند فایل ها را جابجا، تغییر نام دهند، ویرایش کنند و در هاست آپلود کنند. از آنجایی که ایجاد یک سرور FTP به همان اندازه که استفاده از آن آسان است، بسیاری از کاربران از این پروتکل برای ایجاد استفاده می کنند دسترسی از راه دوربه کامپیوترهایشان

برخی افراد FTP و TCP را اشتباه می گیرند. اگرچه این مفاهیم قابل مقایسه نیستند. FTP پروتکل است و TCP کانالی است که روی آن کار می کند. و این کانال بین دستگاه سرور و دستگاه مشتری برقرار می شود. "دستگاه"، نه یک رایانه، زیرا FTP را می توان با استفاده از تلفن های هوشمند استفاده کرد برنامه های ویژه، نه تنها در رایانه شخصی.

لطفاً توجه داشته باشید که FTP پروتکل خوبی برای کار بر روی یک رایانه از راه دور است اگر نیاز به آپلود برخی از داده ها در آنجا دارید یا برعکس - آن را دانلود کنید.

اما برای انتقال اطلاعات محرمانه این پروتکل اصلا مناسب نیست. به همین دلیل است که توسعه دهندگان این سرویس از استفاده از FTP به عنوان پروتکل اصلی خودداری کردند و به جای آن WebDAV را انتخاب کردند. FTP است پروتکل بازکه داده ها را رمزگذاری نمی کند. و حتی اگر احراز هویت رمز عبور را برای کلاینت‌ها در سرور تنظیم کنید، داده‌هایی که در طول مجوز وارد می‌کنند به صورت متن واضح به میزبان منتقل می‌شود. یعنی ارزش رهگیری آنها را دارد و مهاجمان می توانند به سرور نفوذ کنند.

پروتکل FTP چگونه کار می کند

به طور کلی، مدل پروتکل FTP بسیار ساده است، بنابراین هنگام استفاده از آن نباید با مشکل مواجه شوید. رایج ترین مدل زمانی است که کاربر از یک برنامه مفسر استفاده می کند. با استفاده از آن، می توانید تمام دستورات را در یک رابط کاربری راحت اجرا کنید، بنابراین لازم نیست آنها را بشناسید و آنها را وارد ترمینال کنید. شما دستورات را به مفسر می فرستید و آن را از طریق اتصال کنترل به سرور منتقل می کند. اتصال کنترل در پروتکل TELNET کار می کند. بنابراین، با برقراری ارتباط با مفسر سرور، کاربر به هاست وارد می شود و می تواند از دستورات بیشتری استفاده کند.

مجموعه دستورات ارسال شده از طریق اتصال کنترل، رفتار سرور و کلاینت و همچنین فرآیند انتقال داده را تعیین می کند. علاوه بر این، دستورات را می توان برای دستکاری سیستم فایل مشتری و سرور استفاده کرد.

برای انتقال داده ها از کانال دیگری متفاوت از کانال کنترل استفاده می شود. اما دومی یک تماس به یک اتصال داده را آغاز می کند. نحوه کار یک اتصال داده با نحوه عملکرد کانال کنترل متفاوت است، زیرا سرور مبادله فایل ها و داده ها را آغاز می کند. اگر چه این ارتباطمی تواند در هر دو جهت استفاده شود: هم برای دریافت و هم برای انتقال داده.

اما این چیه الگوریتم کلیبرای هر پروتکل FTP روی سرور کار می کند:

  1. سرور همیشه از طرف کاربر در وضعیت معلقی قرار دارد. در هر زمان، مشتری می تواند به سرور متصل شود، بنابراین کانال کنترل پورت 21 را باز نگه می دارد. این است که تمام تیم های مدیریتی می روند. پورت 21 به طور پیش فرض تنظیم شده است، اما می توان آن را تغییر داد. سپس کاربر باید شماره پورت را به صورت دستی وارد کند، در غیر این صورت نمی تواند به کانال کنترل دسترسی پیدا کند.
  2. پس از اتصال از طریق پورت کانال کنترل، برنامه سمت سرویس گیرنده می تواند دستوراتی را به مفسر سرور صادر کند. این دستورات هر دو تغییر در سیستم فایل سرور و روش انتقال داده ها، محتوای آنها، حجم، نوع حالت عملکرد و بسیاری موارد دیگر را تعیین می کند.
  3. پس از اینکه تمام دستورات انتقال داده به توافق رسیدند، یکی از شرکت کنندگان در اتصال به حالت آماده به کار غیرفعال (سرور یا مشتری) می رود. او منتظر می ماند تا یک شماره پورت به او داده شود تا آن را باز کند و داده ها را روی آن دریافت یا ارسال کند.
  4. پس از پایان فرآیند انتقال داده، اتصال بسته می شود، اما کانال کنترل همچنان باز است. این به کاربر این امکان را می دهد که همه چیز را دوباره انجام دهد: یک فرمان به سرور بدهد و دوباره انتقال داده را شروع کند. در این صورت نیازی به ایجاد مجدد جلسه نیست. به همین دلیل است که FTP با دو نوع اتصال کار می کند.

از آنجایی که این رایج ترین مدل برای پروتکل FTP است، موارد پیچیده تری نیز وجود دارد. به عنوان مثال، زمانی که یک کاربر با یک سرور کار نمی کند، بلکه یک سرور با یک سرور کار می کند. در این حالت کلاینت انتقال داده ها را مستقیماً بین سرورها و بدون واسطه کنترل می کند. و نمونه های مشابه زیادی از پیکربندی سرور-کلینت وجود دارد. این یکی از مزایای FTP - انعطاف پذیری است.

نکته اصلی در درک کار FTPپروتکل تعامل اتصالات و پورت ها است. بیشتر خطاها در حین عملکرد این پروتکل مربوط به این است که یکی از طرفین اتصال پورت خود را پیکربندی نکرده است. پروتکل یک جنبه غیرفعال و یک فعال دارد. پسیو باید با دقت گوش کند و منتظر بماند تا فعال شماره پورت را ارسال کند که باید فوراً باز شود. اگر پورت باز نباشد، انتقال داده شروع نمی شود.

فکر نکنید که باید به صورت دستی منتظر برخی از دستورات از طرف شرکت کننده فعال اتصال باشید - این همه به طور خودکار انجام می شود. مشکلات زمانی ظاهر می شوند که، به عنوان مثال، یک یا پورت دیگر قبلاً در رایانه شما اشغال شده باشد یا برای اتصالات ورودی / خروجی مسدود شده باشد. در چنین لحظاتی باید "آستین های خود را بالا بزنید" و رایانه را به صورت دستی پیکربندی کنید تا زمانی که بتواند به درستی کار کند کمک FTP.

پروتکل FTP از چه دستوراتی استفاده می کند؟

به احتمال زیاد، شما در کار خود به آنها نیاز نخواهید داشت، زیرا از عامل کاربر در قالب یک برنامه با رابط کاربر پسند استفاده خواهید کرد. یکی از این برنامه ها FileZIlla است. اما هر چیزی ممکن است اتفاق بیفتد. شاید شما فقط Far Maneger را در دسترس داشته باشید، جایی که همه چیز باید از طریق ترمینال انجام شود. در این صورت باید با آن آشنا شوید تیم های اصلیبرای FTP

برای اتصال به سرور باید از دستور USER استفاده کنید. برای تعیین نام کاربری که می خواهد جلسه ای با سرور باز کند، لازم است. پس از اینکه شناسه کاربری را در دستور USER وارد کردید، برای ورود باید رمز عبور بنویسید. برای این کار استفاده کنید تیم ویژه- عبور.

یکی از محبوب‌ترین ویژگی‌هایی که می‌توانید برای «گشت‌کردن» روی سرور استفاده کنید، CWD است. دستور لازم است تا بتوانید بین دایرکتوری های سرور حرکت کنید. برای استفاده از دستور CWD و مسیر دایرکتوری که می خواهید به آن بروید را وارد کنید.

اگر در مواردی نیاز به مقداردهی مجدد دارید، یعنی تمام داده ها و تنظیمات اتصال فعلی را حذف کنید، سپس از دستور REIN استفاده کنید. در طول استفاده از آن، انتقال داده قطع نمی شود و پارامترهای انتقال مانند قبل از دستور REIN باقی می مانند. یا می توانید آن را حتی بیشتر کنید به روشی رادیکال- اتصال کنترل را با استفاده از دستور QUIT ببندید. همچنین انتقال اطلاعات را قطع نمی کند و تنها پس از اتمام دانلود، جلسه به طور کامل قطع می شود.

برای ثبت پورت در حالت فعالیعنی برای اختصاص دادن آن به عضو پسیو باید از دستور PORT استفاده کنید. مشکل این است که نوشتن این دستور بسیار دشوار است - شما باید 32 بیت از IP سرور و 16 بیت از شماره پورت را مشخص کنید که کاملاً ناخوشایند است. بنابراین، بهتر است راهی برای استفاده از یک کلاینت ساده برای کار با پروتکل FTP پیدا کنید تا بیش از حد خود را بارگیری نکنید. در چنین کلاینت، تغییر شماره پورت یک موضوع بی اهمیت است. کافی است به تنظیمات بروید، پیدا کنید مورد مورد نظرو به جای عدد فعلی عدد دیگری در آن بنویسید.

شما از دستورات RETR و STOR برای انتقال داده ها از و به سرور استفاده خواهید کرد. دستور اول برای ارسال فایل انتخاب شده به دستگاه مشتری و دستور دوم به سرور مورد نیاز است. و برای تغییر نام یک فایل، باید از دو دستور متوالی استفاده کنید. ابتدا RNFR را با نام فایل قدیمی و سپس RNTO را با نام فایل جدید بنویسید. شما همچنین به دستور DELE نیاز دارید که برای حذف داده ها از سیستم فایل، به طور دقیق تر فایلی که در حال حاضر انتخاب شده است، لازم است.

دستورات دیگری برای حذف دایرکتوری ها استفاده می شود. برای حذف پوشه هایلایت شده، به دستور RMD نیاز دارید. و برای ایجاد پوشه جدید، از خط MKD استفاده کنید. همچنین، کاربران اغلب به عملکرد مشاهده فایل هایی که در فهرست هستند نیاز دارند. برای این کار از دستور LIST یا NLST استفاده کنید.

آنالوگ های FTP چیست؟

پروتکل انتقال داده FTP "وارثان" مستقیم خود را دارد، یعنی پروتکل هایی که از FTP تشکیل شده اند. این دو پروتکل هستند: TFTP و SFTP. اولین پروتکل محبوب ترین نیست زیرا از نظر دستورات بسیار محدود است. برای مدیریت فایل سیستم سرور بسیار کمتر از FTP مناسب است. شما حتی نمی توانید لیست فایل های دایرکتوری را با آن مشاهده کنید. TFTP فقط برای انتقال ساده ترین اطلاعات 8 بیتی مورد نیاز است، نه بیشتر. و در این پروتکل تنها 5 دستور وجود دارد که برای خواندن، نوشتن، درخواست بسته داده و سایر عملیات ساده مورد نیاز است.

اما پروتکل SFTP بسیار موفق تر از TFTP و در برخی موارد - از FTP است. نکته این است که پروتکل FTP ایمن است. این ترکیبی از اتصال رمزگذاری شده SSH و پروتکل انتقال داده FTP است. علاوه بر این، در SFTP، بسیاری از توابع اضافی excluded، که مدت ها پیش به FTP معرفی شدند، اما توسط کسی استفاده نمی شوند. بنابراین، SFTP هم امن تر از FTP است و هم در عین حال به معنای خوب کلمه ساده تر است. توصیه می شود در مواردی که با برخی از داده های محرمانه کار می کنید دقیقاً SFTP را انتخاب کنید. سپس حتی اگر هکرها داده های ارسال شده را از طریق اتصال کنترل رهگیری کنند، آنها همچنان رمزگذاری می شوند و هیچ ارزشی برای مهاجمان ایجاد نمی کنند.

و بهتر است از پروتکل FTP در برنامه های کلاینت معمولی استفاده شود نه در ترمینال. از این گذشته، به این ترتیب کار بر روی پروتکل انتقال داده را به میزان قابل توجهی سرعت بخشیده و به عملکردهای پیچیده تر آن دسترسی خواهید داشت.

FTP چیست؟

FTP (پروتکل انتقال فایل یا "پروتکل انتقال داده") یکی از قدیمی ترین پروتکل های موجود در اینترنت است که در استانداردهای آن گنجانده شده است. اولین مشخصات FTP به سال 1971 برمی گردد. از آن زمان، FTP دستخوش تغییرات زیادی شده و قابلیت های خود را بسیار گسترش داده است. FTP را می توان هم در برنامه های کاربر و هم به عنوان یک ابزار ویژه برای سیستم عامل استفاده کرد.

FTP برای حل مشکلات اشتراک گذاری دسترسی به فایل ها در هاست های راه دور، استفاده مستقیم یا غیرمستقیم از منابع رایانه های راه دور، اطمینان از استقلال مشتری از سیستم های فایل میزبان های راه دور، انتقال داده کارآمد و قابل اعتماد طراحی شده است.

    هدف اصلی پروتکل FTP انتقال (کپی، انتقال) فایل ها از یک کامپیوتر راه دور به آن است کامپیوتر محلی، و بالعکس.

    FTP یکی از پروتکل های انتقال اطلاعات از طریق اینترنت است.

    FTP یک مشخصات عمومی پذیرفته شده از دستوراتی است که برنامه ها برای انجام کار خود از آن استفاده می کنند.

    FTP است زبان جهانی، که در آن برنامه های مختلفدر انواع مختلف کامپیوترها می توانند با یکدیگر ارتباط برقرار کنند.

    امروزه تقریباً همه توابع FTPاز طریق HTTP نیز در دسترس هستند، با این حال FTP هنوز به عنوان پروتکل اصلی برای دسترسی به آرشیوهای بزرگ فایل ها در شبکه استفاده می شود.

با FTP، می‌توانید با فایل‌های خود بر روی یک رایانه از راه دور به‌گونه‌ای کار کنید که گویی در رایانه محلی شما هستند.

سطح برنامهلایه برنامه در واقع فقط مجموعه ای از پروتکل های مختلف است که توسط آن کاربران شبکه به منابع مشترک مانند فایل ها، چاپگرها یا صفحات وب ابرمتن دسترسی پیدا می کنند و همچنین همکاری خود را، به عنوان مثال، با استفاده از پروتکل سازماندهی می کنند. پست الکترونیک... معمولاً واحد داده ای که لایه برنامه روی آن کار می کند نامیده می شود پیام.

تنوع بسیار گسترده ای از پروتکل های لایه کاربردی وجود دارد. اجازه دهید حداقل چند مورد از رایج ترین پیاده سازی های سرویس فایل را مثال بزنیم: NCP در سیستم عامل Novell NetWare، SMB در ویندوز مایکروسافت NT، NFS، FTP و TFTP که بخشی از پشته TCP/IP هستند.

مدل OSI اگرچه بسیار مهم است، اما تنها یکی از بسیاری از مدل های ارتباطی است. این مدل‌ها و پشته‌های پروتکل مرتبط با آن‌ها می‌توانند از نظر تعداد لایه‌ها، عملکردها، قالب‌های پیام، خدمات ارائه‌شده در لایه‌های بالایی و سایر پارامترها متفاوت باشند.

امنیت.

داده های منتقل شده از طریق FTP از مشتری به سرور رمزگذاری نمی شوند. FTP معمولی هنگام انتقال رمز عبور برای مجوز روی سرور، امنیت ایجاد نمی کند.

می توانید از حالت محافظت شده پروتکل انتقال استفاده کنید فایل های FTP... برای یک لایه امنیتی اضافی، توصیه می شود از FTP "امن" - FTP امن استفاده کنید. این ویژگی با شبیه سازی انتقال ترافیک FTP از طریق یک تونل با استفاده از سرور SSH2 پیاده سازی می شود. برای کاربر نهایی، این بدان معناست که با استفاده از سرویس گیرنده FTP مورد علاقه خود (برنامه کار با وب سایت از طریق FTP - CuteFTP، به عنوان مثال)، پس از انجام تنظیمات اضافی ساده، مطمئن خواهید شد که مشکل امنیتی در انتقال فایل حل شده است. .

پشتیبانی از حالت "SFTP over SSH2" توسط برخی از برنامه های مدرن FTP ارائه می شود که شامل CuteFTP Pro و SecureFX ، مثلا.

هنگام استفاده از FAR می توان درجه امنیت کار با FTP را نیز افزایش داد. درست است، نه کاملاً همانطور که در بالا توضیح داده شد، بلکه کیفیت بسیار بالایی نیز دارد. به دور شما باید یک ماژول اضافی نصب کنید FarScp ، پس از آن می توانید فایل ها را نه از طریق FTP، طبق معمول، بلکه با استفاده از یک کلاینت scp (کپی امن) که هم روی SSH و هم از طریق SSH2 کار می کند، انتقال دهید.

نحوه عملکرد FTP... برای انتقال یک فایل با استفاده از FTP، به دو برنامه نیاز دارید: یک سرویس گیرنده FTP و یک سرور FTP.

برنج. 1. طرح پروتکل FTP

سرویس گیرنده FTP.

کلاینت FTP برنامه ای است که با آن می توانید به سرور FTP متصل شوید. سیستم عامل های مدرن دارای ابزارهای خط فرمان FTP هستند، اما برخی از آنها یک رابط پنجره ای دارند.

نمونه مشتری FTP - CuteFTP، Go! Zilla، ReGet و غیره. نامیده می شوند دانلود منیجرها... آنها دارند رابط کاربر پسندو به کاربران اجازه می دهد تا به راحتی فایل ها را دانلود و آپلود کنند.

سرور FTP.

سرور FTP - رایانه ای که حاوی فایل های در دسترس عموم است و برای پشتیبانی از FTP پیکربندی شده است (سرور FTP باید نرم افزاری داشته باشد که از FTP پشتیبانی می کند).

    برنامه‌ای که از FTP روی سرور FTP پشتیبانی می‌کند، تمام درخواست‌های دریافتی از رایانه‌های دیگر (مثلاً از رایانه شما) را نظارت می‌کند، آنها را پردازش می‌کند و پاسخ می‌دهد.

    هنگام نصب یک سرور FTP، دایرکتوری موجود برای هر کاربر یا گروه کاربری مشخص می شود.

    برای هر فایل و دایرکتوری سرور FTP، می توانید با تنظیم ویژگی ها، حقوق دسترسی کاربر را تعریف کنید:

فقط خواندن و غیره

اتصال FTP چیست؟.

اتصال FTP به این معنی است که شما به آن متصل شده اید کامپیوتر از راه دوربا استفاده از پروتکل FTP


برنج. 2. سازماندهی تبادل اطلاعات بین دو ماشین راه دور

کنترل سوالات

1. زمانی که اولین ظاهر شدFTPپروتکل ها؟

- در سال 1971؛ *

- در سال 1099;

- در سال 1989

2. پروتکل چیستFTP ?

- این یک پروتکل ترجمه فایل است.

- این یک پروتکل انتقال فایل است؛ *

- این یک پروتکل دریافت فایل است.

3. چیستسرویس گیرنده FTP؟

- این برنامه ای است که حاوی فایل های عمومی است؛ *

- این برنامه ای است که با آن می توانید به سرور FTP متصل شوید.

- این یک کاربر (گروهی از کاربران) است.

4. چیستسرور FTP?

- این رایانه ای است که حاوی فایل های در دسترس عموم است؛ *

- این کامپیوتر محلی است.

- این کامپیوتر ارائه دهنده هاست است.

5. l چیست؟وب سایت دورگرد؟

- این سایت مبدا است؛ *

- این وب سایت مقصد است.

- این یک وب سایت اصلاح شده است.

6. هاستینگ چیست؟

- این فرآیند پردازش فایل ها است.

- ایجاد یک وب سایت جدید است.

- این قرار دادن یک سایت در رایانه یک ارائه دهنده میزبانی وب برای دسترسی به سایت برای همه کاربران اینترنت است.

7-چیستسایت از راه دور؟

- این گره پایانی (سرور) است که سایت در آن منتشر می شود؛ *

- این سایت مبدا است.

- این یک کامپیوتر در اینترنت است.

(در حال دانلود) ?

- این در حال کپی کردن فایل ها از رایانه شما به اینترنت در رایانه شما است.

- این در حال کپی کردن فایل ها از کامپیوتر شما به یک کامپیوتر راه دور است.

- این در حال کپی کردن فایل ها از کامپیوتر شما به اینترنت است.

9. چیست

- این در حال کپی کردن فایل ها از رایانه شما به رایانه در اینترنت است؛ *

- این در حال کپی کردن فایل ها از رایانه شما به اینترنت در رایانه شما است.

- این در حال کپی کردن فایل ها از کامپیوتر شما به یک کامپیوتر راه دور است.

10. چیستپیام?

- این یک واحد داده است که توسط لایه برنامه عملیاتی می شود.

- این یک فایل است

- این یک سند متنی است.

مقالات مرتبط برتر