Почтовый сервер на Linux. Почтовый сервер

Введение

Еще в давние времена люди испытывали потребность в обмене информацией и организовывали его на государственном уровне. Поэтому почта - одно из наиболее четко организованных учреждений в мире.

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

Основными объектами, составляющими систему электронной почты, являются специальные компьютеры, называемые почтовыми серверами.

Почтовый сервер

Почтовые серверы - это серверы, получающие и отправляющие электронные сообщения.

Сервер, получающий электронные сообщения, работает по протоколу POP (Post Office Protocol).

Сервер, отправляющий электронные сообщения работает по протоколу SMTP (Simple Mail Transfer Protocol).

Почтовый сервер, сервер электронной почты, мейл-сервер -- в системе пересылки электронной почты так обычно называют агент пересылки сообщений (англ. mail transfer agent, MTA). Это компьютерная программа, которая передаёт сообщения от одного компьютера к другому. Обычно почтовый сервер работает «за кулисами», а пользователи имеют дело с другой программой -- клиентом электронной почты (англ. mail user agent, MUA).

Рис. 1.

К примеру, в распространённой конфигурации агентом пользователя является Outlook Express. Когда пользователь набрал сообщение и посылает его получателю, почтовый клиент взаимодействует с почтовым сервером, используя протокол SMTP. Почтовый сервер отправителя взаимодействует с почтовым сервером получателя (напрямую или через промежуточный сервер -- релей). На почтовом сервере получателя сообщение попадает в почтовый ящик, откуда при помощи агента доставки сообщений (mail delivery agent, MDA) доставляется клиенту получателя. Часто последние два агента совмещены в одной программе, хотя есть специализированные MDA, которые в том числе занимаются фильтрацией спама. Для финальной доставки полученных сообщений используется не SMTP, а другой протокол -- часто POP3 или IMAP -- который также поддерживается большинством почтовых серверов. Хотя в простейшей реализации MTA достаточно положить полученные сообщения в личный каталог пользователя в файловой системе центрального сервера («почтовый ящик»).

Разработчики программного обеспечения часто действуют по принципу «чем больше, тем лучше», и их можно понять: покупателей того или иного программного продукта - великое множество, а требования к товару у каждого различны. Создавая универсальный продукт, разработчики ориентируются на наиболее широкую аудиторию и, зачастую сами того не осознавая, создают проблемы для большей ее части. Судите сами: разнообразные функциональные возможности продукта «утяжеляют» программное обеспечение и делают его настройку проблематичной для ИT-служб компаний. Ситуация только усугубляется, когда речь заходит о фирмах, относящихся к категории среднего и малого бизнеса (СMБ). Перед такими компаниями встает нетривиальная задача выбора решения, обладающего гибкими возможностями настройки, масштабируемостью и, что немаловажно, привлекательной ценой.
На самом деле вариантов выбора множество - от решений с мировым именем до продуктов Open Source. Вопрос в том, каковы ежедневные задачи небольших и средних компаний, а также насколько каждое из этих решений удовлетворяет потребности среднестатистической компании данного сектора бизнеса.

Критерии выбора

Очевидно, что необходимо формализовать критерии выбора почтового решения. Для того чтобы сделать это, нужно очертить круг задач, выполняемых почтовым сервером, и определить первичный подход, применяемый при его организации. Следует также помнить, что круг потребностей зачастую зависит от позиции компании на вертикальных рынках: логично предположить, что задачи, поставленные перед ИT-службой компании, могут варьироваться в зависимости от отрасли.

Если взять за основу среднестатистическую компанию из указанного сектора бизнеса, то можно выделить следующие факторы, согласно которым может проводиться выбор почтового решения. В первую очередь оно должно обладать набором функций, необходимых для выполнения тех или иных задач. Однако перегруженность решения - больший минус, нежели отсутствие исчерпывающего функционала. Идеальное решение должно быть доступно по цене, которая к тому же будет уменьшаться в зависимости от количества рабочих станций. Наконец, программный продукт, интегрируемый в компании из сектора СМБ, безусловно, должен отличаться простотой в использовании: настройка приложения не должна требовать высокой квалификации ИT-специалиста.

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

Любой каприз за ваши деньги

Решения, предназначенные для корпораций, часто находят применение и в среде с меньшим количеством рабочих станций. Обычно такой продукт покупается у компании, предлагающей почтовый сервер как часть платформы для корпоративной инфраструктуры. Таким образом, покупатель получает функционально богатый продукт, способный решать множество корпоративных задач не только из сферы применения почтовых программ. Кроме того, продукт из семейства «тяжелых» корпоративных систем предполагает глубокую интеграцию с другими компонентами ИT-инфраструктуры компании, как правило, приобретаемыми вместе с почтовой системой.

Примерами подобных продуктов могут служить решения с мировым именем: Microsoft Exchange и IBM Lotus/Domino. Система Microsoft Exchange Server позиционируется как платформа для организации корпоративной системы электронной почты, а также групповой работы. Формально существует ее версия и для небольших предприятий, входящая в состав пакета Microsoft Small Business Server. Главной особенностью данного продукта является тесная интеграция с инфраструктурой сетей на основе Windows и, как следствие, со службой каталогов Active Directory.

Exchange - система для сетей, полностью построенных под управлением Windows. Использование ее в смешанных сетях сопряжено с множеством сложностей.

Пакет IBM Lotus/Domino - еще один яркий представитель систем подобного класса. В отличие от Microsoft Exchange Server, он ориентирован скорее на полную организацию работы внутри компании, а функциональность электронной почты реализована в нем в качестве дополнения к корпоративной ИT-платформе. Обычно этот программный продукт применяется в совокупности с приложениями, позволяющими автоматизировать различные процессы в компании.

Основная часть пользователей рассмотренных выше почтовых систем - крупные корпоративные заказчики, хотя в некоторых случаях компании - производители подобного программного обеспечения, изначально позиционированного для enterprise-сектора, создают пакеты, адаптированные для небольших клиентов, с целью захватить некоторый сегмент СМБ-рынка. Использование таких программных продуктов в среде, отличной от той, для которой разрабатывалось решение, не всегда отвечает предъявляемым к нему требованиям. В частности, богатый и исчерпывающий функционал нужен далеко не всем заказчикам, а между тем большое количество функций практически всегда означает более сложную настройку решения. Как следствие, чем сложнее решение, приобретенное компанией, тем больше средств придется потратить на его поддержку, поскольку система, требующая скрупулезной и детальной настройки, предполагает найм высококвалифицированного ИT-специалиста либо обучение имеющихся в компании кадров.

Безопасность - фактор, который тоже немаловажен для компаний любого масштаба, - находится под вопросом: ввиду распространенности подобных решений интерес к ним со стороны злоумышленников весьма высок. Таким образом, индустриальные системы периодически подвержены тем или иным уязвимостям.

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

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

Сделай сам

Особенность почтовых решений на основе Linux/UNIX заключается в принципиально ином подходе к организации почтового сервера. Приобретая коммерческий продукт, пользователь получает готовое универсальное решение, а выбрав сервер на основе Linux/UNIX - только техническую организацию процесса передачи почты. Дело в том, что подобные почтовые системы представляют собой приложение категории Mail Transfer Agent (MTA), выполняющее обмен почтой между сервером и клиентом. Если необходима какая-то дополнительная функциональность, то ее можно обеспечить установкой и настройкой дополнительных модулей. Таким образом, при выборе Linux/UNIX-решения пользователь получает своего рода конструктор, из которого должен самостоятельно собрать почтовый сервер с необходимой функциональностью.

Из программ данного класса стоит отметить Sendmail - старейшее приложение рынка MTA, первые версии которого датируются началом 80-х годов прошлого века. В силу своей наследственности оно обладает множеством недостатков, главным образом связанных с уязвимостями и его сложной структурой. Для требовательных корпоративных заказчиков предлагается платный дистрибутив. Бесплатная версия предназначена для удовлетворения индивидуальных нужд пользователей.

Система Postfix изначально создавалась как простой, безопасный и быстрый вариант приложения, выполняющего те же функции, что и Sendmail. Многие недостатки старого подхода были устранены в ней благодаря новому взгляду на структуру почтовой службы. Основным преимуществом Postfix является модульная архитектура: в решении применяются модули, каждый из которых отвечает за минимальный набор простейших функций. За счет этого разработчики программы смогли создать более безопасное решение, чем Sendmail.

Exim - еще один представитель систем класса MTA, обладающий, как и его предшественник Sendmail, монолитной структурой. Решение является более простым, чем Sendmail, и входит в состав ряда дистрибутивов Linux/UNIX-систем.

Qmail, как и Postfix, имеет модульную структуру, распространяется без лицензии и, что немаловажно, давно не поддерживается автором - все современные варианты программы имеют дополнительные модули сторонних разработчиков. Такой подход, с одной стороны, обеспечивает гибкость решения: администратор сервера может собрать из подручных материалов практически любое решение, отвечающее входным данным. С другой стороны, для создания полноценного и безопасного сервера из запчастей необходима высокая квалификация ИT-специалиста, но даже в этом случае никто не может гарантировать хорошие результаты, поскольку все продукты созданы по открытой лицензии, а значит, не имеют центра технической поддержки, куда можно обратиться в случае проблемы. Безусловно, существуют сообщества и форумы, где можно спросить совета, но такой подход, согласитесь, все же отличается от варианта, когда программное обеспечение приобретается вместе с гарантией и технической поддержкой. Кроме того, ни одно из описанных выше решений не имеет русской локализации, хотя русскоязычная документация для самых популярных представителей этого класса существует.

Мал, да удал

Отличие коммерческих почтовых серверов от двух вышеперечисленных категорий в первую очередь заключается в способах разработки. Коммерческий почтовый сервер создается, как правило, небольшой компанией, для которой является либо основным продуктом, либо одним из линейки смежных решений. Такой метод развития почтовой системы наиболее выгоден для компании, поскольку позволяет сосредоточиться на разработке конкретного продукта. Целевой аудиторией подобных решений являются фирмы, занятые в секторе СМБ.

Kerio MailServer - решение, разработанное американской компанией Kerio Technologies, - позиционируется как простой, безопасный и в то же время функциональный продукт, подходящий для средних и малых компаний. Его интерфейс прост в использовании, а сама программа удобна в настройке.

MDaemon - продукт компании Alt-N Technologies - тоже позволяет сравнительно быстро развернуть почтовый сервер. Однако позиция его разработчика отличается от позиции фирмы Kerio Technologies. Компания Alt-N Technologies уделяет больше внимания функциональности решения и меньше - удобству работы и интерфейсу.

Еще один продукт из данной категории - CommunigatePro - не является почтовым сервером в чистом виде - это платформа для корпоративных коммуникаций, некий гибрид между крупным корпоративным решением и коммерческим почтовым сервером. В России, однако, компании из сектора СМБ используют данное программное обеспечение исключительно как почтовый сервер.

Преимуществом коммерческого программного обеспечения для серверов является отсутствие жесткой привязки к конкретной платформе: у большинства решений в активе поддерживаемых систем серверы на базе как Windows, так и Linux, а Kerio MailServer и CommunigatePro поддерживают даже Mac OS. Еще один плюс коммерческих решений - простота настройки. На практике это означает, что для настройки сервера не требуется глубоких знаний в области администрирования почтовых служб. Кроме того, коммерческое программное обеспечение, продающееся на российском рынке, чаще всего русифицировано и снабжается подробной документацией на русском языке. Для Kerio MailServer и MDaemon, кроме того, предоставляется квалифицированная русскоязычная техническая поддержка.

Безусловно, у подобного коммерческого ПО есть и минусы: при необходимости расширения его функциональности компании придется решать эту задачу своими средствами, поскольку зачастую такие продукты не обладают требуемыми модулями. Коммерческий сервер создается для удовлетворения основных нужд среднестатистической компании, давая выигрыш как в цене, так и в качестве оказываемых услуг.

Объективная реальность

Портал SecurityLab.ru провел исследование, посвященное проблематике почтовых серверов в секторе СМБ, в ходе которого были опрошены респонденты, имеющие отношение к настройке почтовых серверов в компаниях (рис. 1).

Рис. 1. Использование почтовых серверов в компаниях различного размера

Результаты исследования впечатляют. Пальму первенства удерживают Microsoft Exchange и Linux-системы (Sendmail/Postfix). Кроме того, с увеличением размера компании наблюдается снижение уровня использования Linux-систем, что вполне естественно, поскольку с ростом компании доверие к открытому программному обеспечению падает (финансовые компании, к примеру, крайне отрицательно относятся к перспективе применения программного обеспечения с открытым кодом).

В категории коммерческих сервисов все иначе: с большим отрывом в малых компаниях лидирует Kerio MailServer, при этом чем крупнее фирма, тем меньше доля применяемого в ней продукта на рынке почтовых серверов. Это вполне логично: коммерческие почтовые системы создаются именно для сектора малого и среднего бизнеса, а большие корпорации используют такое ПО скорее по принципу преемственности.

Безусловно, применение того или иного программного обеспечения сопряжено с определенными трудностями. Портал SecurityLab.ru попытался выяснить, как часто те или иные трудности возникают при настройке и управлении почтовыми серверами и каков процент положительных откликов для каждого решения. Голоса респондентов распределились следующим образом: в корпоративном секторе процент удовлетворенности решением достаточно высок, а явного лидера определить сложно: Microsoft Exchange и IBM Lotus имеют равные результаты, наблюдается лишь небольшой отрыв Microsoft Exchange в части функциональности (рис. 2).

Рис. 2. Процент удовлетворенности пользователей почтовым сервером
в корпоративном секторе
(по данным опроса Security Labs)

В секторе Linux-решений наблюдается больший разброс данных, при этом мастодонт Sendmail занимает нижние позиции - очевидно, в силу монолитности архитектуры и большого количества уязвимостей. Лидером по общим показателям является Exim, но высоких оценок в области управления решением не получил ни один продукт (рис. 3).

Рис. 3. Процент удовлетворенности пользователей почтовым сервером
в секторе Linux-решений
(по данным опроса Security Labs)

Совсем иначе обстоят дела в корпоративном секторе: на фоне типичных общих показателей удовлетворенности, безопасности и функциональности резко выделяется фактор управления решением (с большим отрывом в этой области лидирует Kerio MailServer). Очевидно, что для коммерческих серверов, предназначенных для использования в небольших компаниях, главным критерием является простота применения и настройки, поскольку для компаний среднего и малого бизнеса создание большой высококвалифицированной ИT-службы чаще всего не является приоритетом (рис. 4).

Рис. 4. Процент удовлетворенности пользователей почтовым сервером
в секторе коммерческих серверов
для небольших компаний (по данным опроса Security Labs)

Стоимость решения - тоже немаловажный фактор, и соотношение «цена/качество» в отношении коммерческих серверов имеет большое значение. Например, цена за одно рабочее место может составлять от 692 руб. для Kerio MailServer до 1425 руб. для MDaemon. Решения на базе Exchange и IBM Lotus/Domino стоят на порядок дороже.

Таким образом, на данный момент для компаний, занятых в сфере СМБ, наиболее выгодным представляется использование именно коммерческих почтовых серверов. Тенденций, ведущих к увеличению доли коммерческих почтовых серверов, сейчас две: во-первых, легализация программного обеспечения, в связи с чем многие компании переходят с «тяжелого», неповоротливого решения для крупных корпораций (например, Microsoft Exchange) на более легкие, быстрые и удобные аналоги из коммерческой сферы; во-вторых, отказ от применения программного обеспечения с открытым кодом часто продиктован стремлением компании сохранить коммерческую тайну - в этом случае выбор тоже будет сделан в пользу почтового сервера на коммерческой основе. Кроме того, отказываться от Linux-решений компанию заставляют такие факторы, как недостаточная квалификация ИT-персонала и необходимость в квалифицированной технической поддержке. Выбирая коммерческий почтовый сервер, компания часто идет по пути наименьшего сопротивления, но кто сказал, что он плох?

Почтовый сервер - это программа, созданная для возможности осуществления информационного обмена между компьютерами посредством электронных сообщений. Работа с такими сообщениями происходит с помощью использования специального программного обеспечения - почтового клиента.

На почтовом сервере есть два основных агента, отвечающих за проведение наиболее значимых операций: отправки (MTA - Mail Transfer Agent) и получения данных (MDA - Mail Delivery Agent). Наиболее популярными почтовыми серверами на данный момент являются следующие:

  • Gmail;
  • Rambler;
  • Yandex;
  • Mail.ru;
  • Ukr.net;
  • Outlook.

Протоколы почтовых серверов

Осуществление любой операции на почтовом сервере требует наличия определенных протоколов, которые имеют свои обязанности, функции и возможности для взаимодействия. Например, MTA в качестве рабочего протокола использует SMTP (Simple Mail Transfer Protocol), а для MDA характерно применение POP3, IMAP и других. Основной задачей SMTP-протокола является проведение отправки сообщений получателю. Данный процесс происходит в несколько последовательных этапов:

  1. Установка связи почтового клиента с SMTP-сервером.
  2. Запрос на получение IP-адреса.
  3. Проверка наличия данных клиента в базе с последующей передачей на POP3-сервер и помещением их в электронный ящик пользователя.

POP3 (Post Office Protocol 3) - первый созданный протокол, обеспечивающий удаленный доступ к электронному ящику. POP3 отличается простотой и надежностью, а схема его работы включает в себя три основных действия:

  • авторизацию на почтовом сервере;
  • транзакцию данных;
  • обновление.

IMAP (Internet Message Access Protocol) представляет собой усовершенствованный и более сложный по сравнению с POP3 протокол работы с удаленными почтовыми серверами. Сервер IMAP имеет 4 состояния работы:

  • без прохождения аутентификации на почтовом сервере;
  • с прохождением аутентификации на почтовом сервере;
  • нахождение в состоянии выбора;
  • завершение работы и выход.

Email-рассылка с помощью SMTP

Email-рассылка - один из наиболее эффективных и действенных способов информирования на почтовом сервере для привлечения и удержания клиентов, а также для поддержания их интереса к продукту или услуге. Рассылка проходит по протоколу SMTP, идеально подходящему для этой цели. Он позволяет проверить правильность установленных настроек, а также выдавать разрешения компьютеру, с которого происходит пересылка.

Доставка отправленной почты проверяется сервером, а при возникновении ошибки отправитель получает уведомление о сбое, поэтому рассылка email-сообщений проходит наиболее эффективно, безопасно и быстро с помощью данного протокола.

Южно-Уральский государственный университет

Миасский машиностроительный факультет

Кафедра «Управление качеством и стандартизация»

Курсовая работа

По информатике

На тему «Почтовый сервер»

Введение _____________________________________________________________3

Почтовый сервер _____________________________________________________________4

Электронная почта ____________________________________________________________5

Структура адреса электронной почты ____________________________________________6

Что такое домен ______________________________________________________________7

История знака @______________________________________________________________9

ПО электронной почты _______________________________________________________11

Mail.ru______________________________________________________________________12

Yahoo! Mail _________________________________________________________________15

Rambler.ru __________________________________________________________________17

Ведущие почтовые клиенты ___________________________________________________17

Заключение _________________________________________________________________18

Список литературы___________________________________________________________19

Введение

Еще в давние времена люди испытывали потребность в обмене информацией и организовывали его на государственном уровне. Поэтому почта – одно из наиболее четко организованных учреждений в мире.

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

Основными объектами, составляющими систему электронной почты, являются специальные компьютеры, называемые почтовыми серверами.

Почтовый сервер

Почтовые серверы – это серверы, получающие и отправляющие электронные сообщения.

Сервер, получающий электронные сообщения, работает по протоколу POP (Post Office Protocol).

Сервер, отправляющий электронные сообщения работает по протоколу SMTP (Simple Mail Transfer Protocol).

Почтовый сервер, сервер электронной почты, мейл-сервер - в системе пересылки электронной почты так обычно называют агент пересылки сообщений (англ. mail transfer agent, MTA ). Это компьютерная программа, которая передаёт сообщения от одного компьютера к другому. Обычно почтовый сервер работает «за кулисами», а пользователи имеют дело с другой программой - клиентом электронной почты (англ. mail user agent, MUA ).

Схема взаимодействия

К примеру, в распространённой конфигурации агентом пользователя является Outlook Express. Когда пользователь набрал сообщение и посылает его получателю, почтовый клиент взаимодействует с почтовым сервером, используя протокол SMTP. Почтовый сервер отправителя взаимодействует с почтовым сервером получателя (напрямую или через промежуточный сервер - релей). На почтовом сервере получателя сообщение попадает в почтовый ящик, откуда при помощи агента доставки сообщений (mail delivery agent, MDA) доставляется клиенту получателя. Часто последние два агента совмещены в одной программе, хотя есть специализированные MDA, которые в том числе занимаются фильтрацией спама. Для финальной доставки полученных сообщений используется не SMTP, а другой протокол - часто POP3 или IMAP - который также поддерживается большинством почтовых серверов. Хотя в простейшей реализации MTA достаточно положить полученные сообщения в личный каталог пользователя в файловой системе центрального сервера («почтовый ящик»).

Электронная почта

Электронная почта (e-mail, от латинского "electronic mail").

Электронная почта, как и обычная, работает с системой электронных "почтовых отделений" – почтовых серверов, которые обеспечивают пересылку писем по глобальным сетям. Они взаимодействуют с помощью почтовых протоколов, обеспечивающих пересылку и распознавание передаваемой в сети информации. Компьютеры-клиенты почтовых серверов обслуживают пользователей электронной почты. Каждый получает свой почтовый адрес и свой "почтовый ящик" на этом компьютере, т.е. область памяти, а также пароль для доступа к нему.



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

С помощью почтовой программы пользователь создает сообщение адресату, задает адрес, отправляет сообщение, для чего соединяется с почтовым сервером. Во время соединения почтовый сервер запрашивает имя пользователя и его пароль. Иначе сеанс связи не состоится. После соединения подготовленная почта автоматически отправляется на сервер и далее через передачу от одного к другому почтовому серверу достигает адресата. Сразу после отправки корреспонденции автоматически происходит получение почты клиентом. Считанные в его область памяти сообщения и файлы сортируются и раскладываются по почтовым ящикам пользователей. Адресат при загрузке своего ящика видит разложенные по папкам сообщения: новые, старые, отправленные. Он может удалять, сортировать и классифицировать их по своему разумению.

Структура адреса электронной почты

При пересылке информации большое значение имеет адресация, поскольку без нее не может быть найден получатель. Все знают печальную историю Ваньки Жукова, который отправил письмо "на деревню дедушке". Адрес обычной почты оформляются по определенным почтовым правилам.

Существующие правила оформления электронных адресов иные. Адреса электронной почты имеют более четкую логическую структуру. Они состоят из иерархической последовательности доменов – частей, например:

[email protected]

[email protected]

[email protected]

Все адреса состоят из двух частей, разделенных символом @ (читается "эт"). При прочтении слева направо до этого знака отображаются имена пользователей (получателей). Это может быть имя начальника почтового отделения - "пост мастера" (post master), выдуманные или истинные имена пользователей электронной почты, на которые приходит корреспонденция. Их может быть зарегистрировано на одном и том же компьютере много. Часть адреса, находящаяся справа от @, определяет компьютер, подключенный к сети, город и страну или название сети, в которой пользователь зарегистрирован. Адреса делятся на части, которые называются доменами.

Что такое домен

Рассматривая домен справа налево и разбив его по точкам на отдельные слова, получим поддомены, поочередно уточняющие, где этот почтовый ящик искать. В аналогии с обычной почтой домен – это адрес (строка "Куда" на конверте), а поддомены - название страны, города, улицы, номер дома.

Домен не описывает путь, по которому следует передавать сообщение, а только объясняет, где находится адресат; точно так же адрес на почтовом конверте - это не описание дороги, по которой должен идти почтальон, чтобы доставить письмо, а место, в которое он должен в конце концов его принести. В обоих случаях почтовые службы сами выбирают маршрут из соображений экономии времени и денег. Обычно существует несколько путей, по которым можно доставить сообщение в указанное место, и, отправляя письмо, Вы не знаете, по какому из путей оно на этот раз пойдет.

Самый правый поддомен (в нашем случае ru) называется доменом верхнего уровня и чаще всего обозначает код страны, в которой находится сервер. Код ru - это Россия, kz – Казахстан. Каждый код состоит из двух латинских букв. Например, код uk обозначает Великобританию, и почтовый ящик с адресом [email protected] следует искать в английской сети JANET.

Домен верхнего уровня - не всегда код страны. В Соединенных Штатах встречаются такие, например, домены верхнего уровня, как edu - научные и учебные организации, или gov – правительственные учреждения:

lamaster@ge rge.arc.nasa.gov

Если почтовая служба видит в правой части домена поддомен такого вида, она уже знает, что адресат находится в США, поэтому код страны us не нужен. Такие обозначения сложились в американской научной сети ARPANET еще до того, как ее связали с сетями в других странах, а сейчас они сохраняются только по привычке. Как правило, во все места, которые адресуются по типу организации, можно добраться и используя код страны. Из соображений простоты и единообразия лучше пользоваться адресами с кодами стран.

Обычно такие адреса используются, если эта сеть понимает адреса в формате, отличном от RFC822. Тогда Вы пишите адрес типа имя@машина.сеть, а мост между Вашей сетью и сетью адресата преобразует его к нужному виду.

Поддомены, расположенные правее домена верхнего уровня, уточняют положение адресата внутри этого домена (внутри России для ru, среди военных организаций США для mil, или в сети BITNET для bitnet). К примеру, в адресе [email protected] поддомен demos обозначает организацию внутри России, а hq – группу машин внутри demos.

В адресе [email protected] домен верхнего уровня gov означает, что адресат находится в одном из правительственных учреждений США, первый поддомен nasa уточняет, в каком именно - NASA, второй поддомен arc называет подразделение NASA - Ames Research Center, а george указывает на конкретную машину в этом подразделении.

Если письмо адресуется по имени сети, в которую его надо послать, адрес (домен) состоит только из домена верхнего уровня - имени сети и еще одного поддомена - имени машины в этой сети. Разбираться, где находится данная машина, выпадает на долю почтовых служб этой сети.

Когда необходимо достичь адреса, например, ux . cso . uiuc . edu , компьютер должен преобразовать его в адрес. Чтобы это сделать, Ваш компьютер начинает просить помощи у серверов (компьютеров) DNS, начиная с правой части имени и двигаясь влево. Сначала она просит локальные серверы DNS найти адрес. Здесь существуют три возможности.

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

Данный материал содержит довольно много упрощений и обобщений, с целью дать системным администраторам необходимый минимум знаний. На наш взгляд, ради администрирования одного-двух почтовых серверов начального уровня становиться специалистом в области электронной почты совсем не обязательно.

Для большинства пользователей и начинающих администраторов почтовый сервер представляет собой некий "черный ящик", который получив письмо "неведомыми" путями доставляет его адресату и наоборот. Все взаимодействие с таким сервером заключается в обращении почтового клиента к определенным портам, а то и вообще через веб-интерфейс. Однако внутри скрыт целый механизм, понимание работы которого имеет ключевое значение для успешной настройки и обслуживания системы электронной почты. Это особенно важно для администрирования серверов на платформе Linux. В отличии от Windows, где почтовый сервер представляет собой законченное программное решение и о внутреннем взаимодействии уже позаботились разработчики, в Linux компоненты почтового сервера представляют собой отдельные программы и настраивать их взаимодействие нужно самостоятельно.

Рассмотрим структуру почтового сервера, а также что происходит когда пользователь пытается отправить почту.

Важнейшей часть почтового сервера является MTA (Mail Transfer Agent -- агент пересылки почты) в задачи которого входит прием и передача почты. Очень часто (в Linux / UNIX) МТА называют также почтовым сервером. MTA работает по протоколу SMTP, и его одного, в принципе, уже достаточно для создания системы электронной почты. Когда-то давно именно так и было и для доступа к своему почтовому ящику требовалось обладать определенными техническими знаниями.

Однако прогресс не стоит на месте, MTA, получая письмо, помещает его в почтовый ящик пользователя на сервере, к которому последний должен получить доступ, желательно наиболее простым и понятным способом. Вот здесь на сцену выходит MDA (Mail Delivery Agent -- агент доставки почты), его задача по запросу почтового клиента передать ему почту из почтового ящика на сервере. MDA может работать по протоколам POP3 или IMAP, в ряде случаев для "общения" почтового клиента и агента доставки могут применяться собственные протоколы, обладающие расширенной функциональностью, например MAPI (Exchange Server).

Вопреки распространенному заблуждению, MDA не имеет никакого отношения к процессу передачи почты. Это прерогатива MTA. Если провести аналогию, MTA можно представить как почтовое отделение, которое занимается приемом и отправкой почты, а MDA с почтальоном, который приносит пришедшую корреспонденцию к вам домой. Если почтальон заболел, то это никак не скажется на работе почты, просто вы не получите письма на дом. Также и MDA, его отказ не приводит к неработоспособности почтового сервера, становится недоступно только получение почты почтовым клиентом, в то же время к ней можно спокойно получить доступ другими путями, например, через веб интерфейс.

Посмотрим, что происходит при отправке почты. В нашем примере пользователь Иванов, находящийся в домене example.org ([email protected]), пишет письмо Козлову в домен example.com ([email protected]). Для Иванова процесс отправки почты состоит из создания сообщения и нажатия кнопки "Отправить" в почтовом клиенте. Почтовый клиент соединяется с МТА по протоколу SMTP и первым делом сообщает свои учетные данные. Авторизовав пользователя, MTA принимает сообщение и пытается доставить его дальше.

Вообще-то авторизация не является обязательной процедурой для MTA, но без авторизации мы получим открытый релей, т.е. любой может воспользоваться нашим сервером для пересылки почты, а как спамеры обрадуются! В настоящее время открытые релеи возникают в основном из-за ошибок настройки сервера. Однако вполне допустима ситуация, когда MTA без авторизации принимает почту от доверенных пользователей, например из локальной сети предприятия.

Для авторизации MTA может использовать собственный список пользователей, системный список, списки пользователей LDAP или AD. Также существует способ: авторизация POP прежде SMTP, когда пользователь перед отправкой почты авторизуется на MDA, который, в свою очередь подтверждает аутентификацию пользователя для MTA.

Следующим шагом MTA анализирует служебную информацию письма, определяя домен получателя, если он относится к доменам обслуживаем данным МТА, производится поиск получателя и письмо помещается в его ящик. Так произошло, если бы Иванов написал письмо Петрову или Сидорову.

Если домен получателя не обслуживается MTA, формируется DNS-запрос, запрашивающий MX-записи для данного домена. MX-запись представляет особый вид DNS-записи, которая содержит имена почтовых серверов, обрабатывающих входящую почту для данного домена. MX-записей может быть несколько, в этом случае MTA пробует последовательно установить соединение, начиная с сервера с наибольшим приоритетом. При отсутствии MX-записи запрашивается A-запись (запись адреса, сопоставляющая доменное имя с IP-адресом) и выполняется попытка доставить почту на указанный там хост. При невозможности отправить сообщение, оно возвращается отправителю (помещается в почтовый ящик пользователя) с сообщением об ошибке.

Мы не будем рассматривать работу принимающего сервера, будем считать что все прошло нормально, Козлов получил письмо от Иванова и написал ему ответ. Сервер, обслуживающий домен example.com, проводит точно такие же действия и пробует передать почту нашему серверу. Получив входящее сообщение MTA, как и в случае с локальным отправителем, проверяет домен получателя, если он входит в число обслуживаемых MТА, обработка сообщения продолжается, иначе сервер отказывается принимать почту. После проверки домена проверяется получатель, если он присутствует в списке пользователей, сообщение доставляется в его ящик, в противном случае возможны два варианта: отказ от приема сообщения или прием сообщения в общий почтовый ящик (ящик администратора). С одной стороны такая настройка увеличивает число принимаемого спама, с другой позволяет не потерять письма с ошибками в написании адреса.

Еще одной мерой защиты от спама является запрос PTR-записи. PTR-запись (запись указателя) связывает IP-адрес с именем домена. Запрашивая PTR, MTA принимает почту только в том случае если домен отправителя совпадает с доменом отправляющего сервера.

Рассмотрим пример более подробно. Некий спамерский сервер spam.com пытается рассылать письма с поддельным отправителем, якобы от известного нам сервера example.com. В случае фильтрации по белым / черным спискам такое письмо будет доставлено, так как отправителем числится пользователь из доверенного домена (на что и рассчитывали спамеры). В целях борьбы со спамом MTA формирует запрос PTR записи для IP-адреса отправляющего сервера, который он сообщает в процессе SMTP сессии. Для адреса y.y.y.y PTR-запрос вернет имя домена spam.com, которое не совпадает с доменом отправителя, что будет причиной отказа в приеме данного сообщения. В то-же время сообщения от сервера x.x.x.x будут получены, так как домен из PTR-записи для x.x.x.x (example.com) совпадает с доменом отправителя.

Итак, сообщение получено и находится в почтовом ящике пользователя. Как его прочитать? Почтовое хранилище, где находятся ящики пользователей, может быть организовано самыми различными способами: начиная от банальных папок и фалов, заканчивая базой данных. Не обладая техническими знаниями, прочитать собственную почту вряд-ли удастся. Но разве это должно волновать пользователя Иванова? Для него процесс получения почты сводится к нажатию кнопки "Получить" в почтовом клиенте.

Для получения почты клиент устанавливает соединение с MDA по протоколу POP3 или IMAP, обязательно передавая данные для авторизации. MDA проверяет наличие пользователя в списках и, при успешной проверке, передает клиенту все новые сообщения находящиеся в его почтовом ящике. Пользователь Иванов получает свою корреспонденцию и может работать с ней удобным ему способом.

На этом наша статья заканчивается, мы настоятельно рекомендуем вдумчивое прочтение и усвоение изложенного в ней материала. В последующем, при рассмотрении практических реализаций почтовых серверов мы будем подавать материал из расчета, что читатель имеет знания в объеме не менее данной статьи.