37714

Протокол SMTP

Лабораторная работа

Информатика, кибернетика и программирование

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

Украинкский

2013-09-25

805.5 KB

6 чел.

1.1

Протокол SMTP

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

ESMTP (англ. Extended SMTP) - масштабоване розширення протоколу SMTP. В даний час під "протоколом SMTP», як правило, мають на увазі ESMTP і його розширення.

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

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

Широке поширення SMTP отримав на початку 1980-х років. До нього використовувався протокол UUCP, який вимагав від відправника знання повного маршруту до одержувача і явної вказівки цього маршруту в адресі одержувача, або наявності прямого комутованого або постійного з'єднання між комп'ютерами відправника і одержувача.

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

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

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

  2ХХ - команда успішно виконана

  3XX - очікуються додаткові дані від клієнта

  4хх - тимчасова помилка, клієнт повинен зробити наступну спробу через деякий час

  5хх - невиправна помилка

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

ESMTP - розширюваний протокол, на відміну від SMTP. При встановленні з'єднання сервер оголошує про набір підтримуваних розширень (як відповідь на команду EHLO). Відповідні розширення можуть бути використані клієнтом при роботі. Необхідно пам'ятати, що якщо сесія починається з команди HELO (яка використовується в «класичному» SMTP, RFC 821), то перелік розширень виводитися не буде.

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

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

Команди SMTP

HELO <SP> <string><CRLF> — Ідентифікує SMTP-сервер відправника, відкриває сеанс

QUIT<CRLF> — Завершує SMTP-сеанс

MAIL <SP> FROM:<reverse-path> <CRLF> — Задає адресу відправника. Адресу слід вказувати в кутових дужках. Деякі сервери можуть проігнорувати те, що їм передають адресу без кутових дужок, але ті сервери, що детально виконують опис RFC, відхилять таку адресу.

RCPT <SP> TO:<forward-path> <CRLF> — Задає адресу одержувача. Адресу слід вказувати в кутових дужках. Деякі сервери можуть проігнорувати те, що їм передають адресу без кутових дужок, але ті сервери, що детально виконують опис RFC, відхилять таку адресу.

DATA <CRLF> — Вказує на початок повідомлення. Для завершення повідомлення вказується <CRLF>.<CRLF>

VRFY <SP> <string><CRLF> — перевіряє існування одержувача.

EXPN <SP> <string><CRLF> — показує перелік адрес для списку розсилки.

NOOP<CRLF> — пуста операція

TURN<CRLF> — сервер та клієнт міняються ролями после відповіді сервера 200 OK

RSET<CRLF> — скидання сесії в початковий стан

HELP<CRLF> — інформація про команди, які підтримуються. Деякі сервери підтримують довідку по окремим командам, наприклад, HELP MAIL (sendmail), деякі виводять за цією командою лише список можливих команд без пояснення (Microsoft Exchange Server)

Внаслідок проблем зі спамом, майже всі сучасні сервери ігнорують команди VRFY и EXPN, тому що вони розкривають інформацію про користувача.

Розширення ESMTP

RFC 1869 предписує починати сесію не командою HELO, а командою EHLO. У випадку, якщо сервер не підтримує розширений протокол, то він відповість на EHLO помилкою, в цьому разі клієнт повинен надіслати команду HELO і не використовувати розширення протоколу.

Якщо ж сервер підтримує ESMTP, то крім привітання він повідомить перелік підтримуємих розширень протоколу SMTP.

2.2 Протокол POP3

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

Попередні версії протоколу (POP, POP2) застаріли.

Стандарт протоколу POP3 визначений в RFC 1939. Розширення та методи авторизації визначені в RFC 2195, RFC 2449, RFC 1734, RFC 2222, RFC 3206, RFC 2595.

Існують реалізації POP3-серверів, що підтримують TLS та SSL.

Альтернативним протоколом для збору повідомлень з поштового сервера є IMAP.

Стани сеансу

У протоколі POP3 передбачено 3 стану сеансу:

Авторизація: клієнт проходить процедуру аутентифікації

Транзакція: клієнт отримує інформацію про стан поштової скриньки, приймає і видаляє пошту

Оновлення: сервер видаляє обрані листи і закриває з'єднання

Опис протоколу POP3

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

Команди POP3

APOP [ім’я] [digest]

Команда використовується для передачі серверу імені користувача та зашифрованого паролю (digest)

Аргументи

[ім’я] - рядок, який вказує ім’я поштового ящику.

[digest]- зашифрована паролем користувача по алгоритму MD5 мітка часу. Якщо ця команда підтримується, мітка часу одержується при з’єднанні з сервером:

+OK POP3 server ready <1896.698370952@meshach.smallorg.org>

Обмеження

Її підтримка не є обов’язковою.

Можливі відповіді

  •  +OK maildrop has n message
  •  -ERR password suplied for [ім’я] is incorrect

DELE [повідомлення]

Сервер позначає вказане повідомлення для видалення

Аргументи

[повідомлення] - номер сообщения.

Обмеження

Доступна після вдалої ідентифікації

Можливі відповіді

  •  +OK message deleted
  •  -ERR no such message

LIST [повідомлення]

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

Аргументи

[повідомлення]-номер повідомлення (необов’язковий аргумент)

Обмеження

Доступна після вдалої ідентифікації

Можливі відповіді

  •  +OK scan listing follows
  •  -ERR no such message

NOOP

Сервер нічого не робить, завжди відповідає позитивно

Аргументи

Немає.

Обмеження

Немає.

Можливі відповіді

  •  +OK

PASS [пароль]

Передає серверу пароль поштової скриньки

Аргументи

[пароль] - пароль для поштової скриньки

Обмеження

Працює після успішної передачі імені поштової скриньки.

Можливі відповіді

  •  +OK maildrop locked and ready
  •  -ERR invalid password
  •  -ERR unable to lock maildrop

RETR [повідомлення]

Сервер передає повідомлення з вказанным номером

Аргументи

[повідомлення] - номер повідомлення

Обмеження

Доступна після вдалої ідентифікації

Можливі відповіді

  •  +OK message follows
  •  -ERR no such message

RSET

Якщо якісь повідомлення були позначені для видалення, то з них знімається ця мітка.

Аргументи

Немає.

Обмеження

Доступна після і до вдалої ідентифікації

Можливі відповіді

  •  +OK

STAT

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

Аргументи

Немає

Обмеження

Доступна після вдалої ідентифікації

Можливі відповіді

  •  +OK a b

TOP [повідомлення] [кількість рядків]

Сервер повертає вказану кількість рядків після заголовку

Аргументи

[повідомлення] - номер повідомлення

[кількість рядків] – скільки рядків треба вивести

Обмеження

Доступна після вдалої ідентифікації

Можливі відповіді

  •  +OK n octets
  •  -ERR no such message

USER [ім’я]

Передає серверу ім’я користувача

Аргументи

[ім’я] - рядок, якмй вказує ім’я поштової скриньки

Обмеження

Немає.

Можливі відповіді

  •  +OK name is a valid mailbox
  •  -ERR never heard of mailbox name

QUIT

Аргументи

Немає.

Обмеження

Немає.

Можливі відповіді

  •  +OK

2.3

2.4

2.6

2.7

2.8

2.9

3.0

3.1

3.2

3.3

3.4

3.5

3.6

3.7


 

А также другие работы, которые могут Вас заинтересовать

39628. УСТАНОВКА (АТТИТЮД) 44 KB
  В российской психологии разработка общепсихологической теории установки принадлежит Д. Объектом для установки может быть все на что реагирует человек: любой символ фраза лозунг лицо учреждение идея. Можно иметь установки в отношении определенной профессии Организации Объединенных Наций политической партии книги национального меньшинства марки стирального порошка блондинок и т. Новорожденный ребенок имеет установки лишь относительно тех стимулов на которые существует врожденная реакция – удовольствие или боль.
39629. Требования и порядок создания информационно-развлекательной системы «Развлекательный портал» 9.07 MB
  Порядок оформления работы Стадии: Техническое задание а Обоснование перспективности реализуемого проекта: постановка задачи; сбор базовых материалов; установка критериев системы; необходимость проведения исследовательских работ; b Исследовательская работа: выбор оптимальных методов решения поставленной задачи; определение требований к техническим средствам; обоснование практической возможности реализации данного проекта; в Разработка и утверждение технического задания: определение требований к проекту; ...
39630. КОНСПЕКТ ЛЕКЦИЙ ПО ОСНОВАМ ОХРАНЫ ТРУДА 3.04 MB
  В соответствии с этой статьёй государство даёт гарантии каждому своему гражданину на надлежащие безопасные и здоровые условия труда и на заработную плату не ниже той которая определена законом. Таким образом в Конституции за государством закреплена забота об условиях труда его научной организации и это является одним из основных направлений его политики. Проблемами связанными с обеспечением здоровых и безопасных условий труда занимается охрана труда.
39631. Расчет газотурбинной установки мощностью 16 МВт 1.06 MB
  темы спроектирован регулируемый сопловой аппарат свободной силовой турбины найдены зависимости различных параметров при повороте сопловых лопаток. Также дипломный проект включает в себя: расчет тепловой схемы двигателя с последующим выбором Gв и к0 газодинамический расчет турбин по среднему диаметру расчет закона закрутки всех ступеней турбины высокого давления и силовой турбины расчеты на прочность рабочей лопатки 3й ступени силовой турбины технологию эксплуатации ГПА описание конструктивных особенностей экономическую частьрасчет...
39632. Компрессор высокого давления турбореактивного двухконтурного двигателя тягой 140 кН 1.65 MB
  Цели работы: ‒ разработка конструкции КВД; ‒ расчет на прочность и колебания основных элементов компрессора; ‒ в технологической части выполнить расчеты режимов резания для одной операции; ‒ в экономическом разделе рассчитать себестоимость затрат на проектирование промежуточного диска КВД; ‒ в разделе по безопасности жизнедеятельности провести оценку безопасности жизнедеятельности пассажиров самолета путем надежности и отказобезопасности КВД. В работе проведен сравнительный анализ конструкций КВД двигателей класса тяги 1218 тонн выбрана...
39633. Горные и маркшейдерские работы при строительстве тоннеля №3 Адлер-горноклиматический курорт «Альпика-Сервис» 21.63 MB
  Маркшейдерская служба призвана заниматься съёмками на земной поверхности и в горных выработках с целью изображения их на чертежах, а также для решения различных горно-геометрических задач, возникающих при освоении месторождения.
39634. Сайт бесплатных объявлений и рекламы 13.12 MB
  Задачей данной работы является реализация размещения объявлений и рекламы, используя Интернет. Структура интерфейса электронной доски объявлений должна быть понятна для обычного пользователя, в то же время необходимо позаботиться об наборе функциональных средств, обеспечивающих удобство работы с набором объявлений
39635. Особенности проведения аварийно-спасательных работ в учреждениях образования на примере Полоцкого государственного университета по адресу г. Полоцк ул. Стрелецкая д.4 305.28 KB
  Боевой участок – участок на котором сосредоточены силы и средства объединенные конкретной задачей по тушению пожара. Зона теплового воздействия пожара – прилегающая к зоне горения часть пространства в пределах которой протекают процессы теплообмена между поверхностью пламени и окружающей средой. Локализация пожара – прекращение дальнейшего распространения пожара и создание условий для его успешной ликвидации имеющимися силами и средствами [3]. Ликвидация пожара – прекращение горения на пожаре создание условий при которых нет...
39636. Проектирование газоперекачивающего агрегата мощностью 16 МВт на базе АЛ-31 СТ 618.91 KB
  Для определения основных размеров проточной части ТВД и ТНД произведен газодинамический расчет ступеней по среднему диаметру. Также для того, чтобы удельная работа по высоте ступени оставалась постоянной, были выбраны законы закрутки лопаток по радиусу и произведен расчет закрутки.