Thunderbird 클라이언트를 사용하여 포트 25(SMTP)에서 실행되는 Postfix 서버를 통해 메일을 보내고 싶습니다.
인증되고 암호화된 연결을 원합니다.
나는 다음 문서를 따랐습니다.
- http://www.postfix.org/SASL_README.html#auxprop_sasldb
- https://wiki.debian.org/PostfixAndSASL#Using_auxprop_with_sasldb
구성은 쉽습니다.
$ sudo apt install libsasl2-modules sasl2-bin
$ sudo saslpasswd2 -c -u example.com yugiohjcj
$ sudo sasldblistusers2
$ sudo vim /etc/postfix/sasl/smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5
$ sudo vim /etc/postfix/main.cf
# SASL
cyrus_sasl_config_path = /etc/postfix/sasl
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
$ sudo bash /etc/init.d/postfix restart
Thunderbird를 구성하는 방법은 다음과 같습니다.
- 편집 > 계정 설정 > 보내는 서버(SMTP)
- 서버 이름: example.com
- 포트: 25
- 연결 보안: STARTTLS
- 인증방법 : 일반 비밀번호
- 사용자 이름:[이메일 보호됨]
Thunderbird에서 메일을 보내면 Postfix 로그에서 다음을 볼 수 있습니다.
postfix/smtpd[103272]: connect from 1.2.3.4.subs.proxad.net[1.2.3.4]
postfix/smtpd[103272]: 39AB821458: client=1.2.3.4.subs.proxad.net[1.2.3.4], sasl_method=PLAIN, [email protected]
postfix/cleanup[103276]: 39AB821458: message-id=<[email protected]>
opendkim[72092]: 39AB821458: DKIM-Signature field added (s=2023, d=example.com)
postfix/qmgr[102890]: 39AB821458: from=<[email protected]>, size=690, nrcpt=1 (queue active)
postfix/smtpd[103272]: disconnect from 1.2.3.4.subs.proxad.net[1.2.3.4] ehlo=2 starttls=1 auth=1 mail=1 rcpt=1 data=1 quit=1 commands=8
postfix/smtp[103277]: 39AB821458: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[64.233.184.26]:25, delay=0.7, delays=0.08/0.01/0.31/0.3, dsn=2.0.0, status=sent (250 2.0.0 OK 1678874625 bh21-20020a05600c3d1500b003da0d302eb6si1264054wmb.27 - gsmtp)
postfix/qmgr[102890]: 39AB821458: removed
따라서 메일은 내 Postfix 서버에서 수신된 다음 예상대로 내 @gmail.com 주소로 전달됩니다(저는 ~/.forward
이를 위해 파일을 사용합니다).
그러나 암호화에 대해서는 아무것도 표시되지 않습니다.
Postfix 서버에 대한 연결이 암호화되어 있습니까?
그렇지 않다면 어떻게 해결할 수 있습니까?
감사해요.
감사합니다.
답변1
postfix/smtpd[103272]: connect from 1.2.3.4.subs.proxad.net[1.2.3.4]
postfix/smtpd[103272]: 39AB821458: client=1.2.3.4.subs.proxad.net[1.2.3.4], sasl_method=PLAIN, [email protected]
[...]
postfix/smtpd[103272]: disconnect from 1.2.3.4.subs.proxad.net[1.2.3.4] ehlo=2 starttls=1 [...]
여기에서 starttls=1
연결에 TLS가 유효한지 확인하세요.
Postfix 구성에 다음 설정을 추가해야 할 수도 있습니다 main.cf
.
smtpd_sasl_security_options = noanonymous, noplaintext
smtpd_sasl_tls_security_options = noanonymous
이는 인증 방법을 TLS 암호화 연결에 해시되지 않은 비밀번호(LOGIN 및 PLAIN)만 전달하도록 제한합니다. 암호화되지 않은 연결에서는 해시된 형식으로 비밀번호를 전송하는 CRAM-MD5 및 DIGEST-MD5만 허용됩니다.
또는 다음을 설정할 수 있습니다.
smtpd_tls_auth_only = yes
인증은 TLS 암호화가 먼저 설정된 경우에만 허용됩니다.
답변2
Connection Security: STARTTLS
너는 괜찮아. 이는 Thunderbird가 서버와의 통신을 암호화해야 함을 의미합니다.
이 줄은 이를 확인합니다 starttls=1
.
postfix/smtpd[103272]: disconnect from 1.2.3.4.subs.proxad.net[1.2.3.4] ehlo=2 starttls=1 auth=1 mail=1 rcpt=1 data=1 quit=1 commands=8
그러나 로그 파일에는 Google의 인바운드 SMTP 서버 연결이 암호화되었는지 여부가 표시되지 않습니다.