Mail server - xmail: различия между версиями

Материал из support.qbpro.ru
imported>Vix
imported>Vix
Нет описания правки
Строка 1: Строка 1:
Сервер почты на  postfix (smtp), sasl2 (Авторизция) cyrus-pop3d (POP3 демон)
Xmail
ставим пакеты:
Содержание
apt-get install postfix libsasl2-2 libsasl2-modules sasl2-bin cyrus-imapd-2.2 cyrus-pop3d-2.2 cyrus-admin-2.2


Во время первоначальной настройки postfix укажите конфигурацию для Интернет-сайта (Internet Site).
    1 Установка
На вопрос об имени почтового сервера-оставьте вариант по-умолчанию или укажите свой. В нашем случае это было domain.ru
    2 Описание файлов конфигурации
    3 Настройка
        3.1 Создание почтового домена
        3.2 Создание пользователей почтовой системы
        3.3 Настройка пересылки почты
    4 Литература
    5 Справочная информация


Настроим сервер авторизации saslauthd на использование базы данных паролей sasldb2.
Статья о pop3/smtp сервере Xmail
Для этого отредактируем файл /etc/default/saslauthd:
START=yes
MECHANISMS="sasldb"


Запускаем сервис
Xmail позволяет создать почтовый домен который не привязан к локальному - виртуальный почтовый домен. И виртуальных пользователей которые могут быть не определены как локальные. Пакет предоставляет "в одном флаконе" оба сервера - pop3 на прием писем и smtp на их передачу.
/etc/init.d/saslauthd start
Сайт проекта [http://www.xmailserver.org/ http://www.xmailserver.org/]
Установка


проверим работает ли он, но для начала необходимо добавить хотя бы одного пользователя.
Пакет присутствует в хранилище пакетов debian.
proxy:~# saslpasswd2 test
Для установки пакета
Password:
Again (for verification):


смотрим список пользователей
    в командной строке: следует выполнить команду # apt-get install xmail
proxy:~# sasldblistusers2
    в графическом режиме: воспользоваться специализированной программой управления пакетами
test@proxy: userPassword


Пробуем авторизироваться
При установке пакета будут удалены имеющиеся в системе pop3 и smtp сервера.
proxy:~# testsaslauthd -u test -p test
После установки для начала работы пакет необходимо настроить.
Полезно также установить пакет с документацией xmail-doc:


На что получаем ответ
  # apt-get install xmail-doc
0: OK "Success.


У почтового сервера postfix есть одна особенность — после запуска он работает в chroot окружении, которое находится в папке /var/spool/postfix/
Некоторые часто используемые команды


Учитывая то, что для авторизации пользователей postfix будет использоваться демон saslauthd, нам нужно перенести его socket в рабочую директорию нашего сервера /var/spool/postfix/. Самый простой способ сделать это заключается в монтировании в нужную папку директории с уже созданным сокетом демона saslauthd.
  # /etc/init.d/xmail restart                    - перезапуск почтового сервера
  # cat /var/log/xmail/<ИМЯ_ФАЙЛА>                - просмотр логов
  # iceweasel /usr/share/doc/xmail/Readme.html    - просмотр документации xmail


Делается это редактированием файла /etc/fstab.
Описание файлов конфигурации
/var/run/saslauthd /var/spool/postfix/var/run/saslauthd none rw,bind 0 0


Не забудьте поставить [Enter] после последней строки.
Пакет Xmail содержит ряд файлов конфигурации основная масса которых расположена в папке /etc/xmail.
Создаём каталог и монтируем.
Ниже приводится описание назначения файлов конфигурации и их местонахождения.
mkdir -p /var/spool/postfix/var/run/saslauthd
имя файла местонахождение назначение
mount /var/run/saslauthd
mailname /etc имя создаваемого почтового домена
aliasdomain.tab /etc/xmail псевдонимы домена
aliases.tab /etc/xmail прочие псевдонимы
ctrlaccounts.tab /etc/xmail пользователь и пароль управляющий xmail
ctrl.ipmap.tab /etc/xmail сети с которых разрешен доступ к xmail
domains.tab /etc/xmail все (виртуальные) почтовые домены
extaliases.tab /etc/xmail
filters.in.tab /etc/xmail
filters.out.tab /etc/xmail
filters.post-data.tab /etc/xmail
filters.post-rcpt.tab /etc/xmail
filters.pre-data.tab /etc/xmail
finger.ipmap.tab /etc/xmail
mailusers.tab /etc/xmail (pop3) пользователи почтовой системы, пароли, папки pop3
pop3.ipmap.tab /etc/xmail сети откуда разрешен доступ к pop3 серверу
pop3links.tab /etc/xmail
server.tab etc/xmail основной файл конфигурации почтовго сервера xmail
smtpauth.tab /etc/xmail smtp пользователи почтовой системы, пароли, полномочия
smtpextauth.tab /etc/xmail способ авторизации smtp на данном сервере
smtpfwd.tab /etc/xmail внешний сервер - почтовый шлюз для перенаправления писем
smtpgw.tab /etc/xmail внешний сервер - почтовый шлюз для пересылки писем
smtp.ipmap.tab /etc/xmail сети откуда разрешен доступ к smtp серверу
smtp.ipprop.tab /etc/xmail
smtprelay.tab /etc/xmail сети которым разрешено использовать сервер как smtp-relay
spam-address.tab /etc/xmail
spammers.tab /etc/xmail
userdef.tab /etc/xmail общие пользовательские настройки
cmd_line /etc/xmail ключи запуска xmail
default_domain /etc/xmail почтовый домен по умолчанию
dnsroots /etc/xmail
gw.tab /var/lib/xmail/userauth/smtp описание smtp клиента к внешнему серверу gw
user.tab /var/lib/xmail/domains/<DOMAIN>/<USER> файл индивидуализации пользовательских настроек
Настройка


Настраиваем postfix на работу с sasl авторизацией
Для настройки пакета осуществляем редактирование файлов конфигурации. В большинстве случаев для принятия изменений осуществлённых в файлах конфигурации необходимо осуществить перезапуск почтового сервера.
Добавим в /etc/postfix/main.cf
Для настройки сервера необходимо
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_authenticated_header = yes
smtpd_sasl_application_name = smtpd


запретим отсылать почту через наш SMTP шлюз без авторизации. Для этого создадим файл /etc/postfix/sasl/smtpd.conf
    определить виртуальный почтовый домен
со следующим содержимым.
    создать пользователей почтовой системы и предоставить им возможность принимать и отправлять письма
    осуществить настройку пересылки почты внешним серверам


pwcheck_method: saslauthd
Создание почтового домена
mech_list: PLAIN LOGIN


Перезапустим наш postfix сервер и просмотрим следующие файлы на предмет ошибок:
Почтовый домен Xmail может отличаться от реального домена рабочей станции и потому мы называем его - виртуальный почтовый домен.
/etc/init.d/postfix restart
Для создания почтового домена
tail /var/log/mail.err
tail /var/log/mail.info
tail /var/log/mail.warn
tail /var/log/mail.log


Если все чисто, сухо и гладко — обратимся к утилите telnet, для того, чтобы подключиться к нашему серверу.
    выбираем имя создаваемого виртуального домена - например mail.ru
root@proxy:/var/log# telnet localhost 25
    в файл /etc/mailname добавляем строку
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 krasfun ESMTP Postfix (Ubuntu)
EHLO www.ru
250-krasfun
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.
root@proxy:/var/log#


Если у вас нечто похожее — продолжаем
  mail.ru


Для того, чтобы «подружить» saslauthd и postfix необходимо выполнить следующее:
    в файл /etc/aliasdomain.tab добавляем строку
adduser postfix sasl


Cyrus — это мощный набор POP3/NNTP/IMAP и некоторых других демонов для создания полноценных сервисов работы с электронной почтой.
  "mail" "mail.ru"


Отредактируем файл /etc/imapd.conf
    в файл /etc/aliases.tab добавляем строку
admins: cyrus
allowplaintext: yes
sasl_mech_list: PLAIN
sasl_pwcheck_method: saslauthd auxprop
sasl_auxprop_plugin: sasldb


Обратите внимание, что cyrus так же, как и saslauthd, придется взаимодействовать с postfix, поэтому их нужно сделать доступными друг другу. Воспользуемся уже известным механизмом:
  "mail.ru" "root" "postmaster"
/etc/fstab :
  "mail.ru" "abuse" "postmaster"
/var/run/cyrus /var/spool/postfix/var/run/cyrus none rw,bind 0 0


создаём каталоги для cyrus.
    в файл /etc/domains.tab добавляем строку
mkdir -p /var/spool/postfix/var/run/saslauthd
mkdir -p /var/spool/postfix/var/run/cyrus
mount /var/spool/postfix/var/run/saslauthd
mount /var/spool/postfix/var/run/cyrus


Монтируем
  "mail.ru"
mount /var/run/cyrus


предоставим возможность cyrus забирать почту у postfix и отпалять почту на куда угодно. Отредактируем файл /etc/postfix/main.cf:
    в файл /etc/server.tab добавляем строку
mailbox_transport = lmtp:unix:/var/run/cyrus/socket/lmtp
local_recipient_maps =


Добавим группу и добавим в неё постфикс
  "RootDomain" "mail.ru"
addgroup lmtp
  "SmtpServerDomain" "mail.ru"
adduser postfix lmtp
  "POP3Domain" "mail.ru"
  "HeloDomain" "mail.ru"
  "PostMaster" "root@mail.ru"
  "ErrorsAdmin" "root@mail.ru"


Дальше 2 команды
    в файл /etc/default_domain добавляем строку
dpkg-statoverride --remove /var/run/cyrus/socket
dpkg-statoverride --force --update --add cyrus lmtp 750 /var/run/cyrus/socket


Добавим пользователя cyrus в нашу базу учетных записей:
  mail.ru
saslpasswd2 -c cyrus


Введите пароль, когда вас об этом попросят, и перезапустим наши демоны:
    перезапускаем почтовый сервер
/etc/init.d/postfix start
/etc/init.d/cyrus2.2 restart
/etc/init.d/saslauthd restart


Добавим почтового пользователя например saber и создадим ему каталоги
Создание пользователей почтовой системы
saslpasswd2 –c saber
cyradm localhost –user cyrus
localhost> cm user.saber
localhost> cm user.saber.INBOX
localhost> cm user.saber.Sent
localhost> cm user.saber.Draft
localhost> cm user.saber.Trash
UPD1 01.02.2013 Эта часть,что выше, устарела немного и пользователь создаётся другим путём, я дословно не помню но примерно так
saslpasswd2 saber
cyradm
login cyrus
localhost&gt; cm user.saber
localhost&gt; cm user.saber.INBOX
localhost&gt; cm user.saber.Sent
localhost&gt; cm user.saber.Draft
localhost&gt; cm user.saber.Trash


Вот как-то так я добалял пользователей недавно
Пользователи почтовой системы Xmail могут не существовать в локальной системе. В связи с этим будем называть их виртуальными. В Xmail различаются pop3 и smtp пользователи.
Для создания pop3-пользователей


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


Настройка клиента
  # XMCrypt 11111111
Буду на основе Аутглюк экспресс.
Добавляем почтовый акк, в общем всё как обычно КРОМЕ
не ставим галочку
«Использовать безопасную бла бла SPA»


и ставим галочку ниже Сервер исходящей почты «проверка подлинности пользователя»
    в файл /etc/mailusers.tab добавляем строки
И всё можно пользоваться :)  
 
  "mail.ru"    "postmaster"  "5454545454545454"      1      "postmaster"    "U"
  "mail.ru"    "myuser"      "5454545454545454"      2        "myuser"      "U"
  "mail.ru"    "tdkare"      "5454545454545454"      3      "tdkare"        "U"
  где в третьем столбце расположен хеш-пароль pop3-пользователя
 
    создаём каталоги пользователей
 
  копируем папку /var/lib/xmail/domains/mail.ru/postmaster в папку /var/lib/xmail/domains/mail.ru/<USER>
 
    в файле /etc/pop3.ipmap.tab проверяем сети которым разрешён доступ к pop3-серверу
 
  "0.0.0.0" "0.0.0.0" "ALLOW" 1
 
    устанавливаем размер почтового ящика
 
  либо в /var/lib/xmail/domains/mail.ru/<USER>/user.tab
  либо в userdef.tab
  ВНИМАНИЕ! параметр "MaxMBSize" это максимальный размер почтового ящика в Кб! (См. документацию xmail-doc)
 
Для создания smtp-пользователей
 
    в файл /etc/smtpauth.tab добавляем строки
 
  "myuser" "<PASSWORD>" "MRVZ"
  "tdkare" "<PASSWORD>" "MRVZ"
 
    в файле /etc/smtpextauth.tab определяем тип smtp-авторизации
 
  "PLAIN" "/usr/bin/my-auth" "-a" "@@AUTH" "-u" "@@USER" "-p" "@@PASS" "-r" "@@RFILE"
 
    в файле /etc/smtp.ipmap.tab проверяем сети которым разрешён доступ к smtp-серверу
 
  "0.0.0.0" "0.0.0.0" "ALLOW" 1
 
Настройка пересылки почты
 
Почтовая система Xmail может пересылать письма внешним почтовым серверам. Возможность пересылки писем имеется не только в случае если Xmail "видит" интернет, но и в случае когда прямого выхода в интернет нет. Пересылку писем в первом случае назовём прямой доставкой, а во втором - пересылкой через посредника.
 
Для настройки прямой пересылки почты внешним серверам
 
    проверяем что в файлах smtpfwd.tab, smtpgw.tab ничего нет
    проверяем что в файле server.tab закомментированы строки
 
  #"DefaultSMTPGateways" "192.168.0.х"
  #"EnableAuthSMTP-POP3" "0"
 
    перезапускаем почтовый сервер
 
Для проверки После этого создаём почтовый ящик с доступом на "внешний" сайт от которого желаем осуществлять высылку почту и осуществляем доставку почты через Xmail.
 
Для настройки пересылки почты через посредника (незаконченный раздел)
Если доступа в интернет нет, то для пересылки писем требуется smtp-шлюз или smtp-прокси который и осуществляет пересылку писем.


* [http://www.odmin4eg.ru/tag/postfix/ взято тут]
* [http://muff.kiev.ua/content/obzor-web-interfeisov-dlya-pochtovogo-servera полезное по webmail]
* [http://muff.kiev.ua/content/obzor-web-interfeisov-dlya-pochtovogo-servera полезное по webmail]
* [http://ilohamail.org/ оптимальный webmail]
* [http://ilohamail.org/ оптимальный webmail]

Версия от 10:52, 1 октября 2013

Xmail Содержание

   1 Установка
   2 Описание файлов конфигурации
   3 Настройка
       3.1 Создание почтового домена
       3.2 Создание пользователей почтовой системы
       3.3 Настройка пересылки почты
   4 Литература
   5 Справочная информация

Статья о pop3/smtp сервере Xmail

Xmail позволяет создать почтовый домен который не привязан к локальному - виртуальный почтовый домен. И виртуальных пользователей которые могут быть не определены как локальные. Пакет предоставляет "в одном флаконе" оба сервера - pop3 на прием писем и smtp на их передачу. Сайт проекта http://www.xmailserver.org/ Установка

Пакет присутствует в хранилище пакетов debian. Для установки пакета

   в командной строке: следует выполнить команду # apt-get install xmail
   в графическом режиме: воспользоваться специализированной программой управления пакетами 

При установке пакета будут удалены имеющиеся в системе pop3 и smtp сервера. После установки для начала работы пакет необходимо настроить. Полезно также установить пакет с документацией xmail-doc:

 # apt-get install xmail-doc

Некоторые часто используемые команды

 # /etc/init.d/xmail restart                     - перезапуск почтового сервера
 # cat /var/log/xmail/<ИМЯ_ФАЙЛА>                - просмотр логов
 # iceweasel /usr/share/doc/xmail/Readme.html     - просмотр документации xmail

Описание файлов конфигурации

Пакет Xmail содержит ряд файлов конфигурации основная масса которых расположена в папке /etc/xmail. Ниже приводится описание назначения файлов конфигурации и их местонахождения. имя файла местонахождение назначение mailname /etc имя создаваемого почтового домена aliasdomain.tab /etc/xmail псевдонимы домена aliases.tab /etc/xmail прочие псевдонимы ctrlaccounts.tab /etc/xmail пользователь и пароль управляющий xmail ctrl.ipmap.tab /etc/xmail сети с которых разрешен доступ к xmail domains.tab /etc/xmail все (виртуальные) почтовые домены extaliases.tab /etc/xmail filters.in.tab /etc/xmail filters.out.tab /etc/xmail filters.post-data.tab /etc/xmail filters.post-rcpt.tab /etc/xmail filters.pre-data.tab /etc/xmail finger.ipmap.tab /etc/xmail mailusers.tab /etc/xmail (pop3) пользователи почтовой системы, пароли, папки pop3 pop3.ipmap.tab /etc/xmail сети откуда разрешен доступ к pop3 серверу pop3links.tab /etc/xmail server.tab etc/xmail основной файл конфигурации почтовго сервера xmail smtpauth.tab /etc/xmail smtp пользователи почтовой системы, пароли, полномочия smtpextauth.tab /etc/xmail способ авторизации smtp на данном сервере smtpfwd.tab /etc/xmail внешний сервер - почтовый шлюз для перенаправления писем smtpgw.tab /etc/xmail внешний сервер - почтовый шлюз для пересылки писем smtp.ipmap.tab /etc/xmail сети откуда разрешен доступ к smtp серверу smtp.ipprop.tab /etc/xmail smtprelay.tab /etc/xmail сети которым разрешено использовать сервер как smtp-relay spam-address.tab /etc/xmail spammers.tab /etc/xmail userdef.tab /etc/xmail общие пользовательские настройки cmd_line /etc/xmail ключи запуска xmail default_domain /etc/xmail почтовый домен по умолчанию dnsroots /etc/xmail gw.tab /var/lib/xmail/userauth/smtp описание smtp клиента к внешнему серверу gw user.tab /var/lib/xmail/domains/<DOMAIN>/<USER> файл индивидуализации пользовательских настроек Настройка

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

   определить виртуальный почтовый домен
   создать пользователей почтовой системы и предоставить им возможность принимать и отправлять письма
   осуществить настройку пересылки почты внешним серверам 

Создание почтового домена

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

   выбираем имя создаваемого виртуального домена - например mail.ru
   в файл /etc/mailname добавляем строку 
 mail.ru
   в файл /etc/aliasdomain.tab добавляем строку 
 "mail"	"mail.ru"
   в файл /etc/aliases.tab добавляем строку 
 "mail.ru"	"root"	"postmaster"
 "mail.ru"	"abuse"	"postmaster"
   в файл /etc/domains.tab добавляем строку 
 "mail.ru"
   в файл /etc/server.tab добавляем строку 
 "RootDomain"	"mail.ru"
 "SmtpServerDomain"	"mail.ru"
 "POP3Domain"	"mail.ru"
 "HeloDomain"	"mail.ru"
 "PostMaster"	"root@mail.ru"
 "ErrorsAdmin" "root@mail.ru"
   в файл /etc/default_domain добавляем строку 
 mail.ru
   перезапускаем почтовый сервер 

Создание пользователей почтовой системы

Пользователи почтовой системы Xmail могут не существовать в локальной системе. В связи с этим будем называть их виртуальными. В Xmail различаются pop3 и smtp пользователи. Для создания pop3-пользователей

   получаем хеш-пароль pop3-пользователя. Для этого используем команду 
 # XMCrypt 11111111
   в файл /etc/mailusers.tab добавляем строки 
 "mail.ru"    "postmaster"   "5454545454545454"       1       "postmaster"    "U"
 "mail.ru"    "myuser"       "5454545454545454"       2        "myuser"       "U"
 "mail.ru"    "tdkare"       "5454545454545454"       3       "tdkare"        "U"
 где в третьем столбце расположен хеш-пароль pop3-пользователя
   создаём каталоги пользователей 
 копируем папку /var/lib/xmail/domains/mail.ru/postmaster в папку /var/lib/xmail/domains/mail.ru/<USER>
   в файле /etc/pop3.ipmap.tab проверяем сети которым разрешён доступ к pop3-серверу 
 "0.0.0.0"	"0.0.0.0"	"ALLOW"	1
   устанавливаем размер почтового ящика 
 либо в /var/lib/xmail/domains/mail.ru/<USER>/user.tab
 либо в userdef.tab
 ВНИМАНИЕ! параметр "MaxMBSize" это максимальный размер почтового ящика в Кб! (См. документацию xmail-doc)

Для создания smtp-пользователей

   в файл /etc/smtpauth.tab добавляем строки 
 "myuser"	"<PASSWORD>"	"MRVZ"
 "tdkare"	"<PASSWORD>"	"MRVZ"
   в файле /etc/smtpextauth.tab определяем тип smtp-авторизации 
 "PLAIN" "/usr/bin/my-auth" "-a" "@@AUTH" "-u" "@@USER" "-p" "@@PASS" "-r" "@@RFILE"
   в файле /etc/smtp.ipmap.tab проверяем сети которым разрешён доступ к smtp-серверу 
 "0.0.0.0"	"0.0.0.0"	"ALLOW"	1

Настройка пересылки почты

Почтовая система Xmail может пересылать письма внешним почтовым серверам. Возможность пересылки писем имеется не только в случае если Xmail "видит" интернет, но и в случае когда прямого выхода в интернет нет. Пересылку писем в первом случае назовём прямой доставкой, а во втором - пересылкой через посредника.

Для настройки прямой пересылки почты внешним серверам

   проверяем что в файлах smtpfwd.tab, smtpgw.tab ничего нет
   проверяем что в файле server.tab закомментированы строки 
 #"DefaultSMTPGateways"	"192.168.0.х"
 #"EnableAuthSMTP-POP3"	"0"
   перезапускаем почтовый сервер 

Для проверки После этого создаём почтовый ящик с доступом на "внешний" сайт от которого желаем осуществлять высылку почту и осуществляем доставку почты через Xmail.

Для настройки пересылки почты через посредника (незаконченный раздел) Если доступа в интернет нет, то для пересылки писем требуется smtp-шлюз или smtp-прокси который и осуществляет пересылку писем.