Назад | Перейти на главную страницу

Postfix Multi Instance - Тестовое подключение к вторичному экземпляру из внешнего Email xlient для отправки писем

Проблема: я пытаюсь отправить и получить электронные письма через один и тот же сервер через домены 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.