freebsd:postfix4dovecot
DOVECOT + Postfix
Dovecot을 시작하기 전에, /usr/local/etc/postfix/main.cf에 다음 사항을 확인한다.
# TLS, SASL, Dovecot
smtpd_use_tls = yes
broken_sasl_auth_clients = yes
smtpd_tls_security_level = encrypt
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /usr/local/etc/letsencrypt/live/my.domain/fullchain.pem
smtpd_tls_key_file = /usr/local/etc/letsencrypt/live/my.domain/privkey.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_sasl_type = dovecot
smtpd_sasl_path = /var/spool/postfix/private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous, noplaintext
smtpd_sasl_tls_security_options = noanonymous
smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_sender_login_mismatch,
reject_unauth_destination,
reject_rbl_client rbl.maps.vix.com,
reject_rbl_client bl.spamcop.net,
reject_rbl_client dnsbl.sorbs.net,
reject_rbl_client rhsbl.sorbs.net,
reject_rbl_client dnsbl.njabl.org,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client sbl-xbl.spamhaus.org
smtpd_relay_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
tls_random_source = dev:/dev/urandom
# MISC, as per https://askubuntu.com/questions/1045309/undefined-parameters-in-etc-postfix-master-cf to avoid warning
smtpd_restriction_classes = mua_sender_restrictions, mua_client_restrictions, mua_helo_restrictions
mua_client_restrictions = permit_sasl_authenticated, reject
mua_sender_restrictions = permit_sasl_authenticated, reject
mua_helo_restrictions = permit_mynetworks, reject_non_fqdn_hostname, reject_invalid_hostname, permit
그리고 /usr/local/etc/postfix/master.cf 에서 다음 내용을 확인한다.
smtp inet n - n - - smtpd submission inet n - n - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_tls_auth_only=yes -o smtpd_reject_unlisted_recipient=no -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject -o receive_override_options=no_header_body_checks -o smtpd_client_auth_rate_limit=0 -o smtpd_client_connection_rate_limit=0 -o smtpd_soft_error_limit=99 -o smtpd_hard_error_limit=100 -o smtpd_error_sleep_time=0s
여기까지 설정하였으면 전자우편 관련 서버를 재기동한다.
postfix reload
이제 마지막으로 다음 명령을 차례로 실행해서 dovecot이 제대로 실행되면 성공한 것이다.
cd /usr/local/etc/dovecot postmap users chown postfix:dovecot users* service dovecot start
이제 사용자가 접속이 가능한지, 즉 이 서버를 이용해서 전자우편을 주고 받을 수 있는지를 확인한다.
doveadm auth test userid@my.domain
Password:
passdb: userid@my.domain auth succeeded
extra fields:
user=userid@my.domain
이 아래 내용은 https://blog.andreev.it/?p=1604, 그리고 https://obsigna.com/articles/1539726598.html에 있는 내용을 많이, 그리고 고맙게 참조한 사이트에서 알려주는 내용인데, 이를 실행하면 전자우편 서버들이 제대로 돌아가는지를 확인해 볼 수 있다.
계속해서 보안접속 가능한 서버도 다음 명령어로 확인해 볼 수 있다.
openssl s_client -starttls smtp -connect localhost:587
그 다음에 아래 처럼 화면에 보이는 내용을 입력해본다. 기본적으로 ehlo, mail from:, 그리고 quit.
ehlo my.domain mail from:userid@my.domain 250 2.1.0 Ok quit 250 2.0.0 Bye closed
이제 postifx와 dovecot이 서로 연동하는지를 아래 명령으로 확인한다.
doveadm auth test -a /var/spool/postfix/private/auth userid@my.domain mytopsecret
passdb: userid@my.domain auth succeeded.
user=userid@my.domain
freebsd/postfix4dovecot.txt · 마지막으로 수정됨: 2021/01/10 09:38 저자 127.0.0.1
