3.2.6.1. Принцип работы программы sendmail
Sendmail отправляет почту в два приема: сначала почтовые сообщения собираются в очереди, а затем отсылаются.
Каждое сообщение состоит из трех частей: конверта, заголовка и тела сообщения.
Конверт. Конверт состоит из адреса отправителя, адреса получателя и информации рассылки, которая используется программами подготовки, рассылки и получения почты. Конверт остается невидимым для отправителя и получателя почтового сообщения.
Заголовок. Заголовок состоит из стандартных текстовых строк, которые содержат адреса, информацию о рассылке и данные. Заголовок может быть частью подготовленного пользователем текстового файла, а может быть подготовлен и добавлен к телу сообщения программой подготовки почты. Данные из заголовка могут быть использованы для оформления конверта сообщения.
Тело сообщения. Первая пустая строка в файле почтового сообщения отделяет заголовок от тела сообщения. Все, что следует после этой строки, называется телом сообщения и передается по почте без изменений.
Sendmail может быть вызвана:
-
программой подготовки сообщений для отправки уже подготовленных сообщений;
-
программой получения почты для пересылки полученной из сети почты;
-
непосредственно пользователем для отправки по почте файла или короткого сообщения;
-
почтовым демоном, которым обычно является сама sendmail.
После того, как почта собрана, начинается ее рассылка. При этом выполняются следующие действия:
-
адреса отправителя и получателя преобразуются в формат сети-получателя почты;
-
если необходимо, то в заголовок сообщения добавляются строки, позволяющие получателю отвечать на принятое сообщение (например: FROM: <адрес>);
-
почта передается одной из программ рассылки почты.
На рисунке 3.18 представлена схема функционирования почтового сервера на базе программы sendmail.
Рис. 3.18. Схема функционирования почтового сервера на базе программы Sendmail
Когда программа приема почты получает сообщение, то она передает его программе sendmail для последующей рассылки. Если сообщение достигло машины адресата, то оно отправляется программой местной рассылки в почтовый ящик пользователя.
Первый этап рассылки - сбор сообщений. Sendmail получает почтовые сообщения из трех источников:
-
командной строки или стандартного ввода;
-
через SMTP-протокол (из сети);
-
из очереди сообщений.
При получении сообщений из командной строки или стандартного ввода, sendmail вызывается пользователем с указанием адреса доставки сообщения. При этом выполняются следующие действия: определяется адрес отправителя, выбирается из командной строки адрес получателя и оба адреса преобразуются в соответствии с описанием файла конфигурации, определяется способ доставки сообщения, размещается заголовок в оперативной памяти для последующих преобразований, а тело сообщения размещается во временном файле для отправки без изменений.
При получении сообщений по протоколу SMTP, sendmail используется как программа клиента и сервера протокола. Протокол определен в RFC-821 и является основным для рассылки почты в Internet. В этом случае sendmail запускается как демон, который "слушает" порт TCP и в случае получения сообщения устанавливает соединение с удаленным клиентом SMTP. Как правило, таким клиентом является другая программа sendmail.
Программа подготовки почты на локальной машине также может использовать SMTP. Для этого sendmail открывает канал (pipe) межпроцессного обмена.
При получении сообщений из очереди используются временные файлы очередей. Эти очереди используются для хранения неразосланных сообщений. Сообщение хранится в двух файлах. В одном файле хранится тело сообщения, а в другом конверт и заголовок сообщения. Обычно sendmail опрашивает очереди через определенные администратором почтового сервера промежутки времени, на предмет наличия в них неразосланных сообщений.
Вторая стадия рассылки почты - рассылка сообщений.
Как только одним из описанных выше способов sendmail получила сообщение, делается попытка его отправить по адресу. Для этого sendmail определяет три параметра: программу рассылки, узел сети и получателя. Эта процедура производится по правилам, которые содержатся в файле конфигурации. Sendmail сохраняет одну копию тела сообщения во временном файле, а заголовок загружает в оперативную память. Для каждого сообщения программа доставки (рассылки) сообщений вызывается отдельно. Если сообщение должно быть доставлено на разные машины, то для каждой из машин также вызывается своя программа доставки. Некоторые программы могут обслуживать сразу несколько абонентов одной машины, если это невозможно, то для каждого абонента вызывается также своя программа доставки. Рассматривают два типа рассылки: на удаленную машину и местную рассылку.
Рассылка на удаленную машину. Для вызова программы рассылки sendmail открывает pipe и запускает программу рассылки, командная строка которой находится в файле конфигурации. Sendmail записывает заголовок и тело сообщения в pipe. Если программа рассылки не использует протокол SMTP, то адрес получателя передается через pipe. Если используется SMTP, то открывается двунаправленный канал для интерактивного взаимодействия с удаленным сервером SMTP. Если в качестве транспортного протокола используется TCP, то sendmail не запускает внешнюю программу рассылки, а сама инициирует TCP-соединение с удаленным сервером SMTP.
Доставка местной почты. Если sendmail определяет, что адреса доставки местные, то происходит обращение к файлу адресных синонимов и производится преобразование адресов (расширение). Файл адресных синонимов можно использовать для перенаправления почты в файлы или для обработки местными программами. Пользователь может иметь и свой собственный файл адресных синонимов для управления рассылкой персональной почты. После преобразования адресов почта отправляется программе местной рассылки (например rmail).
Важным моментом при работе sendmail является алгоритм определения типа адресов. При использовании стандартного файла конфигурации применяются следующие правила: почта рассылается в соответствии с форматом адреса получателя, адреса при этом бывают местные, UUCP и SMTP.
Местные адреса имеют вид:
user
user@localhost
user@localhost.localdomain
user@alias
user@alias.localdomain
user@[local.host.internet.address]
localhost!user
localhost!localhost!user
user@localhost.uucp
Местный адрес - это адрес, который распознается как адрес на машине, с которой осуществляется отправка почты.
Адреса UUCP имеют вид:
host!user
host!host!user
user@host.uucp
Если машина, с которой отправляется почта, имеет прямую линию связи по протоколу UUCP со следующей машиной (в адресе), то почта передается на эту машину, если такого соединения нет, то почта не рассылается и выдается сообщение об ошибке. Файл конфигурации должен содержать детальное описание маршрутов для пересылки сообщений на машины по протоколу UUCP.
Адреса SMTP - это адреса, описанные в стандарте RFC-822 или стандартные адреса Internet. Эти адреса имеют вид:
usr@host
usr@host.domain
<@host1,@host2,@host3:user@host4>
user@[remote.host`s.internet.address]
Почта с адресами SMTP рассылается по протоколу SMTP.
Если в системе для адресации используется BIND-сервер, то sendmail может определять адреса получателей, используя сервис BIND. Если BIND не используется, то sendmail сама определяет адреса.
При рассылке почты можно использовать и смешанную адресацию:
user%hostA@hostB - почта отправляется с машины hostB на машину hostA
user!hostA@hostB - почта отправляется с машины hostB на машину hostA
hostA!user%hostB - почта отправляется с hostA на hostB
Подводя итог под обсуждением принципов работы sendmail следует специально подчеркнуть тот факт, что почта реально рассылается двумя принципиально разными способами. При использовании протокола UUCP почта рассылается по принципу "stop-go", т.е. сообщения передаются от машины к машине по указанному в адресе пути. Следует ясно представлять, если почта ушла с машины отправителя, то это не означает, что она поступит получателю. Промежуточная машина может вернуть почту назад, если не сможет разослать. Электронная почта действительно работает как система обычной почты, физически перемещая и храня сообщения на промежуточных почтовых станциях. При работе по протоколу SMTP почта реально отправляется только тогда, когда установлено интерактивное соединение с программой-сервером на машине-получателе почты. При этом происходит обмен командами между клиентом и сервером протокола SMTP в режиме on-line. При смешанной адресации доставка почты происходит по смешанному сценарию. Как шла доставка и как маршрутизировалось сообщение можно определить из заголовка сообщения, которое вы получили.
- Администрирование в информационных системах
- Глава 1. Информационные процессы в системах управления. Цели, задачи и функции администрирования в информационных системах
- Глава 2. Программное и техническое обеспечение современных ис и технологий управления организацией
- Глава 3. Методология построения администрирования и его средства
- Глава 4. Обеспечение иб в администрировании ис
- Глава 5. Управление конфигурацией и ресурсами ис
- Глава 6. Сетевые службы и их мониторинг
- Глава 7. Управление пользователями, сетевыми службами, дисками, службой печати
- 1.Теория администрирования сетей tcp/ip
- 1.1. Организация сети tcp/ip
- 1.2. Межсетевой обмен в сетях tcp/ip
- 1.3. Основные протоколы стека tcp/ip
- IPing - новое поколение протоколов ip
- 1.4. Принципы построения ip-адресов
- 1.5. Подсети
- 1.6.Порты и сокеты
- 1.7.Основные принципы ip-маршрутизации
- 1.8.Информационные сервисы Internet
- 1.9 Система Доменных Имен
- 1.10 Электронная почта в Internet
- 1.11 Взаимодействие отдельных эвм друг с другом
- 1.12 Обмен файлами. Служба ftp
- 2. Администрирование сетей
- 2.1. Учетные записи и группы безопасности
- 2.1.1. Понятие пользовательской учетной записи
- 2.1.2.Встроенные пользовательские учетные записи Windows 2000/xp
- 2.1.3. Группы безопасности
- 2.1.4.Типы учетных записей
- 2.1.5. Встроенные группы безопасности
- 2.2. Администрирование файлов и папок
- 2.2.1. Режимы доступа к папкам
- 2.2.2. Права доступа
- 2.3.3 Права доступа при копировании (перемещении) файлов.
- 2.3. Сервисы сетей ncp/ip
- 2.3.1. Протокол динамической конфигурации клиентских машин
- Администрирование информационных систем Правила эксплуатации и ответственные за их соблюдение
- Проектирование информационных систем и их приемка
- Защита от вредоносного программного обеспечения
- Обслуживание систем
- Сетевое администрирование
- Защита носителей информации
- Обмен данными и программным обеспечением
- Проблема организации администрирования крупных информационных систем.
- Администрирование в информационных системах
- 1. Ведение. Основные проблемы администрирования сетей tcp/ip и информационных технологий Internet
- 1.1. Организация сети tcp/ip
- 1.2. Подключениe локальной или корпоративной сети к Internet
- 1.3. Маршрутизация в сетях tcp/ip
- 1.4. Система доменных имен
- 1.5. Обмен электронной почтой
- 1.6. Организация информационного обслуживания на основе технологий Internet
- 1.7. Проблемы безопасности сетей tcp/ip
- 2. Основы межсетевого обмена в сетях tcp/ip
- 2.1. Структура стека протоколов tcp/ip
- 2.2. Основные протоколы стека tcp/ip
- 2.2.1. Протоколы slip и ppp
- 2.2.2. Протокол arp. Отображение канального уровня на уровень межсетевого обмена
- 2.2.3. Протокол ip
- 2.8. Формат пакета Ipv4
- 2.2.4. IPing - новое поколение протоколов ip
- 2.3. Принципы построения ip-адресов
- 2.4. Подсети
- 2.5. Порты и сокеты
- 2.6. Основные принципы ip-маршрутизации
- 2.7. Настройка операционной системы и сетевые интерфейсы
- 2.8. Настройка сетевых интерфейсов
- 2.8.1. Настройка Ethernet-интерфейса
- 2.8.2. Настройка slip
- 2.8.3. Настройка интерфейса ppp
- 2.9. Маршрутизация, протоколы динамической маршрутизации, средства управления маршрутами
- 2.9.1. Статическая маршрутизация
- 2.9.2. Динамическая маршрутизация
- 2.9.3. Программа routed
- 2.9.4. Программа gated
- 2.10 Анализ и фильтрация tcp/ip пакетов
- 3. Информационные сервисы Internet
- 3.1. Система Доменных Имен
- 3.1.1. Принципы организации dns
- 3.1.3. Регистрация доменных имен
- 3.1.4. Серверы доменных имен и механизм поиска ip-адреса
- 3.1.5. Настройка resolver
- 3.1.6. Программа named
- 3.1.6.1. Файлы настройки named
- 3.1.6.2. Запись "Start Of Authority"
- 3.1.6.3. Запись "Name Server"
- 3.1.6.4. Адресная запись "Address"
- 3.1.6.5. Запись Mail eXchanger
- 3.1.6.6. Запись назначения синонима каноническому имени "Canonical Name"
- 3.1.6.7. Записи типа "Pointer"
- 3.1.6.8. Запись типа hinfo
- 3.1.6.9. Запись определения информационных сервисов "Well Known Services"
- 3.1.6.10. Команды описания зоны
- 3.1.6.11. Файлы описания зоны
- 3.1.7. Примеры настроек программы named и описания зон
- 3.1.7.1. Небольшой поддомен в домене ru
- 3.1.7.2. Описание "прямой" и "обратной" зон для поддомена определенного на двух подсетях
- 3.1.7.3. Делегирование поддомена внутри домена
- 3.1.8. Программа nslookup
- 3.1.9. Dns и безопасность
- 3.2. Электронная почта в Internet
- 3.2.1. Принципы организации
- 3.2.2. Формат почтового сообщения (rfc-822)
- 3.2.3. Формат представления почтовых сообщений mime и его влияние на информационные технологии Internet
- 3.2.3.1. Поле версии mime (mime-Version)
- 3.2.3.2. Поле типа содержания тела почтового сообщения (Content-Type)
- 3.2.3.3. Поле типа кодирования почтового сообщения (Content-Transfer-Encoding)
- 3.2.3.4. Дополнительные необязательные поля
- 3.2.4. Протокол обмена почтой smtp (Simple Mail Transfer Protocol)
- 3.2.5. Интерфейс Eudora
- 3.2.6. Системы почтовой рассылки (программа sendmail)
- 3.2.6.1. Принцип работы программы sendmail
- 3.2.7. Настройка программы sendmail
- 3.2.7.1. Тестирование Sendmail и способы запуска
- 3.3. Эмуляция удаленного терминала. Удаленный доступ к ресурсам сети
- 3.3.1. Протокол Telnet
- 3.3.2. Интерфейс пользователя (telnet) и демон (telnetd)
- 3.3.2.1. Программа-сервер (telnetd)
- 3.3.2.2. Программа-клиент (telnet)
- 3.3.3. Организация модемных пулов, настройка оборудования. Квоты пользователей
- 3.4. Обмен файлами. Служба архивов ftp
- 3.4.1. Типы информационных ресурсов
- 3.4.2. Протокол ftp
- 3.4.3. Сервер протокола - программа ftpd
- 3.5. Администрирование серверов World Wide Web
- 3.5.1. История развития, отцы-основатели, современное состояние
- 3.5.2. Понятие гипертекста
- 3.5.3. Основные компоненты технологии World Wide Web
- 3.5.4. Архитектура построения системы
- 3.5.4.1. Язык гипертекстовой разметки html
- 3.5.4.2. Принципы построения и интерпретации html
- 3.5.5. Протокол обмена гипертекстовой информацией (HyperText Transfer Protocol, http 1.0.)
- 3.5.5.1. Форма запроса клиента
- 3.5.5.2. Методы доступа
- 3.5.5.3. Ответ сервера
- 3.5.5.4. Защита сервера от несанкционированного доступа
- 3.5.6. Universal Resource Identifier - универсальный идентификатор. Спецификация универсального адреса информационного ресурса в сети
- 3.5.6.1. Принципы построения адреса www
- 3.5.6.2. Схемы адресации ресурсов Internet
- 3.5.7. Common Gateway Interface - средство расширения возможностей технологии World Wide Web
- 3.5.7.1. Механизмы обмена данными
- 3.5.7.2. Практика применения скриптов cgi
- 3.5.8. Выбор и установка сервера протокола http и другого программного обеспечения базы данных World Wide Web
- 3.5.8.1. Структура базы данных сервера www
- 3.5.8.2. Редакторы html-документов
- 3.5.8.3. Графические редакторы и их особенности
- 3.5.8.4. Серверы протокола http
- 3.5.8.5. Выбор, установка и настройка сервера
- 3.5.8.6. Обслуживание запросов
- 3.5.9. Организация информационной службы на основе технологии World Wide Web
- 3.5.9.1. Статистика доступа к системе и ее анализ
- 3.6. Информационно-поисковые системы Internet
- 3.6.1. Архитектура современных информационно-поисковых систем World Wide Web
- 3.6.2. Информационные ресурсы и их представление в информационно-поисковой системе
- 3.6.3. Информационно-поисковый язык системы
- 3.6.4. Типы информационно-поисковых языков
- 3.6.5. Традиционные информационно-поисковые языки и их модификации
- 3.6.6. Информационно-поисковые языки Internet
- 3.6.7. Интерфейс системы
- 5. Литература
- Администрирование сети и сервисов internet учебное пособие
- Содержание
- Введение в ip-сети
- Принципы построения составных сетей
- Локализация трафика и изоляция сетей
- Согласование протоколов канального уровня
- Маршрутизация в сетях с произвольной топологией
- Сетевой уровень и модель osi
- Функции сетевого уровня
- Протоколы передачи данных и протоколы обмена маршрутной информацией
- Стек протоколов tcp/ip История и перспективы стека tcp/ip
- Структура стека tcp/ip. Краткая характеристика протоколов
- Адресация в ip-сетях Типы адресов: физический (mac-адрес), сетевой (ip-адрес) и символьный (dns-имя)
- Три основных класса ip-адресов
- Соглашения о специальных адресах: broadcast, multicast, loopback
- Отображение физических адресов на ip-адреса: протоколы arp и rarp
- Отображение символьных адресов на ip-адреса: служба dns
- Автоматизация процесса назначения ip-адресов узлам сети - протокол dhcp
- Протокол межсетевого взаимодействия ip
- Формат пакета ip
- Управление фрагментацией
- Маршрутизация с помощью ip-адресов
- Пример взаимодействия узлов с использованием протокола ip
- Структуризация сетей ip с помощью масок
- Протокол доставки пользовательских дейтаграмм udp
- Зарезервированные и доступные порты udp
- Мультиплексирование и демультиплексирование прикладных протоколов с помощью протокола udp
- Формат сообщений udp
- Протокол надежной доставки сообщений tcp
- Сегменты tcp
- Порты и установление tcp-соединений
- Концепция квитирования
- Реализация скользящего окна в протоколе tcp
- Выбор тайм-аута
- Реакция на перегрузку сети
- Формат сообщений tcp
- Протокол обмена управляющими сообщениями icmp Общая характеристика протокола icmp
- Формат сообщений протокола icmp
- Сообщения о недостижимости узла назначения
- Перенаправление маршрута
- Протоколы обмена маршрутной информацией стека tcp/ip
- Дистанционно-векторный протокол rip
- Комбинирование различных протоколов обмена. Протоколы egp и bgp сети Internet
- Протокол состояния связей ospf
- Развитие стека tcp/ip: протокол iPv.6
- Администрирование информационных систем (tcp/ip)
- Преподаватели
- Аннотация
- Знания и умения, полученные в результате обучения
- Зачет и экзамен
- Требования к начальному уровню знаний
- Программа курса
- Полезные Интернет-ссылки