В настоящее время я настраиваю новый виртуальный частный сервер с Debian Wheezy. Мне удалось установить postfix, dovecot (IMAP) и MySQL.
До сих пор я мог успешно входить через SSL с помощью внешнего почтового клиента, такого как Thunderbird или моего почтового клиента Android, и получать почту. Однако отправка пока не работает, так как я получаю эту ошибку при попытке отправить:
Nov 13 13:35:30 vmd3299 dovecot: auth-worker(7819): mysql(127.0.0.1): Connected to database mailserver
Nov 13 13:35:30 vmd3299 dovecot: imap-login: Login: user=<kontakt@mydomain.de>, method=PLAIN, rip=109.44.0.191, lip=91.205.173.36, mpid=7821, TLS, session=<1/JfMw7rqABtLADF>
Nov 13 13:35:42 vmd3299 postfix/smtpd[7822]: connect from ip-109-44-0-191.web.vodafone.de[109.44.0.191]
Nov 13 13:35:43 vmd3299 postfix/smtpd[7822]: NOQUEUE: reject: RCPT from ip-109-44-0-191.web.vodafone.de[109.44.0.191]: 554 5.7.1 <kontakt@mydomain.de>: Recipient address rejected: Access denied; from=<kontakt@mydomain.de> to=<kontakt@mydomain.de> proto=ESMTP helo=<[10.149.184.22]>
Nov 13 13:35:43 vmd3299 postfix/smtpd[7822]: disconnect from ip-109-44-0-191.web.vodafone.de[109.44.0.191]
Насколько я вижу, регистрация TLS, кажется, работает, но это все. Я не могу отправлять письма ни одному получателю, ни внешним получателям, ни локальным почтовым учетным записям в одном домене.
Мои точные версии:
- Постфикс 2.9.6
- Debian Wheezy (3.2.0-4-amd64 # 1 SMP Debian 3.2.51-1 x86_64 GNU/Linux)
Вот мой постфикс main.cf:
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_recipient_restrictions = permit_sasl_authenticated, reject
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
myhostname = vmd3299.myhoster.net
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = vmd3299.myhoster.net, localhost.myhoster.net, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf,mysql:/etc/postfix/mysql-email2email.cf
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
После долгих часов поисков я дошел до того, что теперь не знаю, что делать. Кто-нибудь может мне помочь с этим и, может быть, проведет меня через последние шаги? У меня почему-то есть ощущение, что здесь нужно сделать совсем немного. Заранее спасибо!
Обновить:
После изменения этой строки:
smtpd_recipient_restrictions = permit_sasl_authenticated, reject
к этому:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
Я смог отправить тестовое письмо самому себе, получатель был тем же пользователем, который отправил письмо. Другие существующие внешние получатели по-прежнему отклоняются:
Nov 13 14:19:45 vmd3299 postfix/smtpd[8240]: NOQUEUE: reject: RCPT from ip-109-44-0-191.web.vodafone.de[109.44.0.191]: 554 5.7.1 <ed.external@outside.com>: Relay access denied; from=<kontakt@mydomain.de> to=<eddie.external@outside.com> proto=ESMTP helo=<[10.149.184.191]>
Обновить:
Я решил эту проблему, добавив эти две строки в /etc/postfic/main.cf
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
Теперь все работает нормально с TLS и аутентификацией.