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


 

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

45221. Российский опыт использования ПР-технологий в деятельности государственных структур 25 KB
  Российский опыт использования ПР-технологий в деятельности государственных структур. В случае государственных структур объектом воздействия становится налогоплательщик гражданин который хочет и имеет право знать обо всех действиях государственных органов разного уровня. Эта технология используется в российских государственных ПР для корректировки проблемы после того как коммуникация начала развертываться в нежелательном направлении и события приняли нежелательный оборот. Основная задача государственных ПР создание образа компетентного и...
45222. Специфика ПР деятельности общественных объединений 29 KB
  Цель ПР в третьем некоммерческом секторе помощь в реализации различных социальных проектов привлечение внимания общественности к важным социальным проблемам формирование общественного мнения относительно необходимости решения данных проблем. Взаимоотношения социальных служб и СМИ также является одной из сложных задач. Ведь несмотря на то что в любой газете есть отдел социальных проблем журналисты не часто пишут об НКО поскольку плохо знают их работу. Деятельность по связям с общественностью в социальных службах включает в себя: 1.
45223. Подготовка РК специалистов в России: специфика, проблемы, перспективы развития ПР образования 26.5 KB
  Подготовка РК специалистов в России: специфика проблемы перспективы развития ПР образования. Российская подготовка ПРспециалистов учитывает опыт их подготовки в других странах что позволило избежать ряда крупных ошибок. Например данная специальность на была помещена на факультеты журналистики как в США 2 3 всех специалистов против этого выступает Э. Но мы стоим в преддверии такой проблемы как перепроизводство специалистов которые вопервых могут быть просто не нужны потому что столько не нужно и вовторых которые могут быть не...
45224. Миссия, идеология и направления деятельности профессиональных международных объединений ПР-специалистов: IРRА,СЕRР,IАВС,IРR,РRSА 44.5 KB
  Рост числа профессиональных ассоциаций отражает серьезность усилий предпринимаемых многими специалистами в области ПР в целях придания этой функции должного статуса и дальнейшей ее профессионализации. IРRА пропагандирует престиж профессий специалиста в области РR высокие стандарты и соблюдение этических норм среди специалистов которым приходится иметь дело с международными аспектами РR. IPR издает так называемые Золотые страницы по важнейшим проблемам представляющим интерес для мирового сообщества специалистов в области PR. Это...
45225. Миссия, идеология и направления деятельности российских профессиональных организаций ПР-специалистов: РАСО 33.5 KB
  Миссия идеология и направления деятельности российских профессиональных организаций ПРспециалистов: РАСО РАСО была создана в июле 1991. Декларация профессиональных и этических принципов в области связей с общественностью РАСО. В основу поведений членов РАСО легли общечеловеческие ценности и универсальные права личности: свобода слова свобода печати и собраний на свободный доступ к информации; ответственность перед обществом в том числе за достоверность точность и честность распространяемой информации. Члены РАСО руководствуются...
45226. Кодексы профессионального поведения профессиональных зарубежных сообществ: этическая основа, ценностно-нормативная специфика 61.5 KB
  Положения кодекса приняты с целью пропаганды и активного внедрения высоких стандартов общественной деятельности и этики поведения членов РRSА. Член обязан сохранять в тайне конфиденциальную информацию доверенную ему нынешними или бывшими клиентами или служащими. Член не должен представлять интересы одной из конфликтующих сторон без согласия на то всех заинтересованных сторон. Член не должен заниматься никакой деятельностью которая имеет тенденцию к нанесению ущерба репутации СМИ.
45227. Кодекс профессионального поведения российского корпоративного сообщества ПР-специалистов: этическая основа, ценностно-нормативная специфика 31 KB
  Декларация профессиональных и этических принципов в области связей с общественностью РАСО. В основу поведений членов РАСО легли общечеловеческие ценности и универсальные права личности: свобода слова свобода печати и собраний на свободный доступ к информации; ответственность перед обществом в том числе за достоверность точность и честность распространяемой информации. Члены РАСО руководствуются пониманием важности формирования и внедрения этических ориентиров и профессиональных стандартов деятельности. Для контроля за соблюдением членами...
45228. Типовая структура, принципы организационного строения и функции подразделений корпоративной PR-службы 25.5 KB
  Деятельность PRотдела строится в соответствии с целями и задачами компании; цели могут быть краткосрочные среднесрочные и долгосрочные. должен оперативно получать информацию от других подразделений компании для реализации поставленных задач. должен принимать участие в планировании мероприятий с участием руководства компании которые будут иметь общественный резонанс. Принципы организационного строения: PRотдел создается как один из системообразующих элементов который в полном объеме выполняет функции PR и рассматривается в качестве...
45229. Деятельность консалтингового агентства: приоритеты, технологии, преимущества и недостатки 24.5 KB
  Направления консалтинговой деятельности: экономическая сфера управленческий консалтинг; социальная сфера организация систем образования здравоохранения культуры; правовая сфера создание правовой базы организации юридическое консультирование; сфера культуры политическое консультирование консультирование по вопросам функционирования культурных организаций; экологическая сфера социальная экология экология человека.