عمومی

IMAP Protocol

Imap  چیست ؟

پروتکل IMAP یکی از پروتکل های نسبتا جدید مورد استفاده در محیط وب (اینترنت ) است . از این پروتکل برای انتقال و ارتباطات ایمیل  در وب بهره می گیرند . بطور مثال سرویس های صندوق پست الکترونیکی و یا وب سایت های جدید که امروزه فایلهای صوتی و تصویری در آن ها بصورت آنلاین Online مورد استفاده قرار می گیرند از این پروتکل بهره گرفته اند.

پروتکل IMAP در لایه کاربردی و  بر روی پورت شماره ی  ۱۴۳ قرار دارد وبه سرویس گیرنده ها اجازه دسترسی به ایمیل بر روی سرویس دهنده از طریق کنترل از راه دور را فراهم می کند. .

نسخه اصلی IMAP

نسخه اصلی imap به نام پروتکل دسترسی به میل به طور موقت بود که به عنوان سرویس گیرنده xerox lips machine و سرویس دهنده tops-۲۰ تکمیل شد . هیچ کپی از نسخه اول پروتکل دسترسی موقت وجود ندارد و تنظیمات پروتکل نسخه اصلی به imap۲ برگردانده شده است، اگر چه بعضی از فرمان ها وجواب ها شبیه به imap۲ است . اما پروتکل دسترسی موقت فاقد فرمان ها وپاسخ ها است اما با این حال با ترکیب این فرمان ها وعلامت ها باعث ایجاد یک نسخه از imap شده است که سازگار با تمام نسخه های imap می باشد .

معایب پروتکل IMAP

یک سری نقاط ضعف در این پروتکل وجود دارد که باعث افزایش پیچیدگی می شود مثلا دسترسی همزمان چند سرویس گیرنده به یک mail box که این کار توسط سرویس دهنده جانبی مانند ( maildir ، database ) صورت می گیرد و باعث رفع و تصحیح ضعف می شود . اما در این حالت لازم است که الگوریتم جستجو و ذخیره یک میل بر روی سرویس دهنده با دقت کافی صورت گیرد که سرویس گیرنده نهائی می تواند تعداد زیادی از منابع را در زمان جستجوی mail box معرفی کند . سرویس گیرنده imap برای دسترسی به محتوای پیام جدید می باید در خواستی را اعلام کنند که این کار باعث افزایش تاخیر در یک ارتباط کند مانند موبایل می شود، که برای رفع آن از طرحی به نام push imap را پیشنهاد شد که این طرح به طور کلی مورد تائید قرار نگرفت . بر خلاف بعضی از پروتکل های اختصاصی که عمل ارسال و بازیابی را به صورت ترکیبی انجام می دادند . ارسال یک پیام و ذخیره ی یک  کپی از آن بر روی پوشه ای در سرویس دهنده های جانبی ( server – side ) باعث می شود که سرویس گیرنده برای انتقال محتوای پیام دو بار درخواست دهد اولی برای smtp ودومی را برای imap جهت ذ خیره و ارسال به پوشه میل .  این مشکل با یک سری تنظیمات مورد تائید ietf lemonade در مورد قطعات موبایل ( urlauth ( rfc-۴۴۶۷ ) ، catenate ( rfc۴۴۶۹، در ( imap burl ( rfc۴۴۶۸ در smtp-submission رفع شده است . سرویس دهنده های pop۳ پوشه های سرویس دهندهای جانبی را حمایت نمی کنند بنابراین این سرویس گیرنده هاحق انتخاب ندارند اما می توانند موارد ارسال شده را بر روی سرویس گیرنده ذخیره کند . خیلی از سرویس گیرنده های imap می توانند پوشه های سرویس گیرنده جانبی را برای ذخیره میل های ارسال شده قالب بندی کنند . در آخر ( lemonade trio ) ماهواره مخابراتی سرویس گیرنده میل است  که کپی فایل های ارسال شده را در یک پوشه و تحت نام out box ذخیره می کند .

ویژگی های IMAP

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

تفاوت POP3 و IMAP :

تفاوت POP3 و IMAP در نوع ارتباط با سرور است. در POP3، کلاینت ایمیل های جدید را بر روی کامپیوتر دانلود می کند و کاربر می تواند بدون ارتباط مستقیم با سرور، ایمیل ها را مطالعه کند؛ اما در IMAP ارتباط با سرور به صورت مستقیم است و ایمیل ها، به صورت بی درنگ به کلاینت سرازیر می شوند. همچنین اگر ایمیلی در کلاینت خوانده شود، در صورت برقراری ارتباط با استفاده از IMAP، ایمیل مربوطه در وب میل و سایر کلاینت هایی که به آن آدرس ایمیل دسترسی دارند، «خوانده شده» می شود. قابلیت همزمان سازی در IMAP برای کاربرانی که از چند کامپیوتر استفاده می کنند، بسیار کاربردی است و این قابلیت در POP3 وجود ندارد. البته برخی از ISPها به خوبی از IMAP پشتیبانی نمی کنند.

 کار با IMAPدر کلاینتها

علاوه بر وب میل که راهی برای دسترسی به صندوق پست الکترونیکی است، استفاده از POP3 و IMAP نیز برای برقراری ارتباط با صندوق پست الکترونیکی و دریافت و ارسال ایمیل شایع است. برای استفاده از این دو پروتکل کلاینت هایی همچون Outlook و Thunderbird و… مورد استفاده قرار می گیرند.
کلاینتی را انتخاب کنید که در کنار امنیت و قابلیت های مفید، کار با آن راحت بوده و در دسترس باشد. در صورتی که می خواهید برای چک کردن ایمیل از کلاینت استفاده کنید، می توانید از نرم افزار outlook  استفاده نمایید . همچنین برنامه ی  تاندربرد نیز انتخاب مناسبی است..
جهت انجام تنظیمات مربوط به کلاینت  Outlook می توانید به لینک زیر مراجعه نمایید :

http://support.iranhost.com/KB/a22/microsoft-outlook-2002.aspx

برنامه ی Thunderbird :

این نرم افزار محصولی از شرکت موزیلا است و با قابلیت های بالا و افزونه های امنیتی متعدد، امنیت ایمیل شما را همانند وب میل تضمین می کند. افزونه های EnigMail و GnuPG برای افزایش ضریب امنیتی و بالابردن امنیت حریم ایمیل شما به هنگام استفاده از تاندربرد، توصیه می شوند

این نرم افزار قدرتمند که از پروتکل های مختلف و رایج استفاده می کند قادر است به سادگی خود را با Gmail که سرویس پیام رسان شرکت گوگل می باشد هماهنگ سازد اما برای هماهنگ سازی با سرویس یاهو میل احتیاج به نرم افزارهای جانبی هم می باشد. البته این بخش کوچکی از قابلیت های این ابزار به شمار می رود چراکه بسیاری از مدیران سایت ها به دلیل داشتن ایمیل های اختصاصی که معمولا به دامین ها متصل است بهترین راهکار را استفاده از نرم افزارهایی این چنینی می بینند تا بتوانند هرچه بهتر مدیریت پست های الکترونیکی خود را امکان پذیر سازند. امنیت بالا، سرعت فوق العاده در برقراری ارتباط، استفاده از قابلیت Tab Browsing، امکان مدیریت چندین ایمیل به صورت همزمان و واسط کاربری جذاب مهم ترین نکاتی هستند که در نرم افزار Mozilla Thunderbird به وضوح به چشم می خورند.

قابلیت های کلیدی نرم افزار Mozilla Thunderbird v10.0:
– پشتیبانی از‌RSS و گروه‌های خبری و امکان ایجاد حساب برای این گروه‌ها
– سازگاری با بسته های امنیتی رایج موجود برای چک کردن فایل های مخرب
– وجود قابلیت Tab Browsing امکان استفاده همزمان از چندین ایمیل
– قابلیت شناسایی و مبارزه باJunkMail ها جهت جلوگیری از ورود هرزنامه‌ها و ایمیل‌های تبلیفاتی
– ساخت آسان اکانت ها در نرم افزار تنها با وارد کردن نام کاربری و کلمه‌ی عبور
– پشتیبانی از امکاناتی همچون امضای دیجیتال و رمزنگاری داده‌ها در ارسال و دریافت نامه‌ها
– حجم مناسب نسبت به قابلیت ها و نرم افزارهای مشابه
– آرشیو کامل از پیام ها و قابلیت دسته بندی ایمیلها
– امنیت بالا در پست های الکترونیکی
– سازگاری با اکثر پروتکل های رایج
– امکان ارسال فایل به آسانی
– سهولت در استفاده از نرم افزار
– دارای افزونه‌های بسیار مفید و کاربردی
– پشتیبانی از ایمیل‌های با فرمت HTML
– پشتیبانی کامل از زبان فارسی
– سازگار با نسخه های مختلف ویندوز از جمله ویندوز ۷

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

در فرمان های مربوط به IMAP ، فرمت ها به شکل زیر تنظیم می شوند  :

(فرمان ها به حروف بزرگ و کوچک حساس نیستند)

آدرس میل سرور به شکل ، mail.yourdomainname فرض شده است.

اتصال به هاست :

بعد از ورود به خط فرمان (CMD ) دستور زیر را تایپ نمایید :

telnet mail.yuordomainname  ۱۴۳

خروجی چیزی مانند شکل زیر است :

telnet mail.myserver.com 143

Trying 66.111.4.160…

Connected to mail.myserver.com (66.111.4.160).

Escape character is ‘^]’.

* OK IMAP4 ready

بعد از اتصال فرمان login  را مانند شکل زیر تایپ نمایید .

login accountname@myserver.com *********
. OK User logged in

برای مشاهده ی میل باکس ها در سرور از فرمان List استفاده می شود، مانند شکل زیر :

list "" "*"
* LIST (HasChildren) "." "INBOX"
* LIST (HasNoChildren) "." "INBOX.Drafts"
* LIST (HasNoChildren) "." "INBOX.Sent Items"
* LIST (HasNoChildren) "." "INBOX.Trash"
* LIST (HasNoChildren) "." "INBOX.test1"
* LIST (HasNoChildren) "." "INBOX.test2"
. OK Completed (0.460 secs 7 calls)

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

فرمان status :

این فرمان اطلاعات پایه ای بر روی فلدر را نشان می دهد مثالا کل پیامها ، پیام های اخیر و پیام های مشاهده نشده را نشان می دهد :

. status INBOX (messages)
* STATUS INBOX (MESSAGES 2)
. OK Completed
. status INBOX (recent)
* STATUS INBOX (RECENT 0)
. OK Completed
. status INBOX (unseen)
* STATUS INBOX (UNSEEN 0)
. OK Completed

فرمانهای select,examine :

عملکرد این دو فرمان مشابه می باشدو اطلاعات فلدر انتخاب شده را بر می گردانند و به ما اجازه ی دسترسی به ایمیلهای موجود در فلدر را می دهد. تفاوت اصلی در آن است که فرمان examine دارای مجور read و فرمان select دارای هر دو مجوز read,write می باشد.

examine INBOX.test2
* FLAGS (Answered Flagged Draft Deleted Seen)
* OK [PERMANENTFLAGS ()]
* ۰ EXISTS
* ۰ RECENT
* OK [UIDVALIDITY 1138801117]
* OK [UIDNEXT 1]
. OK [READ-ONLY] Completed
. select INBOX.test2
* FLAGS (Answered Flagged Draft Deleted Seen)
* OK [PERMANENTFLAGS (Answered Flagged Draft Deleted Seen *)]
* ۰ EXISTS
* ۰ RECENT
* OK [UIDVALIDITY 1138801117]
* OK [UIDNEXT 1]
. OK [READ-WRITE] Completed

خط exist نشان دهنده ی تعداد ایمیل های موجود در فلدر است RECENT تعداد ایمیل های اخیر را نشان داده و SELECT  پرچم مربوط به فرمان recent را حذف نمی کند.

ایجاد ، حذف و تغییر نام فلدرها :

فرمان CREATE به شکل زیر پیاده سازی می شود :

create INBOX.test3
. OK Completed
. list "" "*"
* LIST (HasChildren) "." "INBOX"
* LIST (HasNoChildren) "." "INBOX.Drafts"
* LIST (HasNoChildren) "." "INBOX.Sent Items"
* LIST (HasNoChildren) "." "INBOX.Trash"
* LIST (HasNoChildren) "." "INBOX.test1"
* LIST (HasNoChildren) "." "INBOX.test2"
* LIST (HasNoChildren) "." "INBOX.test3" #we created this
. OK Completed (0.420 secs 8 calls)

نحوه ی اجرای فرمان DELETE :

. delete INBOX.test3
. OK Completed
. list "" "*"
* LIST (HasChildren) "." "INBOX"
* LIST (HasNoChildren) "." "INBOX.Drafts"
* LIST (HasNoChildren) "." "INBOX.Sent Items"
* LIST (HasNoChildren) "." "INBOX.Trash"
* LIST (HasNoChildren) "." "INBOX.test1"
* LIST (HasNoChildren) "." "INBOX.test2"
. OK Completed (0.430 secs 7 calls)

فرمان RENAME به شکل زیر استفاده می شود :

. rename INBOX.test1 INBOX.test3
* OK rename user.accountname.test1 user.accountname.test3
. OK Completed
. list "" "*"
* LIST (HasChildren) "." "INBOX"
* LIST (HasNoChildren) "." "INBOX.Drafts"
* LIST (HasNoChildren) "." "INBOX.Sent Items"
* LIST (HasNoChildren) "." "INBOX.Trash"
* LIST (HasNoChildren) "." "INBOX.linux" #this was test1
* LIST (HasNoChildren) "." "INBOX.test2"
. OK Completed (0.410 secs 7 calls)

فرمان FETCH  اطلاعاتی در مورد ایمیل بازمی گرداند مثلا جهت مشاهده ی عنوان ایمیل ها این دستور را به فرمت زیر می نویسیم :

. fetch 1 (body[header.fields (from to subject date)])
* ۱ FETCH (BODY[HEADER.FIELDS (from to subject date)] {195}
Date: Wed, 1 Feb 2006 13:37:19 UT
From: "Email Administrator" <bounce@myserver.com>
To: "Joe Bloggs" <accountname@myserver.co>
Subject: IMPORTANT: Click here to begin using your account
)
. OK Completed (0.000 sec)

جهت خواندن بدنه ی ایمیل دستور مربوطه را به شکل زیر می نویسیم :

. fetch 2 rfc822.text
* ۲ FETCH (RFC822.TEXT {11658}
This is a multi-part message in MIME format.
--_----------=_۱۱۳۸۸۶۵۵۶۰۲۲۳۹۵۰
Content-Disposition: inline
Content-Length: 5194
Content-Transfer-Encoding: binary
Content-Type: text/plain
more text here.............
. OK Completed (0.000 sec)

فرمان Store :

جهت اضافه یا حذف کردن فلاگ های IMAP بر روی پیام ها استفاده می کنیم. فلاگها وضعیت ایمیل را مشخص کرده و پیام ها را به شکل replied to,deleted,seen را نشان می دهند

فرمانهای Close,Expunge :

پیام ها در فلدر جاری را به طور دائمی حذف می کند. توسط فرمان EXPUNGE فقط پیام ها را حذف می کند، ولی فرمان CLOSE علاوه بر حذف پیام ها فلدر جاری را نیز غیر فعال می کند.

. expunge
* ۱ EXPUNGE
* ۱ EXPUNGE
* ۰ EXISTS
* ۰ RECENT
. OK Completed

فرمان Logout :

جهت خروج از سرور از این فرمان استفاده می شود.

. logout
* BYE LOGOUT received
. OK Completed

منبع : plugsocket.com و http://bobpeers.com/technical/telnet_imap

به این نوشته امتیاز دهید
[Total: 0 Average: 0]

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

همین حالا رایگان عضو شوید

مدیر بلاگ

مشخصات مدیر

نوشته های مشابه

‫۲ نظرها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن
بستن