Взято с: http://www.hilik.org.ua
Апр 20 2009
Переходим к установке postfix. Всю подготовительную часть (создание баз авторизации, настройка PostfixAdmin) мы провели в первой части статьи Строим почтовую систему(postfix, dovecot, postfixadmin) – часть первая, установка PostfixAdmin и теперь начинаем разбираться непосредственно с Postfix.
Установим postfix конечно же из портов:
Установим postfix конечно же из портов:
cd /usr/ports/mail/postfix/ make install clean
┌────────────────────────────────────────────────────────────────────┐ │ Options for postfix 2.5.6,1 │ │ ┌────────────────────────────────────────────────────────────────┐ │ │ │[X] PCRE Perl Compatible Regular Expressions │ │ │ │[ ] SASL2 Cyrus SASLv2 (Simple Auth. and Sec. Layer) │ │ │ │[X] DOVECOT Dovecot SASL authentication method │ │ │ │[ ] SASLKRB If your SASL req. Kerberos select this option │ │ │ │[ ] SASLKRB5 If your SASL req. Kerberos5 select this option │ │ │ │[ ] SASLKMIT If your SASL req. MIT Kerberos5 select this option│ │ │ │[ ] TLS Enable SSL and TLS support │ │ │ │[ ] BDB Berkeley DB (choose version with WITH_BDB_VER) │ │ │ │[X] MYSQL MySQL maps (choose version with WITH_MYSQL_VER) │ │ │ │[ ] PGSQL PostgreSQL maps (choose with DEFAULT_PGSQL_VER) │ │ │ │[ ] OPENLDAP OpenLDAP maps (choose ver. with WITH_OPENLDAP_VER)│ │ │ │[ ] CDB CDB maps lookups │ │ │ │[ ] NIS NIS maps lookups │ │ │ │[ ] VDA VDA (Virtual Delivery Agent) │ │ │ │[ ] TEST SMTP/LMTP test server and generator │ │ ├─└────────────────────────────────────────────────────────────────┘─┤ │ [ OK ] Cancel │ └────────────────────────────────────────────────────────────────────┘
Мы включили настройки, для авторизации SMTP через dovecot и возможность проверять наличие пользователей, алиасы, домены и тп в базе MySQL.
Теперь сделаем такой файл настроек posfix main.cf:
queue_directory = /var/spool/postfix command_directory = /usr/local/sbin daemon_directory = /usr/local/libexec/postfix data_directory = /var/db/postfix mail_owner = postfix myhostname = mail.hilik.org.ua mydomain = hilik.org.ua myorigin = $myhostname inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost relay_domains = local_recipient_maps = unix:passwd.byname $alias_maps unknown_local_recipient_reject_code = 550 mynetworks_style = host mynetworks = 127.0.0.0/8 192.168.1.0/24 alias_maps = hash:/usr/local/etc/postfix/aliases alias_database = hash:/usr/local/etc/postfix/aliases smtpd_banner = $myhostname ESMTP $mail_name debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/local/sbin/sendmail newaliases_path = /usr/local/bin/newaliases mailq_path = /usr/local/bin/mailq setgid_group = maildrop html_directory = no manpage_directory = /usr/local/man sample_directory = /usr/local/etc/postfix readme_directory = no #Корневая директория для клиентских почтовых ящиков virtual_mailbox_base = /usr/mail/ #Путь к файлу настроек подключения к MySQL для получения виртуальных алиасов virtual_alias_maps = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf #Путь к файлу настроек подключения к MySQL для получения виртуальных доменов virtual_mailbox_domains = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf #Путь к файлу настроек подключения к MySQL для получения виртуальных пользователей virtual_mailbox_maps = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf #Работать dovecot будет от nobody virtual_minimum_uid = 65534 virtual_uid_maps = static:65534 virtual_gid_maps = static:65534 #Для доставки в локальные почтовые ящики будем использовать доставщик dovecота virtual_transport = dovecot dovecot_destination_recipient_limit = 1 #Включаем smtp авторизацию через dovecot smtpd_sasl_auth_enable = yes smtpd_sasl_exceptions_networks = $mynetworks smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth #Устанавливаем разрешения smtpd smtpd_recipient_restrictions = #локальная сеть permit_mynetworks #smtp авторизация permit_sasl_authenticated #всем остальным релай запрещаем reject_unauth_destination
#Имя пользователя для подключения к базе MySQL user = postfix #Пароль подключения к MySQL password = postfixpass #Адрес сервера MySQL hosts = localhost #Имя базы MySQL dbname = postfix #Запрос на получения адреса aliasа query = SELECT goto FROM alias WHERE address='%s' AND active = '1'
user = postfix password = postfixpass hosts = localhost dbname = postfix #Запрос на получение списка виртуальных доменов query = SELECT domain FROM domain WHERE domain='%u'
user = postfix password = postfixpass hosts = localhost dbname = postfix #Запрос отвечающий за получение информации о виртуальном пользователе query = SELECT CONCAT(domain,'/',maildir) FROM mailbox WHERE username='%s' AND active = '1'
dovecot unix - n n - - pipe flags=DRhu user=nobody:nobody argv=/usr/local/libexec/dovecot/deliver -d ${recipient}
Добавим разрешение на запуск postfix:
echo "postfix_enable=YES" >>/etc/rc.conf
Финальная часть: Строим почтовую систему(postfix, dovecot, postfixadmin) – часть третья, установка dovecot
Комментариев нет:
Отправить комментарий