Чтение онлайн

на главную - закладки

Жанры

Стахнов Алексей Александрович

Шрифт:

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

Протокол POP3

Протокол обмена почтовой информацией POP3 (Post Office Protocol) предназначен для получения почты из почтовых ящиков пользователей на их рабочие места при помощи программ-клиентов. Таким образом, по протоколу SMTP пользователи отправляют корреспонденцию, а по протоколу POP3 – получают корреспонденцию из своих почтовых ящиков на почтовом сервере в локальные файлы. Этот протокол так же основан на установлении двусторонней связи, команды и ответы протокола передаются в ASCII-кодах и представляют собой небольшой набор английских слов.

Протокол IMAP

Еще одним протоколом разбора почты является протокол IMAP – почтовый протокол интерактивного доступа (Interactive Mail Access Protocol), который по своим возможностям похож на POP3, но разрабатывался как более надежная альтернатива последнему и обладает более широкими

возможностями по управлению процессом обмена сообщениями с сервером.

Главным отличием от POP3 является возможность поиска нужного сообщения и разбор заголовков сообщения непосредственно на почтовом сервере.

Формат почтового сообщения (RFC-822)

Формат почтового сообщения определен в документе RFC-822. Почтовое сообщение состоит из трех частей: конверта, заголовка и тела сообщения. Конверт используется программами доставки почтового сообщения, а заголовок и тело сообщения предназначены для его получателя. Заголовок находится перед телом сообщения, отделен от него пустой строкой и состоит из определенных стандартом полей. Поля состоят из имени поля и содержания поля. Имя поля отделяется от содержания символом":". Для доставки сообщения можно воспользоваться только частью полей заголовка – такими как Date, From, се или то, например:

• Date: 26 Aug 76 1429 EDT

• From: [email protected]

• To: [email protected]

Поле Date определяет дату отправки сообщения, поле From – отправителя, а поля се и то – получателей. Однако, если следовать установленным правилам, необходимо определять все поля заголовка, описанные в стандарте:

• Date: 27 Aug 76 0932

• From: Motya <[email protected]>

• Subject: Re: Ответ на письмо

• Sender: K@Other-host

• Reply-To: Sam.Irving0R.org.ru

• To: Geo <[email protected]>

• Cc: [email protected]

• Comment: Sam is away on bisiness

• In-Reply-To: <[email protected]>, George\'s message

• Message-ID: <4331.629.XYzi-What@Other-Host

Поле subject определяет тему сообщения, Repiy-то – пользователя, которому отвечают, comment – комментарий, in-Repiy-то – показывает, что сообщение относится к типу "В ответ на Ваше сообщение, отвечающее на сообщение, отвечающее …", Message-iD – уникальный идентификатор письма, используемый почтовыми программами.

Формат сообщения постоянно дополняется и совершенствуется. В частности, в RFC-1327 введены дополнительные поля для совместимости с почтой Х.400.

Спецификация MIME (Multipurpose Internet Mail Extension)

Спецификация MIME (Multipurpose Internet Mail Extension), приведенная в стандарте RFC-1341, предназначена для описания тела почтового сообщения Интернета. Необходимость в этом стандарте возникла в силу того, что по стандарту RFC-822 в тело почтового сообщения не могут быть включены некоторые специальные символы и восьмибитные символы.

Стандарт RFC-822 подробно описывает в заголовке почтового сообщения текстовое тело письма и механизм его рассылки, a MIME сориентирован на описание в заголовке письма структуры тела почтового сообщения и возможности составления письма из информационных единиц различных типов.

В стандарте зарезервировано несколько способов представления разнородной информации. Для этого используются специальные поля заголовка почтового сообщения:

• поле версии MIME, которое используется для идентификации сообщения, подготовленного в новом стандарте;

• поле описания типа информации в теле сообщения, которое позволяет обеспечить правильную интерпретацию данных;

• поле типа кодировки информации в теле сообщения, указывающее на тип процедуры декодирования;

• два дополнительных поля, зарезервированных для более детального описания тела сообщения.

Стандарт MIME разработан как расширяемая спецификация, в которой подразумевается, что число типов данных будет расти по мере развития форм представления данных.

Рассмотрим некоторые из полей MIME.

MIME-Version

Поле версии указывается в заголовке почтового сообщения и позволяет определить, что сообщение подготовлено в стандарте MIME. Формат поля:

MIME-Version: 1.0

Поле версии указывается в общем заголовке почтового сообщения и относится ко всему сообщению целиком.

Content-Type

Поле типа используется для описания типа данных, которые содержатся в теле почтового сообщения. Это поле сообщает программе чтения почты, какие преобразования необходимы для того чтобы сообщение правильно проинтерпретировать. Эта же информация используется и программой рассылки при кодировании/декодировании почты. Стандарт MIME определяет семь типов данных, которые можно передавать в теле письма. Для важнейших из них приведем краткие описания.

• Текст (text). Этот тип указывает на то, что в теле сообщения содержится текст. Основным подтипом типа text является plain – плоский текст. Под этим подразумевается неразмеченный текст. Для определения размеченного текста используют подтип richtext, а для определения гипертекста – подтип html;

• Смешанный тип (multipart). Этот тип определяет смешанный документ, который может состоять из фрагментов данных разного типа. Данный тип имеет ряд подтипов;

• Сообщение (message). Данный тип предназначен

для работы с обычными почтовыми сообщениями, которые напрямую не могут быть переданы по почте. Существует несколько подтипов:

– partial – подтип предназначен для передачи одного большого сообщения по частям для последующей автоматической сборки у получателя;

– External-Body – подтип позволяет ссылаться на внешние информационные источники;

– rfc822 – стандартный подтип типа message. Определяет сообщения стандарта RFC-822;

• Графический образ (image);

• Аудиоинформация (audio);

• Видеоинформация (video);

• Приложение (application).

Content-Transfer-Encoding

Тип кодирования сообщения. Поскольку передача сообщений происходит в неоднородной среде, неизбежны перекодирования почтового сообщения. Для того чтобы при получении данные были бы правильно распакованы и используется данное поле.

Программное обеспечение

Как и многое другое, взаимодействие между участниками обмена почтового сообщения основано на технологии клиент-сервер. Можно выделить три независимых этапа:

• взаимодействие по протоколу SMTP между почтовым клиентом и почтовым транспортным агентом;

• взаимодействие между транспортными агентами в процессе доставки почты;

• получение сообщения из почтового ящика пользователя почтовым клиентом по протоколу POP3 или IMAP.

Программа sendmail

Основным средством рассылки почты является программа sendmail, хотя она и является одной из старейших и сложных в конфигурации. Sendmail позволяет организовать почтовую службу локальной сети и обмениваться почтой с другими серверами почтовых служб через специальные шлюзы. Sendmail может быть сконфигурирована для работы с различными почтовыми протоколами. Обычно это протоколы UUCP (UNIX-UNIX–CoPy) и SMTP (Simple Mail Transfer Protocol).

Sendmail может интерпретировать два типа почтовых адресов:

• почтовые адреса SMTP;

• почтовые адреса UUCP.

Sendmail можно настроить для поддержки:

• списка адресов-синонимов;

• списка адресов рассылки пользователя;

• автоматической рассылки почты через шлюзы;

• очередей сообщений для повторной рассылки почты в случае отказов при рассылке;

• работы в качестве SMTP-сервера;

• доступа к адресам машин через сервер доменных имен BIND;

• доступа к внешним серверам имен и многого другого.

Принцип работы программы sendmail

Sendmail идеологически копирует обычную почтовую службу – почта отправляется с заданной периодичностью, перед этим сообщения собираются в очереди и только затем отсылаются.

Как уже упоминалось ранее, каждое сообщение состоит из трех частей: конверта, заголовка и тела сообщения:

конверт состоит из адреса отправителя, адреса получателя и специфической информации, которая используется программами подготовки, рассылки и получения почты. Конверт остается невидимым для отправителя и получателя почтового сообщения;

заголовок состоит из стандартных текстовых строк, которые содержат адреса, информацию о рассылке и данные. Данные из заголовка могут использоваться для оформления конверта сообщения;

тело сообщения следует после первой пустой строки вслед за заголовком сообщения. Все, что следует после этой строки, называется телом сообщения и передается по почте без изменений.

После постановки почтовых сообщений в очередь начинается ее рассылка. При этом выполняются следующие действия:

• адреса отправителя и получателя преобразуются в формат сети – получателя почты;

• если необходимо, то в заголовок сообщения добавляются отсутствующие данные;

• почта передается одной из программ рассылки почты.

Настройка программы sendmail

Настройка программы sendmail происходит при помощи конфигурационного файла /etc/sendmail.cf. Этот файл состоит из нескольких частей:

• описания компьютера (local information) – в данной секции описываются имя компьютера и т. п;

• описания макроопределений sendmail, отвечающих за работу в локальной сети;

• групп имен, которые используются программой для рассылки почты;

• номера версии файла конфигурации;

• опций команды sendmail – опции определяют режимы работы программы;

• доверенных пользователей;

• описания формата заголовка почтового сообщения – в данной секции определяются поля и их формат, которые отображаются в заголовке;

• правил преобразования адресов;

• описания программ рассылки;

• общего набора правил преобразования адресов;

• машинно-зависимой части общего набора правил преобразования адресов.

Обычно после инсталляции sendmail изменения, которые вносятся в файл конфигурации, касаются только имени хоста, домена и шлюзов. В современных дистрибутивах (таких как Red Hat) иногда не приходится делать даже этого.

Подробно о конфигурировании sendmail здесь рассказано не будет – разобраться в конфигурационном файле, который имеет около 100 Кбайт текста, весьма не просто. Для детального ознакомления с конфигурацией sendmail рекомендуется почитать книгу "UNIX – руководство системного администратора", а также документацию, идущую в комплекте с sendmail.

Поделиться:
Популярные книги

Пипец Котенку!

Майерс Александр
1. РОС: Пипец Котенку!
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Пипец Котенку!

Потомок бога 3

Решетов Евгений Валерьевич
3. Локки
Фантастика:
аниме
фэнтези
5.00
рейтинг книги
Потомок бога 3

Измена. Наследник для дракона

Солт Елена
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Измена. Наследник для дракона

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Релокант. Вестник

Ascold Flow
2. Релокант в другой мир
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Релокант. Вестник

Баронесса. Эхо забытой цивилизации

Верескова Дарья
1. Проект «Фронтир Вита»
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Баронесса. Эхо забытой цивилизации

Хорошая девочка

Кистяева Марина
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Хорошая девочка

Газлайтер. Том 14

Володин Григорий Григорьевич
14. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Газлайтер. Том 14

Невеста напрокат

Завгородняя Анна Александровна
Любовные романы:
любовно-фантастические романы
6.20
рейтинг книги
Невеста напрокат

Бестужев. Служба Государевой Безопасности. Книга четвертая

Измайлов Сергей
4. Граф Бестужев
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бестужев. Служба Государевой Безопасности. Книга четвертая

Земная жена на экспорт

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.57
рейтинг книги
Земная жена на экспорт

Идеальный мир для Лекаря 28

Сапфир Олег
28. Лекарь
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 28

Вернуть невесту. Ловушка для попаданки

Ардова Алиса
1. Вернуть невесту
Любовные романы:
любовно-фантастические романы
8.49
рейтинг книги
Вернуть невесту. Ловушка для попаданки

Развод, который ты запомнишь

Рид Тала
1. Развод
Любовные романы:
остросюжетные любовные романы
короткие любовные романы
5.00
рейтинг книги
Развод, который ты запомнишь