Postfix 設定 SMTP 寄信
BUBU 因公司有站台系統是通過 Postfix 方式進行寄信件傳送,本篇是記錄怎麼利用 Postfix 來設從 SMTP 服務來寄送信件
運行環境
- 系統環境:CentOS 7.9
設定流程
- 在設定之前先安裝必要的套件服務
yum install -y postfix cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain mailx
- postfix 服務下的設定檔
vim /etc/postfix/main.cf
#relayhost = << 將這裡註解起來不要用
移到最下載新增以下的內容
# sets mail server as relay
relayhost = 郵件伺服器:587
# use tls
smtp_use_tls=yes
# use sasl when authenticating to foreign SMTP servers
smtp_sasl_auth_enable = yes
# path to password map file
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
# list of CAs to trust when verifying server certificate
smtp_tls_CAfile = /etc/pki/ca-trust/extracted/pem/email-ca-bundle.pem
# eliminates default security options which are imcompatible with gmail
smtp_sasl_security_options = noanonymous
#for outgoing changes only "smtp".
smtp_header_checks = pcre:/etc/postfix/smtp_header_checks
# envelope_sender
sender_canonical_maps = regexp:/etc/postfix/sender_canonical_maps
- 在 postfix 新增加一個檔案
vim /etc/postfix/sasl_passwd
,在下面新增加您在電子郵件連線方式及帳密
郵件伺服器:587 username:password
- 執行
sasl_passwd
postmap /etc/postfix/sasl_passwd
- 新增
FROM
資訊vim /etc/postfix/smtp_header_checks
/^From:.*/ REPLACE From: HOSTNAME-alert <[email protected]>
- 新增寄件者郵件
vim /etc/postfix/sender_canonical_maps
/.+/ [email protected]
- 設定權限只能限制 postfix 可以執行
cd /etc/postfix
chown postfix sasl_passwd*
- 重啟 postfix 服務
systemctl reload postfix
- 測試看是否能正常寄信
echo "Test mail from postfix" | mail -s "Test Postfix" [email protected]