SMTP 서버로 Office365로 마이그레이션한 이후 (현재 실행 중인) Debian 10 postfix 구성을 재구성하려고 합니다. postfix 메일 구성은 서버 자체에서 생성된 메일(logcheck 메일 등)을 보내는 데에만 사용됩니다.
내가 해야 할 유일한 변경 사항은 relayhost
설정을
다음에서 다음으로 변경하는 것이었습니다 relayhost = some.mail.provider:465
.relayhost = smtp.office365.com:587
질문:
그러나 이것은 작동하지 않습니다. /var/log/syslog
내가 받기 전에
Sep 21 15:03:30 pasteur postfix/smtp[16877]: SSL_connect error to smtp.office365.com[40.101.137.34]:587: -1
Sep 21 15:03:30 pasteur postfix/smtp[16877]: warning: TLS library problem: error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../ssl/record/ssl3_record.c:332:
Sep 21 15:03:30 pasteur postfix/smtp[16877]: EC2809EF92: Cannot start TLS: handshake failure
질문: 혹시 해결책 아시는 분 계신가요?
/etc/postfix/main.cf에서 다양한 postfix 설정을 시도했지만 작동하지 않습니다. 예를 들어 smtp_tls_security_level = encrypt
다음으로 변경하면 ... = may
다음과 같은 syslog 항목이 생성됩니다. smtp_tls_wrappermode requires "smtp_tls_security_level = encrypt" (or stronger)
내 접미사 설정은 /etc/postfix/main.cf
다음과 같습니다
# Ansible managed
smtpd_banner = $myhostname ESMTP $mail_name
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
# See http://www.postfix.org/COMPATIBILITY_README.html
# default to 2 on fresh installs.
compatibility_level = 2
# 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
# Enable SASL authentication
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = static:<someuser>:************
smtp_sasl_security_options = noanonymous
smtp_tls_wrappermode = yes
smtp_use_tls = yes
smtp_tls_security_level = encrypt
# General
myhostname = pasteur.<ourdomain>.com
myorigin = /etc/mailname
mydestination = $myhostname localhost.$mydomain localhost pasteur
mynetworks = "127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128"
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
relayhost = smtp.office365.com:587
답변1
이제 Microsoft에서 설명한 "직접 보내기" 방법을 사용하여 문제를 회피했습니다. https://docs.microsoft.com/en-us/exchange/mail-flow-best-practices/how-to-set-up-a-multifunction-device-or-application-to-send-email-using- Microsoft-365-또는-office-365
relayhost
이는 설정(URL 및 포트)과 일부 TLS 설정을 변경해야 함을 의미합니다.
답변2
암호화 계층은 포트 465 및 587과 다릅니다.
- 포트 465는 SSL을 사용한 통신을 예상합니다.
STARTTLS
포트 587은 세션 초기 단계에서 명령을 사용하여 일반 텍스트로 초기 통신을 기대합니다.
나는 해결책이 변화라고 믿는다
smtp_tls_security_level = may