УДК 004.773.3, 378.147.88, 004.451.9
НАСТРОЙКА ПОЧТОВОГО СЕРВЕРА SENDMAIL НА ПЛАТФОРМЕ FRENZY
АС. Фадеев, Е.И. Блеч, Е.А. Язовских*
Томский политехнический университет *Новосибирский государственный университет экономики и управления E-mail: [email protected]
Описана настройка почтового сервера на LiveCD-диске операционной системы FreeBSD со встроенным почтовым сервером Sendmail. Актуальность работы обусловлена возможностью решения двух основных проблем, связанных с настройкой почтовых серверов: повышение отказоустойчивости почтовых систем в случае выхода основного сервера из строя и обучение студентов установке почтового сервера.
Ключевые слова:
Почтовый сервер Sendmail, операционная система FreeBSD, электронная почта, процесс обучения, Интернет-сервер, настройка сервера.
Key words:
Mail server Sendmail, operating system FreeBSD, e-mail, teaching, internet-server, server configuring.
Введение
В настоящее время для обеспечения обмена сообщениями электронной почты существует и
применяется достаточно много разнообразных
почтовых серверов: MS Exchange для платформ
Microsoft, Sendmail, postfix, qmail, и другие для UNIX-систем. Несмотря на большую популярность систем электронной почты, и всеобщее применение
электронных писем, процесс настройки как серверной, так и клиентской стороны не является тривиальным. Часто, настройка комплексной клиент-серверной почтовой службы в Unix-системах, представляется достаточно сложной задачей для системных администраторов. В данной работе описан процесс простой настройки почтового сервера Sendmail, установленного в операционной системе FreeBSD, предполагающий возможность быстрого развертывания почтового сервера в двух случаях: повышения отказоустойчивости почтовых систем в случае выхода основного сервера из строя и настройки почтового сервера в учебном процессе.
Повышение отказоустойчивости
Первая проблема - это отказоустойчивость почтовых серверов. Если почта является основным средством коммуникации, надежность и своевременность доставки почтовых сообщений, имеет высокую важность. Крупные компании могут позволить себе иметь
Фадеев Александр Серге-евич,
канд.техн.наук, доцент кафедры автоматики и компьютерных систем Института кибернетики ТПУ.
E-mail: [email protected] Область научных интересов:
векторизация, классификация, имитация и синтез музыкальных объектов, СУБД, вопросы
администри-рования информационных систем. Екатерина Игоревна Блеч, студент кафедры вычислительной техники Института
кибернетики ТПУ.
E-mail: [email protected] Область научных интересов:
математическое моделирова-ние сложных технических систем, программирование, геоинформационные системы Язовских Евгений Андреевич, инженер-программист центра информационных
технологий Новосибирского государственного университета экономики и управления E-mail: [email protected] Область научных интересов: серверное аппаратное и программное обеспечение, СУБД, администрирование корпоративных информа-
ционных систем, антиви-русная защита и информаци-онная безопасность.
несколько резервных серверов для каждого сервиса. Кроме того, они могут и вовсе отказаться от пересылки срочной и одновременно важной корреспонденции почтовыми сообщениями. Небольшие, только начавшие развиваться компании, этого себе позволить не могут, и, в лучшем случае, имеют один почтовый сервер.
Стабильность работы почтовых серверов, как и любого другого программного обеспечения, определяется многими факторами. К этим факторам относятся: количество пользователей почтового сервера, конфигурация оборудования, и программного обеспечения почтового сервера, и даже то, имеются ли у компании серьезные конкуренты на рынке [1]. Каким бы надежным почтовый сервер ни был, он может не справиться с нагрузкой и стать недоступным для обработки запросов. Восстановление поломанной техники, неисправностей в системе или программном обеспечении может занять продолжительное время. Запуск резервного почтового сервера потребует, как минимум, переустановки системы одного компьютера с внесением изменений на его жесткие диски, создания новой конфигурации и обновления всех реплик системы доменных имен и службы каталогов сети. В отсутствие времени и свободного компьютера, существует альтернативный метод: запустить временную систему на базе LiveCD со встроенным в ядро почтовым сервером.
Для восстановления вышедших из строя серверов и персональных компьютеров системными администраторами используются специально скомпонованные операционные системы, не требующие предварительной установки на жесткий диск сервера. Такие диски называются LiveCD [2]. Диски LiveCD, как правило, записываются на оптические или на флэш-накопители и позволяют быстро начать работу с компьютером, восстановить данные и работоспособность системы, установленной на компьютере, без форматирования жестких дисков и переустановки основной системы. Платформа Frenzy - это операционная система на основе FreeBSD 6.3. Данная операционная система LiveCD загружается со сменного носителя, не требует установки на жесткий диск компьютера и не изменяет информации жестких дисков
[3].
Однако до настоящего момента не существовало такой сборки системы на LiveCD, которая бы предоставляла возможность нести на себе задачи резервного почтового сервера на время восстановления основного.
Настройка почтового сервера при обучении студентов
В процессе обучения студентов работе с серверами Интернета, в том числе и почтовым сервером, большой сложностью является предоставление каждому студенту собственного сервера для работы и настройки. Основная проблема заключается в том, что предоставление полного привилегированного доступа студента к серверу может привести к нарушению работы программного обеспечения сервера, вплоть до полной неработоспособности, из-за неизбежных ошибочных действий студента, возникающих в процессе изучения системы. Восстановление же каждой системы после каждого занятия студентов является весьма трудоёмким процессом. Одним из вариантов решения данной проблемы является применение виртуальных машин, на которых запускается заранее сконфигурированная серверная операционная система. Однако такой метод оставляет студента в привычном окружении работоспособной родительской операционной системы, в которой запущена виртуальная машина, создавая лишь иллюзию работы реального Интернет-сервера.
Альтернативой является применение заранее сконфигурированной серверной операционной системы, загружаемой со сменного носителя в оперативную память компьютера. Такие системы используют жесткие диски компьютера только в режиме чтения данных, не позволяя вносить непоправимых изменений, но к настройкам самой системы и запущенным программам предоставляют полный привилегированный доступ. В случае выхода системы из строя, достаточно перезагрузить систему и все изменения и настройки будут утеряны.
Настройка почтового сервера на основе операционной системы Frenzy 1.2.
В ядро системы FreeBSD встроен почтовый сервер Sendmail. В настоящее время этот сервер является наиболее простым в настройке почтовым сервером.
Настройка сервера делится на несколько этапов.
Первый этап - это настройка сетевого подключения. Начинающие пользователи могут сделать это с помощью утилиты netconf, доступной из консоли и предоставляющей понятный интерфейс. Также задается доменное имя компьютера-сервера в файле /etc/hosts.
На втором этапе задействуется утилита pop3d. Она позволяет получать сообщения через интернет-демон inetd. Демоном в терминологии FreeBSD называют программу, работающую в фоновом режиме без привязки к консоли. В файл /etc/rc.conf для запуска Sendmail необходимо добавить соответствующие записи: Sendmail_enable="YES" и inetd_enable="YES".
На третьем этапе в файл /etc/mail/local-host-names записываются доменные имена узлов Интернета, от которых почтовый сервер Sendmail будет принимать почту. Обычно в базовой конфигурации файл /etc/mail/local-host-names отсутствует, поэтому его необходимо будет создать в директории /etc/mail.
На четвертом этапе в файл /etc/mail/access добавляются доменные имена узлов Интернета и тип доступа пользователей этих узлов к почтовому серверу Sendmail, например:
• mail.tpu.ru OK означает разрешение принимать почту от узла с именем mail.tpu.ru;
• 109.123.141 RELAY разрешает пересылать всю почту из локальной сети с IP-адресами диапазона 109.123.141.1-109.123.141.254 на другие серверы.
Затем запускается сервис inetd, вместе с ним запустится и РОР3-сервер [4].
Для обновления конфигурационных файлов Sendmail используется утилита make, запускаемая в директории /etc/mail/. После запуска make, конфигурационные файлы будут созданы соответственно изменениям, сделанным на предыдущих этапах. Для того чтобы изменения, внесенные в конфигурационных файлах вступили в силу, необходимо перезапустить фоновый процесс Sendmail. Можно остановить и запустить Sendmail заново, но это приведет к кратковременной остановке сервера, которая может быть нежелательна. Большинство серверов написаны так, чтобы при получении сигнала SIGHUP перечитывать файлы конфигурации. Поэтому вместо уничтожения и запуска Sendmail можно послать сигнал SIGHUP. Для этого необходимо вычислить номер процесса Sendmail в системе и ему послать сигнал-требование перечитать конфигурационные настройки: kill -s HUP 533 (во время работы идентификатор 533 был присвоен системой программе-серверу Sendmail).
Для проверки работоспособности почтового сервера были зарегистрированы несколько пользователей в операционной системе: userl, user2 и user3. Сразу же после добавления учетных записей появляется возможность отправлять почтовые сообщения.
Для отправки письма необходимо использовать программу-клиент. В работе был использован клиент «mutt» [5].
Клавиша «m» (от англ. Mail - письмо) позволяет написать новое письмо. После открытия формы письма можно ввести адрес получателя, например, user2@localhost, тему сообщения и перейти к полю ввода текста письма.
Интересной особенностью почтового клиента mutt является редактор vim, который используется по умолчанию для набора и редактирования текста письма. Редактор vim может работать в двух режимах, причем, в командном режиме, для форматирования документа используются те же цифро-буквенные клавиши, что использовались для набора текста в текстовом режиме. Используя команды «сохранить и выйти», представленные клавишами «:», «w» и «q» осуществляется выход из редактора. Затем необходимо нажать клавишу «j» - это команда mutt «отправить письмо».
В случае возникновения ошибок, серверы, как и многие другие программы, помещают сообщения в файл-отчет. Наличие таких файлов позволяет проследить за работой сервера и выявить ошибки в конфигурации и настройках. Сервер Sendmail сохраняет сообщения в файл /var/log/maillog. Более подробное описание решения возникших проблем описано в документации к Sendmail.
Выводы
Настройка почтового сервера требует опыта и навыков администрирования системных служб и серверных процессов. В случае выхода из строя работающего почтового сервера, учитывая необходимость разворачивания серверной операционной системы, процесс отладки и введения в работу резервного сервера электронной почты может затянуться на несколько часов. Использование LiveCD Frenzy 1.2 с установленным сервером Sendmail может позволить полностью заменить вышедший из строя почтовый сервер компании без переустановки операционной системы в течение получаса.
1. С помощью встроенного в операционную систему FreeBSD почтового сервера Sendmail возможно проводить учебные занятия по настройке почтового сервера, уделив внимание конкретно почтовому серверу, не отвлекаясь на изучение других компонентов UNIX систем, необходимых для настройки Sendmail. Работа над настройкой почтового сервера позволяет составить у учащихся представление о настройке интернет-серверов, о работе других программ и сред в операционных системах UNIX. Отсутствие предварительной установки и сравнительная простота настройки делают процесс приемлемым для применения в учебной практике.
СПИСОК ЛИТЕРАТУРЫ
1. Иртегов Д.В. Введение в сетевые технологии. - СПб.: БХВ-Петербург, 2004. - 560 с.
2. Можайский С. Frenzy 1.3 // Frenzy - Live CD на базе FreeBSD. 2010. URL: http://frenzy.org.ua/ (дата обращения 11.04.2011).
3. Фадеев А.С., Вичугов В.Н.. Применение операционных систем, загружаемых с диска в образовательном процессе // Молодежь и современные информационные технологии: Сборник трудов IV Всерос. научно-практ. конф. студентов, аспирантов и молодых ученых. - Томск, 28 февраля - 2 марта 2006. - Томск: ТПУ, 2006. - С. 68-70.
4. Руководство FreeBSD // проект Русской Документации FreeBSD /The FreeBSD Project. Боулдер (США). 2006. URL: http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/ (дата обращения 11.04.2011).
5. Чирков М. Серверное программное обеспечение (Почтовый сервис) - Sendmail // Портал по
открытому ПО, Linux, BSD и Unix системам. 2009. - URL:
http://www.opennet.ru/docs/RUS/linuxsos/ch15_2.html (дата обращения 11.04.2011).
Поступила 10.10.2011 г.