Протоколи поштового зв'язку аналіз порівняння. Протоколи електронної пошти: SMTP, POP, IMAP. Протоколи електронної пошти: IMAP, POP3, SMTP та HTTP

Протокол SMTP

SMTP(англ. Simple Mail Transfer Protocol-- простий протокол передачі пошти) -- це мережевий протокол, призначений передачі електронної пошти у мережах TCP/IP.

SMTP використовується для надсилання пошти від користувачів до серверів та між серверами для подальшого пересилання до одержувача. Для отримання пошти поштовий клієнт повинен використовувати протоколи POP3 або IMAP.

Дані передаються за допомогою TCP, при цьому зазвичай використовується порт 25 або 587. При надсиланні повідомлень між серверами зазвичай використовується порт 25.

Щоб доставити повідомлення до адресата, необхідно надіслати його поштовому серверу домену, в якому знаходиться адресат. Для цього зазвичай використовується запис типу MX (англ. Mail eXchange- Обмін поштою) системи DNS. Якщо MX запис відсутній, то для тих же цілей може бути використаний запис типу A. Деякі сучасні реалізації SMTP-серверів (наприклад, Exim) для визначення сервера, що обслуговує пошту в домені адресата, також можуть задіяти запис SRV (RFC 2782).

Сервер SMTP- Це кінцевий автомат із внутрішнім станом. Клієнт передає на сервер рядок команда<пробел>параметри<перевод строки>. Сервер відповідає на кожну команду рядком, що містить код відповіді та текстове повідомлення, відокремлене пробілом. Код відповіді - число від 100 до 999, подане у вигляді рядка, що трактується так:

  • · 2ХХ - команда успішно виконана
  • · 3XX - очікуються додаткові дані від клієнта
  • · 4ХХ - тимчасова помилка, клієнт повинен зробити наступну спробу через деякий час
  • · 5ХХ - непереборна помилка

Текстова частина відповіді має довідковий характер і призначений для людини, а не програми.

Безпека SMTP та спам

Спочатку SMTP не підтримував єдину схему авторизації. Внаслідок цього спам став практично нерозв'язною проблемою, оскільки неможливо було визначити, хто насправді є відправником повідомлення - фактично можна відправити лист від імені будь-якої людини. В даний час робляться спроби вирішити цю проблему за допомогою специфікацій SPF, Sender ID, Yahoo Domain Keys. Єдиної специфікації зараз не існує.

Протокол POP3

POP3(англ. Post Office Protocol Version 3-- протокол поштового відділення, версія 3) -- це мережевий протокол, що використовується отримання повідомлень електронної пошти з сервера. Зазвичай використовується у парі з протоколом SMTP.

Мал. 10. Схема "Клієнт-сервер за протоколом POP3"

Опис протоколу РОРЗ

Розглянемо подану на Мал. 10. схему "Клієнт-сервер за протоколом POP3". Конструкція протоколу РОРЗ забезпечує можливість користувачеві звернутися до свого поштового сервера і вилучити пошту, що накопичилася для нього. Користувач може отримати доступ до сервера РОР з будь-якої точки доступу до Інтернету. При цьому він повинен запустити спеціальний поштовий агент (UA), який працює за протоколом РОРЗ, та налаштувати його для роботи зі своїм поштовим сервером. Отже, на чолі моделі POP знаходиться окремий персональний комп'ютер, що працює виключно клієнтом поштової системи (сервера). Підкреслимо також, що повідомлення доставляються клієнту за протоколом POP, а надсилаються, як і раніше, за допомогою SMTP. Тобто на комп'ютері користувача існують два окремі агенти-інтерфейси до поштової системи – доставки (POP) та відправки (SMTP). Розробники протоколу РОРЗ називає таку ситуацію "роздільні агенти" (split UA). Концепція окремих агентів коротко обговорюється у специфікації РОРЗ.

У протоколі РОРЗ обумовлено три стадії процесу отримання пошти: авторизація, транзакція та оновлення. Після того, як сервер та клієнт РОРЗ встановили з'єднання, починається стадія авторизації. На стадії авторизації клієнт ідентифікує себе сервера. Якщо авторизація пройшла успішно, сервер відкриває поштову скриньку клієнта та починається стадія транзакції. У ній клієнт запитує у сервера інформацію (наприклад, список поштових повідомлень), або просить його зробити певну дію (наприклад, видати поштове повідомлення). Зрештою, на стадії оновлення сеанс зв'язку закінчується. Далі перераховані команди протоколу РОРЗ, обов'язкові для реалізації реалізації реалізації мінімальної конфігурації.

Команди протоколу POP версії 3 (для мінімальної конфігурації)

USER Ідентифікує користувача із зазначеним ім'ям

PASS Вказує пароль для пари клієнт-сервер

QUIT Закриває TCP-з'єднання

STAT Сервер повертає кількість повідомлень у поштовій скриньці плюс розмір поштової скриньки

LIST Сервер повертає ідентифікатор повідомлень разом із розмірами повідомлень (параметром команди може бути ідентифікатор повідомлення)

RETR Виймає повідомлення з поштової скриньки (потрібно вказувати аргумент-ідентифікатор повідомлення)

DELE Відзначає повідомлення для видалення (потрібен вказувати аргумент - ідентифікатор повідомлення)

NOOP Сервер повертає позитивну відповідь, але не здійснює жодних дій

LAST Сервер повертає найбільший номер повідомлення із тих, до яких раніше вже зверталися

RSET Скасує видалення повідомлення, позначеного раніше командою DELE

У протоколі РОРЗ визначено кілька команд, але на них дається лише дві відповіді: +ОК (позитивний, аналогічний до повідомлення-підтвердження АСK) і -ERR (негативний, аналогічний до повідомлення "не підтверджено" NAK). Обидві відповіді підтверджують, що звернення до сервера відбулося і він взагалі відповідає на команди. Як правило, за кожною відповіддю слідує його змістовний словесний опис. У RFC 1225 є зразки кількох типових сеансів РОРЗ. Зараз ми розглянемо кілька з них, що дасть змогу вловити послідовність команд в обміні між сервером та клієнтом.

Після того, як програма встановила TCP-з'єднання з портом протоколу РОРЗ (офіційний номер 110), необхідно надіслати команду USER з ім'ям користувача як параметр. Якщо відповідь сервера буде +ОК, потрібно надіслати команду PASS із паролем цього користувача:

CLIENT: USER kcope ERVER: +ОК CLIENT: PASS secret SERVER: +ОК kcope"s maildrop має 2 messages (320 octets) (У поштовій скриньці kcope є 2 повідомлення (320 байтів) ...)

Транзакції РОРЗ

Команда STAT повертає кількість повідомлень та кількість байтів у повідомленнях:

SERVER: +ОК 2320

Команда LIST (без параметра) повертає список повідомлень у поштовій скриньці та їх розміри:

Команда NOOP не повертає жодної корисної інформації, за винятком позитивної відповіді сервера. Однак позитивна відповідь означає, що сервер перебуває в з'єднанні з клієнтом і чекає на запити:

Наступні приклади показують, як POP3 виконує дії. Наприклад, команда RETR отримує повідомлення із зазначеним номером і поміщає його в буфер місцевого UA:

CLIENT: RETR 1 SERVER: +OK 120 octets SERVER: (РОРЗ-сервер надсилає повідомлення повністю) SERVER: . . . . . .

Команда DELE зазначає повідомлення, яке потрібно видалити:

SERVER: +OK message 1 deleted ... (повідомлення 1 видалено) CLIENT: DELE 2 SERVER: -ERR message 2 already deleted повідомлення 2 вже видалено)

Команда RSET знімає мітки видалення з усіх зазначених раніше повідомлень:

(у поштовій скриньці 2 повідомлення (320 байтів))

Як і слід очікувати, команда QUIT закриває з'єднання з сервером:

CLIENT: QUIT SERVER: +OK друзів POP3 сервер сигналізації off CLIENT: QUIT SERVER: OK dewey POP3 сервер сигналізації off (maildrop empty)

Зверніть увагу на те, що зазначені для видалення повідомлення насправді не видаляються до тих пір, поки не видано команду QUIT і не почалася стадія оновлення. У будь-який момент протягом сеансу клієнт має можливість видати команду RSET, і всі відмічені повідомлення будуть відновлені.

Протокол IMAP

IMAP(англ. Internet Message Access Protocol) - Інтернет-протокол прикладного рівня для доступу до електронної пошти.

IMAP надає користувачеві багато можливостей для роботи з поштовими скриньками, що знаходяться на центральному сервері. Поштова програма, що використовує цей протокол, отримує доступ до сховища кореспонденції на сервері так, ніби ця кореспонденція розташована на комп'ютері одержувача. Електронними листами можна маніпулювати з комп'ютера користувача (клієнта) без необхідності постійного пересилання з сервера та назад файлів з повним змістом листів.

Переваги порівняно з POP

IMAP був розроблений для заміни простішого протоколу POP3 і має наступні переваги в порівнянні з останнім:

  • · Листи зберігаються на сервері, а не на клієнті. Можливий доступ до однієї поштової скриньки з різних клієнтів. Підтримується також одночаснийдоступ кількох клієнтів. У протоколі є механізми, за допомогою яких клієнт може бути поінформований про зміни, зроблені іншими клієнтами.
  • · Підтримка кількох поштових скриньок (або папок). Клієнт може створювати, видаляти та перейменовувати поштові скриньки на сервері, а також переміщувати листи з однієї поштової скриньки до іншої.
  • · Можливе створення спільних папок, до яких можуть мати доступ кілька користувачів.
  • · Інформація про стан листів зберігається на сервері та доступна всім клієнтам. Листи можуть бути позначені як прочитані, важливі тощо.
  • · Підтримка пошуку на сервері. Немає необхідності завантажувати з сервера безліч повідомлень, щоб знайти одне потрібне.
  • · Підтримка онлайн-роботи. Клієнт може підтримувати з сервером постійне з'єднання, при цьому сервер у реальному часі інформує клієнта про зміни в поштових скриньках, у тому числі про нові листи.
  • · Передбачено механізм розширення можливостей протоколу.

У цій статті розглянуто найчастіше використовувані протоколи електронної пошти в Інтернеті - POP3, IMAP та SMTP. Кожен з них має певну функцію та спосіб роботи. У змісті статті пояснюється, яка конфігурація найкраще підходить для конкретних потреб користувача під час використання e-mail-клієнта. Також розкривається відповідь на запитання про те, який протокол підтримує електронну пошту e-mail.

Що таке POP3?

Протокол третьої версії (POP3) – це стандартний поштовий протокол, який використовується для отримання електронної пошти з віддаленого сервера на локальний поштовий клієнт. Дозволяє завантажувати повідомлення на ваш локальний комп'ютер і читати їх, навіть якщо користувач перебуває в автономному режимі. Зверніть увагу, що при використанні протоколу POP3 для підключення до вашого облікового запису повідомлення завантажуються локально та видаляються з сервера електронної пошти.

За промовчанням POP3 працює на двох портах:

    порт 110 - це незашифрований порт POP3;

    порт 995 – його потрібно використовувати, якщо ви хочете безпечно підключитися до POP3.

Що таке IMAP?

Протокол доступу до Інтернет-повідомлень (IMAP) — це протокол отримання електронних листів, який використовується для доступу до неї на віддаленому веб-сервері від локального клієнта. IMAP і POP3 є двома протоколами, що найчастіше використовуються, для отримання листів і підтримуються всіма сучасними поштовими клієнтами та веб-серверами.

Протокол POP3 передбачає, що ваша адреса електронної пошти доступна лише з однієї програми, а IMAP дозволяє здійснити одночасний вхід відразу з кількох клієнтів. Ось чому IMAP підійде краще, якщо ви збираєтеся отримувати доступ до своєї електронної пошти з різних місць або якщо ваші повідомлення управляються кількома користувачами.

Протокол IMAP працює на двох портах:

    порт 143 - це незашифрований порт IMAP за промовчанням;

    порт 993 - його потрібно використовувати, якщо ви бажаєте безпечно підключитися за допомогою IMAP.

Що таке SMTP?

Протокол – це стандартний протокол для надсилання електронної пошти через Інтернет.

SMTP працює у трьох портах:

    порт 25 - це незашифрований за замовчуванням;

    порт 2525 - він відкривається на всіх серверах SiteGround, якщо порт 25 фільтрується (наприклад, вашим інтернет-провайдером), і ви хочете надсилати незашифровані електронні листи за допомогою SMTP;

    порт 465 — він використовується, якщо ви бажаєте надсилати повідомлення за допомогою SMTP.

За якими протоколами відбувається обмін електронною поштою? Поняття та терміни

Термін «сервер електронної пошти» стосується двох серверів, необхідних для надсилання та отримання листів, тобто до SMTP та POP.

Сервер вхідної пошти — це сервер, пов'язаний з обліковим записом адреси електронної пошти. Для неї не може бути більше одного вхідного поштового сервера. Для доступу до вхідних повідомлень поштовий клієнт — програма, яка може отримувати електронну пошту з облікового запису, дозволяючи користувачеві читати, пересилати, видаляти та відповідати на повідомлення. Залежно від сервера, ви можете використовувати виділений поштовий клієнт (наприклад, Outlook Express) або веб-браузер. Так, Internet Explorer застосовують для доступу до облікових записів на основі електронної пошти. Листи зберігаються на сервері вхідної пошти до завантаження. Після того, як ви завантажили свою пошту з поштового сервера, зробити повторно це буде неможливо. Щоб успішно завантажити дані, необхідно ввести правильні установки в електронній поштовій програмі. Більшість вхідних поштових серверів використовують один із таких протоколів: IMAP, POP3, HTTP.

Вихідний поштовий сервер (SMTP)

Це сервер, який використовується лише для надсилання листів (для перенесення їх з вашої поштової клієнтської програми до приймача). Більшість вихідних поштових серверів використовують Protocol для надсилання кореспонденції. Залежно від ваших мережних параметрів, сервер вихідної пошти може належати вашому інтернет-провайдеру або серверу, на якому ви налаштовуєте свій обліковий запис. В якості альтернативи ви можете використовувати SMTP-сервер на основі підписки, який дозволить вам надсилати електронні листи з будь-якого облікового запису. Через проблеми зі спамом більшість вихідних поштових серверів не дозволяють надсилати електронні листи, якщо ви не увійшли до своєї мережі. Сервер з відкритим ретранслятором дозволить вам використовувати його для надсилання електронних листів, незалежно від того, належите ви до його мережної групи чи ні.

Порти електронної пошти

Для мереж порт означає кінцеву точку логічного з'єднання. Номер порту визначає його тип. Нижче наведено стандартні порти електронної пошти:

    POP3 – порт 110;

    IMAP – порт 143;

    SMTP – порт 25;

    HTTP – порт 80;

    безпечний SMTP (SSMTP) – порт 465;

    безпечний IMAP (IMAP4-SSL) – порт 585;

    IMAP4 через SSL (IMAPS) – порт 993;

    Secure POP3 (SSL-POP) – порт 995.

Протоколи електронної пошти: IMAP, POP3, SMTP та HTTP

В основному протокол відноситься до стандартного методу, який використовується на кожному кінці каналу зв'язку. Щоб мати справу з електронною поштою, потрібно використовувати спеціальний клієнт для доступу до поштового сервера. У свою чергу, вони можуть обмінюватися інформацією один з одним, використовуючи при цьому різні протоколи.

Протокол IMAP

IMAP (протокол доступу до інтернет-повідомлень) – стандартний протокол для доступу до електронної пошти з вашого локального сервера. IMAP - це протокол типу «клієнт/сервер», в якому отримана електронна пошта, і дані зберігаються вашим інтернет-сервером. Оскільки для цього потрібно лише невелика передача даних, він добре працює навіть при повільному з'єднанні, наприклад, при підключенні за допомогою модему. При спробі прочитати конкретне повідомлення електронної пошти клієнт завантажує дані із сервера. Ви також можете створювати та керувати папками або поштовими скриньками на сервері, видаляти повідомлення.

Протокол POP3

Протокол передачі електронної пошти POP (Post Office Protocol 3) забезпечує простий, стандартизований спосіб доступу користувачів до поштових скриньок та завантаження повідомлень на комп'ютери.

При використанні POP всі повідомлення електронної пошти будуть завантажені з поштового сервера на локальний комп'ютер. Ви також можете залишити копії своїх електронних листів на сервері. Перевага полягає в тому, що після завантаження ваших повідомлень ви можете відключити інтернет-з'єднання та прочитати свій e-mail на дозвіллі, не вдаючись до додаткових витрат на зв'язок. З іншого боку, за допомогою цього протоколу ви отримуєте та завантажуєте багато небажаних повідомлень (включаючи спам чи віруси).

Протокол SMTP

Протокол використовується агентом передачі пошти (MTA) для доставки електронних повідомлень на певний сервер отримувача. SMTP можна використовувати лише для надсилання електронних листів, а не для їх отримання. Залежно від налаштувань вашої мережі або інтернет-провайдера ви можете використовувати протокол SMTP лише за певних умов.

Протоколи HTTP

HTTP не є протоколом, призначеним для зв'язку електронною поштою, але його можна використовувати для доступу до вашої поштової скриньки. Його також часто називають веб-електронною поштою. Він може використовуватися для складання або отримання електронних листів з вашого облікового запису. Hotmail - хороший приклад використання HTTP як протокол електронної пошти.

Керовані передачі файлів та мережеві рішення

Ваша здатність надсилати та отримувати електронну пошту в основному обумовлена ​​трьома протоколами TCP. Ними є SMTP, IMAP та POP3.

SMTP

Почнемо з SMTP, тому що його основна функція відрізняється від двох інших. Протокол SMTP, або Simple Mail Transfer Protocol, переважно використовується для надсилання електронної пошти від поштового клієнта (наприклад, Microsoft Outlook, Thunderbird або Apple Mail) на сервер електронної пошти. Він також використовується для ретрансляції або надсилання поштових повідомлень з одного поштового сервера на інший. Це необхідно, якщо відправник та одержувач мають різні постачальники послуг електронної пошти.

SMTP, який вказаний у RFC 5321, використовує порт 25 за промовчанням. Він також може використовувати порт 587 та порт 465. Останній, який був представлений як порт вибору для безпечного SMTP (a.k.a. SMTPS), вважається застарілим. Але насправді він, як і раніше, використовується кількома постачальниками поштових послуг.

POP3

Протокол поштового відділення, або POP, використовується для вилучення електронних листів з Остання версія, яка широко використовується, - це версія 3, звідси і термін «POP3».

POP, версія 3, зазначена в RFC 1939, підтримує розширення та кілька механізмів автентифікації. Функції автентифікації необхідні, щоб зловмисники не отримували доступу до повідомлень користувачів.

Клієнт POP3 отримує електронну пошту так:

    підключається до поштового сервера порту 110 (або 995 для з'єднань SSL/TLS);

    видаляє копії повідомлень, що зберігаються на сервері;

    відключається від сервера.

    Хоча клієнти POP можуть бути налаштовані так, щоб сервер міг продовжувати зберігати копії завантажених повідомлень, описані вище кроки є звичайною практикою.

    IMAP

    IMAP, особливо поточна версія (IMAP4), є складнішим протоколом. Це дозволяє користувачам групувати пов'язані повідомлення та розміщувати їх у папках, які, у свою чергу, можуть бути організовані ієрархічно. Він також оснащений прапорами повідомлень, які вказують, чи повідомлення було прочитано, видалено або отримано. Він навіть дозволяє користувачам шукати поштові скриньки сервера.

    Логіка роботи (налаштування imap4):

    • підключається до поштового сервера через порт 143 (або 993 для з'єднань SSL/TLS);

      отримує повідомлення електронної пошти;

      служить для підключення до закриття програми поштового клієнта та завантаження повідомлень на вимогу.

    Зауважте, що повідомлення не видаляються на сервері. Це може мати серйозні наслідки. Специфікації IMAP можна знайти у RFC 3501.

    Вибір між IMAP та POP3

    Оскільки основна функція SMTP принципово відмінна, дилема вибору кращого протоколу зазвичай включає лише IMAP та POP3.

    Якщо вам важливе місце для зберігання на сервері, то вибирайте POP3. Сервер з обмеженим об'ємом пам'яті є одним із основних факторів, які можуть змусити вас підтримати POP3. Оскільки IMAP залишає повідомлення на сервері, він може споживати простір пам'яті швидше, ніж POP3.

    Якщо ви хочете отримати доступ до пошти в будь-який час, краще зупинитися на IMAP. Є одна вагома причина, через яку IMAP був призначений для зберігання повідомлень на сервері. Він використовується для пошуку повідомлень з декількох пристроїв іноді навіть одночасно. Тому якщо у вас є iPhone, планшет Android, ноутбук і робочий стіл, і ви хочете читати електронну пошту з будь-якого або всіх цих пристроїв, то IMAP буде найкращим вибором.

    Синхронізація – ще одна перевага IMAP. Якщо ви отримуєте доступ до повідомлень електронної пошти з кількох пристроїв, швидше за все, захочете, щоб усі вони відображали будь-які дії, які ви виконували.

    Наприклад, якщо ви читаєте повідомлення A, B і C, то хочете, щоб вони також були позначені як "прочитані" на інших пристроях. Якщо ви видалили листи B і C, захочете, щоб ті самі повідомлення видалялися з вашої поштової скриньки на всіх гаджетах. Всі ці синхронізації можуть бути досягнуті лише у випадку, якщо ви використовуєте IMAP.

    Оскільки IMAP дозволяє користувачам упорядковувати повідомлення в ієрархічному порядку та розміщувати їх у папках, це допомагає користувачам краще організовувати свою кореспонденцію.

    Зрозуміло, що всі функціональні можливості IMAP мають свою ціну. Ці рішення складніше реалізувати, і зрештою протокол споживає набагато більше ЦП та ОЗУ, особливо коли він виконує процес синхронізації. Фактично високе завантаження процесора і пам'яті може статися як на стороні клієнта, так і на стороні сервера, якщо є тонна повідомлень для синхронізації. З цього погляду протокол POP3 менш витратний, хоч і менш функціональний.

    Конфіденційність також є однією з проблем, яка сильно залежатиме від кінцевих користувачів. Вони, як правило, воліли б завантажувати всі повідомлення електронної пошти та не залишати їх копії на невідомому сервері.

    Швидкість – перевага, яка варіюється і залежить від ситуації. POP3 може завантажувати всі поштові повідомлення під час підключення. А IMAP може за потреби (наприклад, при недостатній кількості трафіку) завантажувати лише заголовки повідомлень або певні частини та залишати вкладення на сервері. Тільки коли користувач вирішить, що частини, що залишилися, стоять завантаження, вони стануть доступні для нього. Тому IMAP можна вважати швидшим.

    Однак якщо всі повідомлення на сервері повинні завантажуватися щоразу, POP3 буде працювати набагато швидше.

    Як ви можете побачити, кожен з описуваних протоколів має свої переваги та недоліки. Вам вирішувати, які функції чи можливості важливіші.

    Також бажаний спосіб доступу до e-mail-клієнт визначає перевагу протоколу. Користувачі, які працюють лише з однієї машини та використовують веб-пошту для доступу до своїх нових електронних листів, оцінять POP3.

    Однак користувачі, які обмінюються поштовими скриньками або отримують доступ до своїх електронних листів з різних комп'ютерів, віддадуть перевагу IMAP.

    Спам-брандмауери з SMTP, IMAP та POP3

    Більшість брандмауерів для спаму мають справу лише з протоколом SMTP та захищають його. Сервери надсилають та отримують електронну пошту SMTP, і вони перевірятимуться спамом-брандмауером на шлюзі. Однак деякі брандмауери для спаму дають можливість захищати POP3 та IMAP4, коли зовнішнім користувачам потрібні ці служби для доступу до їхньої електронної пошти.

    Брандмауери SMTP прозорі для користувачів; для клієнтів немає змін конфігурації. Користувачі, як і раніше, отримують і надсилають поштові повідомлення на сервер електронної пошти. Так, Exchange або Dominos повинні налаштовувати маршрутизацію повідомлень на брандмауер на основі проксі-сервера під час надсилання електронної пошти, а також забезпечувати можливість надсилання листів із брандмауера.

Сьогодні ми докладно розповімо про протоколи, що найбільш використовуються в мережі інтернет - POP3, IMAP і SMTP. Кожен із зазначених протоколів має певне призначення та функціональні можливості. Спробуймо розібратися.

Протокол POP3 та його порти

Post Office Protocol 3 (POP3) це стандартний протокол пошти, створений для отримання електронних листівз віддаленого сервера на e-mail клієнт.POP3 дозволяє вам зберегти поштове повідомлення на ваш комп'ютер і навіть прочитати його, якщо ви не в мережі. Важливо, що якщо ви вирішили використовувати POP3 для підключення до облікового запису пошти, листи, які вже завантажені на комп'ютер, буде видалено з поштового сервера. Як приклад, якщо ви використовуєте кілька комп'ютерів для підключення до одного поштового облікового запису, то протокол POP3 може бути не найкращим вибором у цій ситуації. З іншого боку, оскільки пошта зберігається локально, на ПК конкретного користувача, це дозволяє оптимізувати дискове місце на стороні поштового сервера.

За промовчанням POP3 використовує такі порти:

  • Порт 110 – це порт POP3 за промовчанням. Не є безпечним.
  • Порт 995 – цей порт слід використовувати, якщо ви хочете встановити безпечне з'єднання.

Протокол IMAP та порти

Internet Message Access Protocol (IMAP) – це поштовий протокол, створений для доступу до пошти з локального поштового клієнта. IMAP та POP3 – найбільш популярні в мережі інтернет протоколи, що використовуються для отримання e-mail.Обидва ці протоколи підтримуються всіма сучасними поштовими клієнтами (MUA - Mail User Agent) та WEB – серверами.

У той час як POP3 дозволяє доступ до пошти тільки з однієї програми, IMAP дозволяє доступ з багатьох клієнтів. З цієї причини IMAP найбільш адаптивний у тих випадках, коли доступ до одного поштового облікового запису необхідний для декількох користувачів.

За промовчанням протокол IMAP використовує такі порти:

  • Порт 143– порт за замовчуванням. Чи не безпечний.
  • Порт 993– порт для безпечного з'єднання.
Протокол SMTP та його порти

Simple Mail Transfer Protocol (SMTP) – це стандартний протокол для надсилання поштових повідомленьпо мережі Інтернет.

Цей протокол описаний у RFC 821 та RFC 822, вперше опублікованих у серпні 1982 року. В рамках даних RFC, формат адреси має бути у форматі ім'я_користувача@доменне_ім'я. Доставка пошти, аналогічна роботі звичайної поштової служби: наприклад, лист на адресу [email protected], буде інтерпретовано так: ivan_ivanov – адреса, а merionet.ru – поштовий індекс. Якщо доменне ім'я одержувача відрізняється від імені домену відправника, то MSA (Mail Submission Agent) надішле лист через Mail Transfer Agent (MTA). Головна ідея MTA в тому, щоб перенаправляти листи в іншу доменну зону, за аналогією, як традиційна пошта надсилає листи до іншого міста чи області. MTA також отримує пошту від інших MTA.

Протокол SMTP використовує такі порти.

Яскравим пунктом багатьох протоколів прикладного рівня є те, що вони прості. Протоколи, засновані на TCP, використовують в основному команди та відповіді в текстовому форматі, що робить їх більш зручними для користувачів, щоб зрозуміти і програмістам для реалізації.

Для подальшої ілюстрації ми розглянемо два протоколи, які можна використовувати щодня, щоб надсилати та отримувати електронну пошту: SMTP та POP3.
Простий протокол передачі пошти: SMTP
Simple Mail Transfer Protocol (SMTP)є одним із найшанованіших інтернет-протоколів. Розроблений на початку 1980-х, його функції чисто і просто передають електронною поштою, а також між мережами та іншими транспортними системами. Таким чином, його використання не обов'язково має бути обмежене в системах, які використовують протокол TCP/IP. Будь-яка система зв'язку здатна обробляти лінії до 1000 7-бітових ASCII символів, які можуть бути використані для виконання повідомлень за протоколом SMTP. У TCP/IP мережі, однак, TCP забезпечує транспортний механізм.
У SMTP-відправникє клієнтом, а клієнт може взаємодіяти із різними серверами. Повідомлення можуть надсилатися безпосередньо від хоста, що відправляє, на хост-отримувача, що вимагає окремого з'єднання TCP і повинні бути зроблені кожна копія кожного повідомлення. Тим не менш, кілька одержувачів пошти можуть запустити свій власний сервер SMTP.
Це найбільш характерно для призначення SMTPповідомлень, сервер, який обслуговує групу користувачів, таких як інтернет-домени. Сервер отримує всю пошту, призначену для користувачів, а потім дозволяє їм збирати, використовуючи POP3 (Post Office Protocol версії 3)чи інші поштові протоколи. Крім того, більшість SMTP-клієнтівпосилають повідомлення в один «розумний хост» сервер, робота якого полягає в тому, щоб передати ці повідомлення для своїх можливих одержувачів.
Транзакції SMTPпочинаються тоді, коли відправник клієнт відкриває TCP з'єднання з приймачем, використовуючи відомий номер порту 25. Сервер визнає зв'язок, відправивши назад повідомлення 220 SMTP Server Ready«. SMTPвикористовує схожий формат відповідей FTP, який ми розглянули раніше. Отриманий тризначний код програмне забезпечення клієнта має відповісти, якщо все буде ОК. Ця зграя, щоб допомогти людям, які могли б усунути неполадки за допомогою аналізу журналу транзакцій. У вікні "Application Protocol Відповіді кодів" міститься докладніша інформація про коди повідомлень відповіді.
Сервер SMTPможе відмовити у зв'язку, відправивши назад повідомлення з кодом у відповідь «421 Служба недоступна». Наприклад, SMTPсервер провайдера послуг Інтернету, за умови, для своїх абонентів для надсилання вихідної пошти може відмовити у зв'язку з хостом, чия IP-адреса вказує, що він не є абонентом ISP. Основний SMTP протоколне має форми контролю доступу - так, як його можна використовувати для передачі повідомлень і це робить його непрактичним - так що єдиний шлях, в якому провайдери можуть запобігти не передплатникам, таким як спамерів, від використання своїх поштових серверів для надсилання повідомлень.
Отримавши підтвердження правильних знаків відправника на сервер, сервер відправляє рядок "HELO ім'я". HELO знак на команду та ім'я є ім'ям хоста. Як ми побачимо, ім'я хоста використовується в редакції: заголовок, сервер додає повідомлення, коли він відправляє його своїм шляхом. Ця інформація дозволяє одержувачу простежити шлях повідомлення.
Посилаючий сервер
Коли відправник отримує визнання "250 OK", він може почати відправку повідомлень. Протокол надзвичайно простий. Все, що відправники повинні зробити, це сказати, які повідомлення повинні постачати вміст повідомлення.
Повідомлення задається за допомогою команди «MAIL FROM:

». Ця команда також повідомляє одержувачу, що він збирається отримувати нові повідомлення, тому він знає, щоб очистити свій список одержувачів. Адреса в кутових дужках є зворотним шляхом повідомлення. Зворотний шлях це адреса, така, що будь-яке повідомлення про помилку буде згенеровано, якщо повідомлення не доставлено або не надсилається.
Воно дійсне на зворотному шляху і є недійсним, як у «MAIL FROM:<>». Це зазвичай використовується для надсилання звіту про помилку. Нульовий шлях повернення означає, що звіт про помилку не потрібний. Його основною метою є не потрапити в ситуацію, в якій повідомлення неможливо доставити трансфер туди і назад, тому що обидві адреси відправника та одержувача недоступні.
Отримувачі повідомлень визначається за допомогою команди RCPT TO:
». Кожна адреса укладена в кутові дужки. Повідомлення може мати багато одержувачів і RCPT TO: команда відправляється для кожного з них. Ці RCPT TO: команди, які не всі в заголовку повідомлення, які прибувають до місця призначення. У разі прихованих копій повідомлень або списку адрес серверів одержувача не відображатимуться в заголовку взагалі.
Кожен одержувач визнається із відповіддю «250 OK». Одержувач також може бути відхилений під час використання відповіді з кодом 550 відповіді. Це залежить від того, як сервер був налаштований. Віддалений доступ до серверів провайдера SMTPможе прийняти кожну команду RCPT TO:, навіть якщо вказана адреса, є недійсною, оскільки сервер не знає, що адреса невірна, поки вона не зробить пошук DNS на ньому. Тим не менш, поштовий сервер, призначений для отримання повідомлень для локальних користувачів або конкретного домену, відкидатиме пошту для адрес, які не знаходяться в цій області.
Можуть бути отримані інші відповіді у відповідь на RCPT TO: повідомлення, що сервер SMTPбув корисним. Якщо адреса неправильна, але сервер не знає правильну адресу, вона може відповісти «251 Користувач не місцевий; направить
» або «551 Користувач не місцевий, спробуйте
». Зверніть увагу на різні коди відповідей, що означає, що сервер надсилає повідомлення чи ні. Ці відповіді не є спільними, і поштовий клієнт може просто надіслати відповідь 551 як помилку, а не намагатися аналізувати альтернативні адреси з тексту відповіді.
Для повноти картини слід зазначити, що команди RCPT TO можуть задавати маршрути, а не просто адреси. Маршрут виражатиметься у вигляді «RCPT TO: ».
Текст повідомлень.
Після того, як всі одержувачі були вказані, все, що залишається зробити відправнику надіслати повідомлення. Спочатку він відправляє команду «DATA», а потім чекає на відповідь типу: «354 Start вхід пошти, з кінця .». Повідомлення буде надіслано у вигляді послідовності рядків тексту. Але не буде отримано підтверджень для кожного рядка, хоча відправник повинен стежити за відповіддю, яка вказує на помилки.
Наприкінці повідомлення, як зазначено у відповіді зазначеному вище, період (точка) лінії своїх власних. Таким чином, однією з найпростіших, але найважливіших речей, це те, що поштовий клієнт повинен зробити - переконатися, що рядок, що містить один період не з'являється в самому тексті. Наприкінці повідомлення визнається із відповіддю «250 OK». Варто відмітити що SMTPні в якому разі не зацікавлений у змісті повідомлення. Це може бути все, що завгодно, хоча, строго кажучи, повідомлення не повинні містити будь-які символи з ASCII значеннями в діапазоні від 128 до 255, а рядки тексту не повинні перевищувати 1000 знаків. Також не потрібно, щоб заголовки адреси відправника та одержувача, які використовували команди SMTP, що робить їх легкими для повідомлень, мабуть, прийшли від когось іншого, ніж справжній відправник.

На першій стадії електронна пошта проходить через користувача агента в локальний сервер. Пошта, можливо, відразу не надсилається на віддалений сервер, оскільки він може бути недоступний до цього моменту. Тому пошта накопичується в локальному сервері, доки її не вдасться надіслати. Агент користувача використовує програмне забезпечення SMTP-клієнта, локальний сервер використовує програмне забезпечення SMTP-сервера.

Друга стадія

На другому кроці електронна пошта йде за допомогою локального сервера, який діє як клієнт SMTP. Електронна пошта надсилається віддаленому серверу, але не до віддаленого агента користувача. Якби SMTP був прийнятим сервером, завжди можна було б обробити пошту, що прибула в будь-який момент часу. Однак люди часто вимикають свій комп'ютер до кінця дня, а міні-комп'ютер або переносні комп'ютери часто нормально не працюють. Зазвичай організації призначають свій комп'ютер для прийняття електронної пошти та постійної роботи як програмного сервера. Електронна пошта виходить за допомогою такого сервера та накопичується у поштовій скриньці для подальшого використання.

Третя стадія

На третьому ступені віддалений агент користувачазастосовує протокол POP3 або IMAP4 (обидва протоколи обговорюються в наступних секціях), щоб запустити поштову скриньку та отримати пошту.

Протоколи поштового доступу

Перша та друга стадія доставки пошти використовують SMTP. Однак SMTP не включений у третю стадію, тому що STMP "проштовхує" повідомлення від відправника до одержувача, навіть якщо одержувач цього не бажає. SMTP починає відправник, а не одержувач. З іншого боку, третя стадія потребує протоколу, який "притягує" повідомлення, і ця операція має починатися в отримувача. Третій ступінь використовує протокол поштового доступу.

В даний час застосовуються два протоколи: Post Office Protocol, Version 3 – POP3 та Internet Mail Access Protocol, Version 4 – IMAP4.

POP3

Post Office Protocol, Version 3 (POP3) – протокол простий, але обмежений функціонально. Програмне забезпечення клієнта POP3 встановлюється на комп'ютері одержувача; програмне забезпечення POP3-сервера встановлюється на поштовому сервері.

Поштовий доступ стартує від клієнта, коли користувачеві потрібно завантажити його електронну пошту з поштової скриньки на сервер. Клієнт ( агент користувача) встановлює із сервером порт 110 і далі посилає йому ім'я та пароль для доступу до поштової скриньки. Користувач може потім перерахувати та знайти поштові повідомлення одне за одним. Малюнок 14.13. показує приклад завантаження, що використовує POP3.


Мал. 14.13. POP3

POP3 має два режими: режим видалення та режим збереження. Після видалення пошти видаляється з поштової скриньки після кожного запиту. У режимі збереження пошти залишається після запиту в поштовій скриньці. Режим видалення зазвичай використовують, коли користувач постійно працює з комп'ютером і може зберегти та впорядкувати пошту після читання та відповіді. Режим збереження застосовують, коли користувач має доступ до своєї пошти через комп'ютер (наприклад, переносний комп'ютер). Пошта читається, але зберігається в системі для подальшого запиту та впорядкування.

IMAP4

Інший протокол поштового доступу до повідомлень Інтернету – Internet Mail Access Protocol, Version 4 (IMAP4). IMAP4 схожий на POP3, але має деякі особливості: IMAP4 більш потужний і складніший.

POP3 є недосконалим з кількох причин. Він не дозволяє користувачеві організувати пошту на сервері; користувач не може мати різні "папки". (Звичайно, користувач може організувати папки на власному комп'ютері.) На додаток до цього, POP3 не дозволяє користувачеві частково перевірити зміст пошти перед завантаженням.

IMAP4 забезпечує такі додаткові функції:

  • Перед завантаженням користувач може перевірити заголовки електронної пошти.
  • Перед завантаженням користувач може шукати вміст електронної пошти для спеціальних рядків-символів.
  • Користувач може частково завантажувати електронну пошту. Це корисно у спеціальних випадках, якщо ресурси обмежені та електронна пошта містить повідомлення різного типу, що потребують великих ресурсів.
  • Користувач може створювати, видаляти або перейменовувати поштову скриньку поштового сервера.
  • Користувач може створювати ієрархію поштових скриньок у папці для накопичення електронної пошти.

Пошта на основі WEB

Послуги електронної пошти сьогодні можуть бути забезпечені для користувачів WEB-сайтів (Yahoo, Yandex тощо).

Ідея такого зв'язку проста: передача листа відбувається за допомогою протоколу HTTP (див. наступні лекції). Надсилання повідомлення від сервера передавання до вхідного поштового сервера здійснюється за допомогою протоколу SMTP . Зрештою, повідомлення від вхідного сервера (він же WEB-сервер ) досягає сервера користувача Б, використовуючи протокол HTTP . Якщо користувач хоче отримати це повідомлення, він надсилає запит на свій WEB-сайт (наприклад, YANDEX). WEB-сайт надсилає форму, яка містить запит логіна (зареєстрованого імені користувача) та пароля, потім передає повідомлення на комп'ютер користувача Б у форматі HTML.

Короткі підсумки

  • Протокол, який підтримує в мережі TCP/IP електронну пошту, називається Simple Mail Transfer Protocol (SMTP) – простий протокол поштової передачі.
  • Клієнт та сервер SMTP вимагають встановлення спеціального програмного забезпечення – агента користувача(USER Agent - UA) та агента передачі пошти (Mail Transfer Agent - MTA).
  • UA готує повідомлення, створює конверт та вкладає повідомлення у конверт.
  • Поштова адреса містить дві частини: локальну адресу (поштову скриньку користувача) і доменне ім'я. Форма [email protected].
  • Поштовий шлюз перетворює поштовий формат.
  • SMTP-повідомлення може бути затримано на стороні відправника та на стороні одержувача або на проміжних серверах.
  • Псевдонім дозволяє одному користувачеві мати багато електронних адрес або багатьом адресам користувача мати груповий доступ до однієї й тієї ж адреси.
  • MTA перетворює пошту під час проходження через Інтернет.
  • Пошта відправника в загальному випадку використовує UNIX для побудови MTA.
  • SMTP використовує команди та відгуки, щоб надсилати повідомлення між MTA клієнта та MTA сервера.
  • Кроки для надсилання поштових повідомлень:
  • Багатоцільове розширення пошти через Інтернет (Multipurpose Internet Mail Extension – MIME) – це розширення SMTP, яке дозволяє передачі мультимедійних повідомлень (текст, аудіо, нерухоме зображення, відео тощо).
  • Поштовий протокол (Post Office Protocol, version 3 - POP3) і протокол доступу до пошти в Інтернеті, версія 4 (Internet Mail Access Protocol - IMAP4) використовують за допомогою пошти сервера для з'єднання від SMTP до приймача та утримання пошти в хості.

Завдання та вправи

  1. Наведіть приклад ситуації, в якій розширювач від "одного до багатьох" міг би бути корисним. Повторіть те саме для розширювача від "багатьох до одного".
  2. Чи потрібні одразу дві команди HELLO та FROM TO? Обґрунтуйте відповідь "так" чи "ні".
  3. Чому потрібно встановити з'єднання для надсилання листа, якщо TCP вже встановив з'єднання?
  4. Покажіть встановлення з'єднання від [email protected]до [email protected].
  5. Покажіть фазу передачі повідомлення від [email protected]до [email protected]. Повідомлення - "Будьте здорові".
  6. Покажіть фазу завершення з'єднання від [email protected]до [email protected].
  7. Користувач [email protected]надсилає повідомлення до користувача [email protected], який пересилає його до [email protected]. Покажіть SMTP-команди та відгуки.
  8. Користувач [email protected]надсилає повідомлення до користувача [email protected], що відповідає йому. Покажіть SMTP-команди та відгуки.
  9. Якщо за допомогою SMTP надсилається повідомлення з одного рядка, скільки рядків займуть команди та відгуки?
  10. Передавач надсилає неформатований текст. Покажіть заголовок MIME.
  11. Передавач надсилає JPEG-повідомлення. Покажіть заголовок MIME.
  12. Повідомлення має 1000 байт у коді (не ASCII), закодовано за допомогою Base 64 . Скільки байт у кодованому повідомленні? Скільки надлишкових байт? Яким є відношення надлишкових байт до загального числа байт повідомлення?
  13. Повідомлення 1000 байт закодовано пристосованим до друку кодом. Повідомлення містить 90 відсотків ASCII та 10 відсотків не-ASCII-символів. Скільки байт у кодованому повідомленні? Скільки надлишкових байт? Яким є відношення надлишкових байт до загального числа байт повідомлення?
  14. Порівняйте результати вправ12 і 13. Як збільшиться ефективність, якщо повідомлення містить ASCII та не-ASCII-символи?
  15. Закодуйте наступне повідомлення у Base 64 :

    0101 0111 0000 1111 1111 0000 1010 1111 01111 0001 0101 0100.

Додатковий матеріал для проходження тестування до лекції Ви можете завантажити .

Схожі статті

2023 parki48.ru. Будуємо каркасний будинок. Ландшафтний дизайн. Будівництво. Фундамент.