Шрифт:
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.