1 / 28

فصل8

فصل8. پروتکل های لایه کاربرد: Telnet ، FTP ، TFTP ، SMTP ، POP و IMAP. پروتکل Telnet :. به طور خلاصه : پروتکلی است که می توان بوسیله آن دستوراتی روی کامپیوتر راه دور اجرا کرد0

joann
Download Presentation

فصل8

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. فصل8 • پروتکل های لایه کاربرد: • Telnet،FTP،TFTP،SMTP،POP و IMAP

  2. پروتکل Telnet: • به طورخلاصه: پروتکلی است که می توان بوسیله آن دستوراتی روی کامپیوتر راه دور اجرا کرد0 • برنامه Telnetیک ترمینال مجازی با مشخصه های ترمینال حقیقی سرویس دهنده ،بر روی ماشین کاربر شبیه سازی می نماید0 به این ترمینال شبیه سازی شده اختصارا“NVT (Network virtual terminal)گفته می شود0 • برنامه telnetفرامین صادر شده از کاربر را دریافت وآنرا به نحو مناسبی به سمت کامپیوتر راه دور هدایت می کند،پس از تفسیر واجرای دستور نتیجه را به برنامه telnetکامپیوتر کاربر باز می گرداند.

  3. نشست Telnet: • منظور از یک «نشست Telnet»برقراری موفق یک اتصال TCPبا پورت 23از ماشین سرویس دهنده است به گونه ای که ماشین سرویس دهنده ضمن پذیرش این اتصال و احراز هویت کاربر آماده پذیرش فرمانهای صادره از کاربر و اجرای آنها شود0

  4. برنامهTelnetدردوقسمت سازماندهی میشود: • پروسه سرویس دهندهTelnet:این برنامه بر روی کامپیوتر سرویس دهنده نصب و اجرا می شود،موظف است تقاضاهای ورودی برای برقراری یک نشست را بپذیرد و به برنامه مشتری سرویس بدهد.این برنامه در محیط یونیکس به نامtelnetd :(telnet deamon) شناخته می شود0 • پروسه مشتریTelnet:این برنامه بر روی کامپیوتر کاربران نصب می شودو منطبق بر سخت افزار و سیستم عامل ماشین کاربر است.وظیفه دارد مراحل یک یک نشست را برقرار کند ویک ترمینال مجازی به گونه ای شبیه سازی نماید که فرامین صادره از کاربر منطبق و سازگار با ماشین سرویس دهنده باشد0این برنامه بطورعامtelnetنامیده شده است0

  5. جریان عبور داده ها بین پروسه های مبدأومقصد در telnet: terminal telnet telnetd Application Client Machine Terminal driver Tcp Server Machine Tcp Pscudo TTY internet

  6. سیستم عامل مبتنی بر پنجره: • کاربر بجای صدور فرامین در خط فرمان، در یک محیط گرافیکی(شامل پنجره،منو،آیکون و نظایر آن) ازسیستم سرویس دریافت نماید. • شرایط برقراری ارتباط با یک سیستم عامل مبتنی بر پنجره: • باید سرویس دهنده مورد نظر کاربر چنین سرویسی را فراهم آورده باشد0 • برنامه telnetبر روی ماشین کاربر باید چنین قابلیتی را داشته باشد0 • طرفین بر روی پارامترهای استاندارد توافق کنندتا بتوانند فرامین مربوط با پنجره را تحلیل کرده وخروجی لازم را نشان بدهد0

  7. اجرای برنامه telnet در خط فرمان: • در این حالت باید ابتدا اسم برنامه ونام ماشین سرویس دهنده نوشته شود،در غیر این صورت برنامه منتظر می ماند تا فرامین داخلی telnetرا اجرا نمایید0 Merlin>telnet tpci_hpws4 Trying……………………….. Connected to tpci_hpws4. Escape character is ‘^]’. HP_UX tpci_hpws4 A.09.01 A9000/720(ttys2) Login:tparker password:********

  8. تذکر: • با فشاردادن کلیدهایctrl+] برنامه به حالت «فرامینکاربری» رفته و هر فرمانی که صادر می شود به جای ارسال به سرویس دهنده به صورت محلی و توسط برنامه telnet تحلیل خواهد شد0 • برای ختم یک نشست telnetاز کلیدهای ctrl+Dاستفاده می شود و معادل با عمل خروج از سیستم یاlogoutاست0 • Ttys2:قراردادی برای نحوه مبادله متنی کاربر و ماشین راه دور است0 (Text teletype simulation)

  9. فرامین Telnet: • فرامین استاندارد جهت محاوره(مشهور به فرامین داخلی): این فرمین دارای قالب استاندارد و جهانی هستند،بین سرویس دهنده telnetدر ماشین راه دور وبرنامه مشتری مبادله می شود،کاربر دخالتی در مبادله ای فرامین ندارد و فقط می تواند مبادله آنها را ببیند،ای فرامین در پروتکل telnetاستانداردسازی شده است0 • فرامین کاربری:این فرامین یکسری از دستورات کاربری در محیط telnetهستندو با صدور آنها کاربر می تواند با برنامه telnetدر ماشین خود محاوره داشته باشدوحالات مختلف ترمینال خود را تنظیم نماید.

  10. کد ممیزه فرمان: • برای تمایز بین داده ها و فرامین تعریف شده است و به گونه ای است که درون متن داده ها پیدا نمی شود. • هر فرمان ابتدا با کاراکتر کد 255(Escape code)شروع وسپس کد فرمان ونهایتا”در صورت لزوم کد انتخاب قرار می گیرد0 • هر فرمان جمعا”سه بایت است که مقادیر عددی هر یک از آنها برای طرف مقابل ارسال می شود.«کد انتخاب می تواند در برخی از فرامین وجود نداشته باشد»0 • قالب فرامین استاندارد درtelnet: IAC COMMAND CODEOPTION CODE

  11. Will،Won’t،Do،Don’t:اصلی ترین کدهای فرمان • این 4 کد برای توافق و هماهنگی سرویس دهنده و برنامه telnetروی ماشین محلی کاربرد دارند. • Willبا کد251:با این کد یکی از طرفین می تواند عملی را به طرف مقابل تقاضا بدهد. • Won’tبا کد252:با این کد یکی از طرفین تقاضای عدم انجام یا لغو عمل را می نماید • Do:به معنای پذیرش تقاضای داده شده یا اعلام یک عمل انجام شده می باشد0 • Don’t:به معنای عدم پذیرش تقاضای داده شده یا اعلام لغو یک عمل می باشد0

  12. (killprocess)Interrupt process:تقاضای قطع دائم یا موقت(تعلیق)آن0 • Abort Output(Ao):تقاضای اجرا پروسه تا تکمیل نهایی بدون ارسال خروجی آن برای ترمینال0 • Break(BRK): تقاضای قطع برنامه،(معادل Ctrl+Break) • Are you There(AYT) :پرس وجو در خصوص آنکه طرف مقابل هنوز فعالست یا نشست را ترک کرده است0 • Erase Line(EL):تقاضای حذف آخرین سطر از بافر طرف مقابل0 • Erase Character(EC): تقاضای حذف آخرین کاراکتر از بافر طرف مقابل0 • RCVD Will Echo : ازطرف مقابل دریافت شد. Echo تقاضای فعال شدن حالت

  13. TN3270: • سرویس دهنده TELNETبا قابلیت تغییر مجموعه کد با نام TN3270ارائه شده است0 • عدد3270اشاره به الگویی برای کدگذاری استریمهای داده دارد که با نام 3270 SNA Data StreamتوسطIBM از قبل برای شبکه SNAاستانداردسازی شده بود0 • TN3270پروتکلی است که برای انتقال استریمهای 3270بر روی شبکه TCP/IPتدوین وپیاده سازی شده است0 • درTN3270برخلاف telnet(که داده ها را بهصورت خط به خط ارسال میکند ) استریمهای داده پس از کدگذاری بصورت بلوکی ارسال می شوند0

  14. پروتکل انتقال فایل (FTP) • ابزاریست مطمئن برای انتقال فایل بین کامپیوترهایی که به شبکه اینترنت متصل هستند0 • خدماتی که پروتکل FTP ارائه می دهد: • تهیه لیستی ازفایل های موجود ازسیستم فایل کامپیوتر راه دور0 • حذف،تغییر نام وجابجا کردن فایل های کامپیوتر راه دور0 • جستجو در شاخه های (دایرکتوریهای)کامپیوتر راه دور0 • ایجاد یا حذف شاخه روی کامپیوتر راه دور0 • انتقال از کامپیوتر راه دور به کامپیوتر میزبان(Download) • انتقال فایل وذخیره ان از کامپیوتر میزبان به کامپیتر راه دور(upload)

  15. ارتباط بین سرویس دهنده ومشتری FTP: • در پروتکل FTPبرای شروع یک نشست باید دواتصال(کانال ( همزمان از نوع TCPبرقرار شود: • کانالداده:یک اتصال با پورت شماره 20از سرویس دهنده که روی آن داده ها مبادله می شوند0 • کانال فرمان:یک اتصال TCPبا پورت شماره 21که روی آن فرامین لازم برای مدیریت فایلها رد وبدل می شوند0 • در پروتکل ftpهمه عملیات انتقال فایل در «پیش زمینه»foregroundانجام می شود. • پروسه مفسرپروتکل(PI):وظیفه مدیریت ارتباط روی کانال فرمان را به عهده دارد0همیشه به پورت شماره 21 گوش می دهد. • پروسه انتقال داده(DTP):وظیفه مدیریت انتقال داده ها را بر عهده دارد0همیشه به پورت شماره 20 گوش می دهد.

  16. روشهای برقراری یک نشست FTP: • روش معمولی(Normal Mode): • در برنامه سمت مشتری ابتدا دو سوکت نوع TCPبا شماره پورت تصادفی بالای 1024 ایجاد می شود. • برنامه سمت مشتری با استفاده از دستور(Connect)سعی دارد تا اتصال یکی از سوکت های ایجاد شده را با پورت 21از سرویس دهنده برقرار نماید0 • برنامه سمت مشتری با فرمان «PORT X»،به برنامه سمت سرویس دهنده شماره پورت سوکت دوم را اعلام مینماید، (برنامه مشتری روی سوکت دوم عمل listen()انجام میدهد0) • سرویس دهنده سعی در برقراری یک اتصال TCPبا شماره پورت اعلام شده از مشتری را دارد0 • برنامه سمت مشتری اتصال TCP شروع شده از سرویس دهنده را تصدیق کرده و یک نشست FTPآغاز می شود0

  17. روش غیر فعال در برقراری نشست: • در برنامه سمت مشتری دو سوکت نوع TCPبا شماره پورت تصادفی بالای 1024ایجاد می شود0 • برنامه سمت مشتری اتصال TCP یکی از سوکت های اجرا شده را با پورت شماره 21از سرویس دهنئه برقرار مینماید0 • برنامه سمت مشتری با فرمان PASVبه برنامه سمت سرویس دهنده اعلام می کند که خواستار نشست از نوع غیر فعال است. • برنامه سمت سرویس دهنده یک سوکت با شماره پورت تصادفی ایجاد کرده و شماره آن را به ماشین مشتری اعلام مینماید. • برنامه سمت مشتری اتصال سوکت دوم خودرا با شماره پورت اعلام شده برقرار کرده ،پس از تصدیق اتصال نشستFTP آغاز می شود.

  18. فرامین FTP: • فرامین داخلی FTP: فرامین داخلی FTP تماما’’ حالت متنی داشته و حداکثر 4حرفی هستند. • برخی از فرامین دارای پارامتر هستندکه این پارامترها نیز به صورت متنی پس از یک فاصله خالی در ادامه فرمان قرار می گیرند. • خاتمه هر فرمان و آرگومانهایش با جفت کد \r(معادل با کد carriage return) و \n (معادل با کد new line)مشخص می شود. • PASV\r\n:یک فرمان معتبر ftp

  19. مجموعه فرامین ftpبرای سه دسته عملیات در نظر گرفته شده اند: • فرایندبرقراری و ختم یک نشست ftp(مثل فرمان PASV،PORT،QUIT) • ارسال کلمه عبور جهت تعیین جواز وسطح سرویس دهی • فرامین مربوط به انتقال فایل،فهرست گیری از شاخه ها و فایل ها وعملیات مدیریت فایل. در پاسخ به هر فرمان صادره یک کد سه رقمی بر میگردد.برنامه سمت مشتری با پردازش این کد می توانددر مورد عمل بعدی خود تصمیم بگیرد. در پروتکل ftpانتقال فایل در چند حالت متاوت انجام می شود. : حالت متنی و روش دودویی

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

  21. عمل Login: • در صورت برقراری ارتباط بین برنامه کاربر وسرویس دهنده ftpباید اعتبار کاربر برای سرویس دهنده مشخص شود،هنگامی که که کاربر معتبر شناخته شدید به شما اجازه ورود به سیستم ftpداده خواهد شد به این عمل اصطلاحا’’loginگفته می شود. • پروسه ای که اعتبار کاربران را از لحاظ مجوز عبور و سطح دسترسی ،کنترل مینماید«پروسه ورود »(login processنامیده می شود.) • تذکر:با اضافه کردن گزینه d-در هنگام فراخوانی و اجرای برنامه ftpمی توان عمل اشکال زدایی انجام داد. با این گزینه تمام فرامینی داخلی که بین برنامه ftp وسرویس دهنده مبادله می شوندقابل مشاهده خواهند بود.

  22. فرایند برقراری یک نشست ftpاز دیدگاه کاربر: • Login:تعیین شناسه کاربری وکلمه عبور و تایید آنها توسط سرویس دهنده. • Define directory:تعیین شاخه ای که پس از برقراری ارتباط به صورت پیش فرض برای شروع عملیات کاربر در نظر گرفته می شود. • Define file transfer mode:تعیین روش انتقال(متنی یا دودویی). • Start data transfer:امکان صدور فرمان و انتقال فایل را برای کاربر فراهم می آورد. • Stop data transfer:ارتباط را خاتمه می دهد.

  23. انتقال با واسطه در پروتکل FTP: • FTP این امکان را فراهم می سازد که نظارت بر انتقال فایلها از طریق ماشین سومی که بین برنامه مشتری و سرویس دهنده قرار گرفته است ،انجام شود.ای رویه به عنوان «انتقال با واسطه» (THIRD PARTY TRANSFER)شناخته شده است وصدور مجوز دسترسی به سیستم فایل موجود در ماشین سرویس دهنده و نظارت بر فرامین صادره از طریق این ماشین انجام میگیرد. • استفاده از یک سیستم واسطه سرعت انتقال را افزایش می دهد.

  24. دسترسی بی نام به FTP: • روش راحت تری برای ایجاد دسترسی عمومی به یک مجموعه فایل یا دایرکتوری وجود دارد که «FTPبی نام »خوانده می شود. • با FTP بی نام دیگر نیازی به داشتن مجوز روی یک ماشین نیست.FTP این کار را با فعال کردن حالت «ورود بی نام»توسط یک کلمه عبور بنام «مهمان یاGUEST»یا کلمه عبور پوچ (یک رشته خالی انجام می دهد.)

  25. سرویس دهنده های FTP: • بسیاری از ماشینهای unixبصورت پیش فرض به عنوان سرویس دهنده ftp عمل می کنند. • برای ارائه امکانات سرویس دهنده ftp،باید هنگام بوت شدن سیستم عامل ،ftp daemonاجرا شده باشد.

  26. دسترسی به سرویس FTPتوسط تعریف فهرست کاربران که در بسته FTP SERVERقرار دارد کنترل می شود ومی توان با رجوع به منوی userکاربران را تعریف و مجوزهای دسترسی آنها به سیستم فایل را تنظیم کرد.

More Related