Courier

From SysadminWiki.ru
Jump to: navigation, search

Общая информация

Courier - почтовый сервер поддерживающий протоколы ESMTP, IMAP, POP3, LDAP, SSL, и HTTP, имеющий веб-интерфейс и умеющий работать со списками рассылки. Может заменить Postfix, но чаще используется как IMAP-сервер.

Сourier-IMAP отвечает за отдачу почты пользователю по протоколам IMAP и POP3.


Установка и настройка

  • Устанавливаем Courier для протоколов IMAP и POP3 с поддержкой MySQL:
# apt-get install courier-imap courier-pop courier-authmysql courier-authdaemon
  • Настраиваем демон авторизации, редактируя его конфигурационный файл /etc/courier/authdaemonrc:
authmodulelist="authmysql"
daemons=10
  • Настраиваем доступ к БД MySQL. Редактируем /etc/courier/authmysqlrc:
MYSQL_SERVER localhost             #или 127.0.0.1, если не работает
MYSQL_USERNAME postfixadmin
MYSQL_PASSWORD postfixadmin
#MYSQL_SOCKET /var/lib/mysql/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE postfix
MYSQL_USER_TABLE mailbox
MYSQL_CRYPT_PWFIELD password
DEFAULT_DOMAIN teo.mynetwork.ru
MYSQL_UID_FIELD '107'
MYSQL_GID_FIELD '108'
MYSQL_LOGIN_FIELD username
MYSQL_HOME_FIELD '/var/spool/postfix/vmail'
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir


Проверка

  • Запускаем:
# /etc/init.d/courier-authdaemon start
# /etc/init.d/courier-pop start
# /etc/init.d/courier-imap start
  • Проверяем можем ли забрать почту, т.е. работоспособность pop3:
# telnet localhost 110

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user pm@teo.mynetwork.ru
+OK Password required.
pass password
+OK logged in.
list
+OK POP3 clients that break here, they violate STD53.
1 470
.
quit
+OK Bye-bye.
Connection closed by foreign host.

Как видим одно письмо на 470 байт лежит. Можно его просмотреть командой retr 1 (конечно перед quit)

Если telnet выдаёт ошибку "ERR chdir Maildir failed", то может помочь изменение переменной:

MYSQL_MAILDIR_FIELD       concat('/var/spool/postfix/vmail/',maildir)
  • Можно дополнительно указать, чтобы регистрировались все подключения пользователей. Это удобно, чтобы ответить на вопрос: "когда пользователь забрал почту?" для этого в файлах /etc/courier/pop3d, imapd указываем:
DEBUG_LOGIN=1

Если указать 2, то будут также показываться пароли, с которыми пользователи пытались подключиться.


См. также

  • Postfix - очень популярный в Unix'ах агент доставки почты
  • Zabbix - комплексное решение для почтового сервера
  • Cyrus - IMAP сервер с шифрованием