300 likes | 596 Views
پروتکل انتقال فایـل. File Transfer Protocol. الهام هاتفی فر منبع: اصول مهندسی اینترنت (دکتر احسان ملکیان ). تهیه لیستی از فایلهای موجود از سیستم فایل کامپیوتر راه دور حذف، تغییر نام و جابجا کردن فایلهای کامپیوتر راه دور جستجو در شاخههای ( دایرکتوریهای ) کامپیوتر راه دور
E N D
پروتکل انتقال فایـل File Transfer Protocol الهام هاتفی فر منبع: اصول مهندسی اینترنت (دکتر احسان ملکیان)
تهیه لیستی از فایلهای موجود از سیستم فایل کامپیوتر راه دور • حذف، تغییر نام و جابجا کردن فایلهای کامپیوتر راه دور • جستجو در شاخههای (دایرکتوریهای) کامپیوتر راه دور • ایجاد یا حذف شاخه روی کامپیوتر راه دور • انتقال (بارگذاری) فایل از کامپیوتر راه دور به کامپیوتر میزبان (Download) • انتقال فایل و ذخیره آن از کامپیوتر میزبان به کامپیوتر راه دور (Upload)
روش معمولی برقرای نشست • الف) در برنامه سمت مشتری ابتدا دو سوکت نوع TCP یا شماره پورت تصادفی بالای 1024 ایجاد میشود. • ب) در مرحله دوم برنامه سمت مشتری سعی میکند با استفاده از دستور connect() اتصال یکی از سوکتهای ایجاد شده را با پورت شماره21 از سرویس دهنده برقرار نماید. اگر این اتصال برقرار شود در حقیقت کانال فرمان باز شده و «پروسه PI» آماده تفسیر فرامین صادره از سمت مشتری است. • ج) برنامه سمت مشتری با فرمان "PORT x" به برنامه سمت سرویس دهنده شماره پورتسوکت دوم را اعلام مینماید و منتظر میماند.( در حقیقت برنامه مشتری روی سوکت دوم عمل listen() انجام میدهد.) • د) در ادامه برنامه سرویس دهنده سعی میکند یک اتصال TCP با شماره پورت اعلام شده از مشتری برقرار نماید. • یکی از نکات عجیب در این پروتکل آن است که سرویس دهنده FTP موظف است اقدام به برقراری یک اتصال TCP از طریق دستور connect() با برنامه مشتری نماید در صورتی که معمولاً سرویس دهندهها پذیرنده اتصال هستند نه شروع کننده البته باید توجه کرد که به هر حال اتصال اول را مشتری ایجاد کرده است. • ه) برنامه سمت مشتری اتصال TCP شروع شده از سرویس دهنده را تصدیق کرده و یک نشست FTP آغاز میشود.
در این شکل با یک مثال تعاملات فوق به تصویر کشیده شده است.
روش غیرفعال در برقراری نشست الف) در برنامه سمت مشتری ابتدا دو سوکت نوع TCP با شماره پورت تصادفی بالای 1024 ایجاد میشود. ب) برنامه سمت مشتری سعی میکند اتصال TCP یکی از سوکتهای ایجاد شده را با پورت شماره21 از سوریس دهنده برقرار نماید. با برقراری این ارتباط کانال فرمان باز شده و پروسه PI آماده تفسیر فرامین صادره از سمت مشتری خواهد شد. ج) برنامه سمت مشتری با فرمان PASV به برنامه سمت سرویس دهنده اعلام میکند که خواستار یک نشست از نوع غیرفعال است. د) برنامه سمت سرویس دهنده یک سوکت با شماره پورت تصادفی (بالای 1024) ایجاد کرده و شماره آن را به برنامه مشتری اعلام مینماید. ه) برنامه سمت مشتری اتصال سوکت دوم خود را با شماره پورت اعلام شده برقرار کرده پس از تصدیق اتصال نشست FTP آغاز میشود.
در این شکل مثالی از برقراری «نشست غیرفعال» تصویر شده است.
این فرامین برای سه دسته عملیات در نظر گرفته شدهاند:
در جداول ب و ج معانی متفاوت رقم صدگان و دهگان از کد برگشتی توسط سرویس دهنده معرفی شده است. معانی رقم سوم (یکان) از کد بازگشتی در اینجا نیامده زیرا تعداد آنها زیاد و معانی آنها در سیستمهای متفاوت با هم فرق میکنند.
برای بهرهگیری کاربر از خدمات سیستم فایل در پروتکل ftpفرامینی تعریف شدهاند که در جدول زیر آنها را معرفی کردهایم.
سرویس دهندههایFTP • بسیاری از سرویسدهندههای مدرن FTP امکانات بسیار قدرتمندی را برای مدیریت دسترسی کاربران عرضه کردهاند. از این امکانات میتوان به موارد زیر اشاره کرد: • تعیین مناطق دسترسی هر کاربر به سیستم فایل (با قدرت انتخاب و قابلیت انعطاف بسیار بالا) • تعیین مناطق آزاد برای دسترسی همگانی • تعیین مناطق ممنوعه برای حراست از بخشهای حساس و بحرانی سیستم • تعیین سهمیه دریافت هر کاربر در هر نشست برای جلوگیری از فلج شدن سرویسدهندهدرلحظات اوج مراجعه • تعیین حداکثر نرخ ارسال برای هر کاربر (تا کاربرانی که دسترسی به خطوط پر سرعت دارند سرویس دهنده را تبدیل به ملک لایملک خود نکنند و کاربران کم سرعت زیر بار بمانند!) • تعیین حداکثر دادهای که هر کاربر میتواند در یک نشست منتقل کند. • امکان تعیین جدول زمانی برای دسترسی کاربران (بصورت روزانه، هفتگی و ماهانه) • امکان پیشرفتهتر و اختیاری برای احراز هویت کاربران • امکاناتی برای رمز نگاری اطلاعات برای حفظ امنیت دادهها (برای کاربران خاص) • امکاناتی برای اعمال سیاستهای کلمه عبور • تهیه آمار گسترده از زمان و نحوه عملکرد کاربران • تهیه آمار گسترده از تلاشهایغیرموفق در دسترسی غیرمجاز به سرویس دهنده