Проблема: я пытаюсь отправить и получить электронные письма через один и тот же сервер через домены email.domain1.us и email.domain2.net с аутентифицированными пользователями, а также возможность получать электронную почту.
У меня есть domain1.us и domain2.net, оба размещены на одном сервере с независимыми общедоступными IP-адресами 100.100.100.1 и 200.200.200.2, IP 100.100.100.1 разрешает domain1.us, а IP 200.200.200.2 разрешает domain2.net через записи DNS . Для поддоменов электронной почты в дополнение к тому, что было заявлено ранее, теперь IP 100.100.100.1 также разрешает email.domain1.us и IP 200.200.200.2 email.domain2.net через записи A DNS, а также имеет записи MX DNS.
Я запускаю Ubuntu 16.04.5 LTS, я установил postfix и успешно настроил email.domain1.us для получения и распространения писем в соответствии с моим виртуальным хеш-файлом и для отправки писем только от аутентифицированных пользователей через безопасные соединения с использованием SSL на стандартном порту 465. . Настройки SPF, DMARC, DKIM и запись всех хороших и PASS аутентификации (согласно GOOGLE, когда я отправляю тесты в свою учетную запись GMAIL)
Я использую Ubuntu 16.04.5 LTS
netstat -ltn
показывает
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:587 0.0.0.0:* LISTEN
tcp 0 0 100.100.100.1:587 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:465 0.0.0.0:* LISTEN
tcp 0 0 100.100.100.1:465 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 100.100.100.1:25 0.0.0.0:* LISTEN
Затем я настроил вторичный экземпляр постфикса, используя postmulti, довольно просто:
postmulti -e init
postmulti -I postfix-2 -e create
Изменил или убедился, что следующее было в моем основном файле postfix main.cf
nano /etc/postfix/main.cf
inet_interfaces = localhost, 100.100.100.1 # This was changed from inet_interfaces = all
myhostname = mail.domain1.us # just making sure to have different names on each
multi_instance_wrapper = ${command_directory}/postmulti -p -- # These were added
multi_instance_enable = yes # by the postmulti command init
multi_instance_directories = /etc/postfix-2 # This one was added by postmulti enable command
Затем я сделал резервные копии main.cf и master.cf вторичного экземпляра постфикса и скопировал основные экземпляры постфикса:
cp /etc/postfix/main.cf и т. д. / postfix-2 / main.cf cp /etc/postfix/master.cf и т. д. / postfix-2 / master.cf
и отредактировал параметры, чтобы сделать его независимым и чтобы присутствовали необходимые строки для нескольких экземпляров
nano etc/postfix-2/main.cf
inet_interfaces = localhost, 200.200.200.2 # This was changed from inet_interfaces = all
myhostname = mail.domain2.net # Just making sure to have different names on each
virtual_alias_maps = hash:/etc/postfix-2/virtual # Want to have different users/inboxes
inet_protocols = ipv4 # Some of these were added
master_service_disable = inet # by the enable and/or init commad
authorized_submit_users = # others were added by me after
queue_directory = /var/spool/postfix-2 # reading how to do it better
data_directory = /var/lib/postfix-2
multi_instance_name = postfix-2
multi_instance_enable = yes
Затем внесли следующие изменения в master.cf вторичного экземпляра Postfix, чтобы разделить порты
nano /etc/postfix-2/master.cf
# smtp inet n - y - - smtpd -o smtpd_sasl_auth_enable=yes # Commented this line out
10025 inet n - n - - smtpd -o smtpd_sasl_auth_enable=yes # Added this line
.
.
.
#smtps inet n - y - - smtpd # Commented this line out
10465 inet n - y - - smtpd # Added this line
Наконец, создал виртуальный хеш-файл для вторичного экземпляра Postfix, использовавшего postmap, и включил экземпляр
postmulti -i postfix-2 -e enable
перезапущенный постфикс
service postfix restart
и проверил статус экземпляра
postmulti -i postfix-2 -p status
postfix-2/postfix-script: the Postfix mail system is running: PID: 28004
Я дошел до этого самостоятельно, просматривая форумы и вопросы, но именно здесь я застрял, я подробно изучил, как протестировать вторичный экземпляр, и не могу найти, как это сделать, я не вижу порты 10025 и 10465, когда я пытаться netstat -ltn
и, конечно, когда я пытаюсь протестировать SMTP для mail.domain2.net где-нибудь вроде smtper.net/ Я получаю следующую ошибку:
SMTP send error
Failure sending mail.
No connection could be made because the target machine actively refused it. [::ffff:104.168.34.235]:25
Все работает отлично для email.domain1.us даже после всех этих изменений и настройки вторичного образа Postfix, но не может заставить его работать для email.domain2.net.