Когда я выполняю, постфикс следующей строки использует мой сервер ретрансляции sendgrid
echo "Тема: тест sendmail" | sendmail -v [email protected]
Но когда я выполняю функцию sendmail через PHP-скрипт, она не отправляет ее на сервер ретрансляции. Похоже, он хочет распространять его локально
Любые мысли о том, как заставить postfix использовать опцию smtp relay
Похоже, постфикс истекает по тайм-ауту на STARTTLS, я добавил журнал ниже. Может ли это быть связано с моим сертификатом LetsEncrypt?
postfix/smtpd[29268]: > localhost[::1]: 250-www.example.com
postfix/smtpd[29268]: > localhost[::1]: 250-КОНВЕЙЕРНАЯ ПОДГОТОВКА
postfix/smtpd[29268]: > localhost[::1]: 250-SIZE 10240000
postfix/smtpd[29268]: > localhost[::1]: 250-VRFY
postfix/smtpd[29268]: > localhost[::1]: 250-ETRN
postfix/smtpd[29268]: > localhost[::1]: 250-STARTTLS
postfix/cleanup[29279]: 8E2B520B98: message-id=<[email protected]>
postfix/smtpd[29268]: smtp_get: EOF
постконф -н
alias_database = хэш:/и т.д./псевдонимы
alias_maps = хеш:/и т.д./псевдонимы
append_dot_mydomain = нет
биф = нет
config_directory = /etc/postfix
header_size_limit = 4096000
inet_interfaces = все
mailbox_command = procmail -a "$EXTENSION"
почтовый ящик_размер_лимит = 0
мой пункт назначения = $имя_хоста, локальный_хост.$мой_домен,_локальный_хост
мой домен = example.com
myhostname = www.example.com
мои сети = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = нет
получатель_разделитель = +
ретранслятор = smtp.sendgrid.net:587
smtp_sasl_auth_enable = да
smtp_sasl_password_maps = статический: apikey: BLBAABLAABLAA
smtp_sasl_security_options = неанонимный
smtp_sasl_tls_security_options = неанонимный
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_tls_security_level = зашифровать
smtp_tls_session_cache_database = btree:${каталог_данных}/smtp_scache
smtpd_banner = $ имя хоста E
SMTP $mail_name (Debian/GNU)
smtpd_relay_restrictions = Permit_MyNetworks Permit_Sasl_Authenticated defer_unauth_destination
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${каталог_данных}/smtpd_scache
smtpd_use_tls = да
Кажется, он отлично работает, когда я пишу скрипт на Python, но с PHP swiftmailer он, кажется, терпит неудачу и возвращает EOF
=============== ОБНОВЛЕНИЕ
Реле вроде работает, но теперь мы получаем эту ошибку
Swift_IoException [0]: время ожидания подключения к локальному хосту: 25 истекло
Я могу отправлять письма с помощью sendmail, но когда SwiftMailer использует sendmail, он получает ранее указанную ошибку