CentOS exim

Установка простого мейл сервера
Оригинал статьи на Блоге HostingHutor.com

Сносим sendmail

# yum remove sendmail

Устанавливаем exim с dovecot

Метод описываемый в статье у меня не прокатил )
Идем другим путем, берем

# wget http://dl.atrpms.net/all/exim-4.72-41.el5.i386.rpm

Есть неудовлетворенные зависимости, удовлетворяем. Если честно я подключил еще 2 репозитория в поисках exim c авторизацией через dovecot, так что я не знаю откуда они удовлетворились, a проверять лень, так что на всякий случай установим DAG и Epel:

# rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

# rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# yum install libspf2 libsrs_alt

И finally:

# rpm -Uvh exim-4.72-41.el5.i386.rpm

Проверяем:

# exim -bV | grep Authenticators
Authenticators: cram_md5 cyrus_sasl dovecot plaintext spa
# yum -y  install dovecot

Скачиваем конфигурацию exim и dovecot

# wget http://193.111.49.9/mail.tgz

Распаковываем

# tar xvfz mail.tgz -C /tmp

Поместим addmail.sh в /usr/local/sbin

# mv /tmp/mail/addmail.sh /usr/local/sbin/

Папку exim переносим в /etc

# mv -f /tmp/mail/exim /etc/

Файлы dovecot.conf и dovecot.passwd переносим в /etc/

# mv -f /tmp/mail/dovecot.conf /etc/
# mv -f /tmp/mail/dovecot.passwd /etc/

Прописываем exim и dovecot в автозагрузку

# chkconfig exim on
# chkconfig dovecot on

На всякий пожарный

# chown -R exim:exim /etc/exim

Ну поехали:

# service exim restart
# service dovecot restart

Для добавления нового ящика используем скрипт addmail.sh

addmail.sh my@example.com password
my@example.com - это создаваемый почтовый ящик
password - пароль на почтовый ящик.

libspf2 нет в репозитариях epel rpmforge на данный момент, но есть сайт на котором можно найти свежий exim, libspf2 для этого exim http://mta.org.ua

Useful exim commands

exim -M id             #Try to send the message with id id
exim -qf               #Tell exim to process the entire queue again
exim -qff              #same as qf, but it will flush the frozen messages
exim -Mvl id           #view the message log for message id
exim -Mvh id           #view message id's headers
exim -Mvb id           #view message id's body
exim -Mrm id           #remove message id from the queue
exim -Mg id            #fail and send a bounce to the sender
exim -bp | exiqsumm    #Print summary of the messages in the queue
exiwhat                #show what exim is doing right now
exim -bpc              #show number of messages in the queue
exim -bp               #print list of messages in the queue

Exim и очередь сообщений via dedic.ru

# exipick - показывает сообщения в очереди
# exipick -z - показывает замороженные сообщения
# exipick -i - показывает ID сообщений

Очистит все замороженные сообщения из очереди

# exipick -zi | xargs exim -Mrm

Очистит все сообщения из очереди

# exipick -i | xargs exim -Mrm