Главная arrow Статьи arrow Почтовые системы arrow Создаем почтовую систему среднего и малого офиса на основе FreeBSD Postfix+dr.web+popa3d+pflogsumm  
 
 
 

Main Menu
Главная
Статьи
Обзоры
Блог
Поиск
 

Создаем почтовую систему среднего и малого офиса на основе FreeBSD Postfix+dr.web+popa3d+pflogsumm

Написал Бешков Андрей   
Пятница, 01 Апреля 2005
Содержание статьи
Постановка задачи
Выбор програмного обеспечения
Установка Postfix
Тестирование SMTP
Проверка результатов работы SMTP сервера
Установка POP3 сервера
Тестирование POP3 сервера
Установка антивируса
Подключение антивируса к Postfix и тестирование его работы
Настрока обновления антивируса
Сбор статистики работы почтового сервера


Теперь необходимо настроить pop3 для того чтобы пользователи могли забирать почту с сервера. В качестве демона pop3 мы будем использовать popa3d. За этой программой закрепилась слава одного из самых быстрых, надежных и безопасных демонов pop3. К сожалению процедура установки этой программы из исходного кода очень неудобна. Перед там как приступить к компиляции приходится вносить в исходный код множество исправлений, что бы включить требуемую функциональность. Лично мне не понятно почему автор не может написать нормальный скрипт configure. Большинству других администраторов такой подход тоже не нравится. Поэтому оберегая собственные нервы воспользуемся системой портов.

# cd /usr/ports/mail/popa3d/
# make
# make install
# make clean
После успешной инсталяции проверяем что бы в файле /etc/services были подобные фрагменты.

pop3 110/tcp pop-3 # POP version 3
pop3 110/udp pop-3

В отличии от postfix демон popa3d не находится постоянно в памяти машины. Вместо этого при каждом входящем соединении он будет запускаться супердемоном. В качестве супердемона чаще всего используются либо inetd либо xinetd. В моем случае это был именно inetd. А раз так то нам нужно внести в файл /etc/inetd.conf следующий фрагмент:


pop3 stream tcp nowait root /usr/local/libexec/popa3d popa3d

Для того что бы измениения вступили в силу нужно перезапустить демон inetd. Узнаем номер его процесса.


# ps -ax | grep inetd | grep -v "grep"
86 ?? Ss 0:01.03 /usr/sbin/inetd -wW
Получается что интересующий нас процесс имеет номер идентификатора 86. Вооружившись этими знаниями перезапускаем inetd.


# kill -HUP 86
Некоторые особо непримиримые читатели скажут что так делать не правильно. А обязательно стоит делать одним из двух следующих способов:

kill -HUP `cat /var/run/inetd.pid`
Или

killall -HUP inetd
А можно совсем экзотично:


killall -HUP `ps -ax | grep inetd | grep -v "grep" | tr -s " " | cut -d" " -f2`
Как всегда я отвечу что все эти команды приводят к одинаковому эффекту, а раз результат достигнут, то нет смысла возмущаться. У каждого из нас свой стиль работы. Фанатичные попытки использовать один и тот же прием в разных ситуациях и желание заставить остальных действовать только так как сказал гуру указывает на узость мыслительных процессов. Давайте не будем уподобляться религиозным фанатикам.



Последнее обновление ( Воскресенье, 17 Июня 2007 )
След. >