Fedora

Fedora 上的 Postfix 不遵循別名

  • July 13, 2019

我創建了一個腳本來安裝 Postfix,它可以完美地與我所有的 Ubuntu 客戶端配合使用,但不適用於我的 Fedora 客戶端。

Fedora 客戶端能夠直接向 user@domain.com 發送電子郵件,但是當發送到 root 時,它應該被重定向到 user@gmail.com,而是被發送到 root@freesoftwareservers.com

我一生都想不通為什麼……如果有人能指出這個很棒的問題,這裡是配置和日誌。

#!/bin/bash

DOMAIN=domain.com
forwardemail=domain@gmail.com

cat << 'EOL' >/etc/postfix/main.cf
#
#PostFixConfig

##Modify Below [HOSTNAME] & [DOMAIN]##
######################################
myhostname = [HOSTNAME]
mydomain = [DOMAIN]

relayhost = smtp.$mydomain

biff = no
append_dot_mydomain = no
readme_directory = no

smtpd_banner = $myhostname ESMTP $mail_name
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
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtp_header_checks = regexp:/etc/postfix/header_checks

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

myorigin = $mydomain
mydestination = $myhostname $myhostname.$mydomain localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only
inet_protocols = all
EOL

cat << EOL >/etc/aliases
postmaster: root
root: $forwardemail
trash: /tmp/mail.trash
EOL

newaliases

cat << EOL >/etc/postfix/header_checks
/^From:[[:space:]]+(.*)/ REPLACE From: "$HOSTNAME" <$forwardemail >
EOL

postmap /etc/postfix/header_checks

chown root:root /etc/postfix/ -R && service postfix restart

echo "PostFix Setup For $HOSTNAME" | mail -s "PostFix has forwarded roots e-mail on $HOSTNAME to this e-mail" root

echo ""
echo "Main.CF"
cat /etc/postfix/main.cf
echo ""
echo "header_checks"
cat /etc/postfix/header_checks
echo ""
echo "Aliases"
cat /etc/aliases
echo ""
echo "MailName"
cat /etc/mailname
echo ""
echo "MailLog"
tail /var/log/maillog
tail /var/log/mail.log

日誌:

Jul 13 05:17:25 kvmatrix postfix/cleanup[16951]: F296FE104B: message-id=<20190713121725.F296FE104B@KVMatrix>                                                                                                                                                          
Jul 13 05:17:25 kvmatrix postfix/qmgr[16643]: F296FE104B: from=<root@freesoftwareservers.com>, size=443, nrcpt=1 (queue active)                                                                                                                                       
Jul 13 05:17:26 kvmatrix postfix/smtp[16953]: F296FE104B: replace: header From: root@freesoftwareservers.com (root): From: "kvmatrix" <user@gmail.com >                                                                                                
Jul 13 05:17:26 kvmatrix postfix/smtp[16953]: F296FE104B: to=<root@freesoftwareservers.com>, orig_to=<root>, relay=smtp.domain.com[192.168.1.255]:587, delay=0.06, delays=0.01/0.01/0.03/0.01, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 17FACC247B)                                                                                                                                                                                                                                                                     
Jul 13 05:17:26 kvmatrix postfix/qmgr[16643]: F296FE104B: removed                                                                                                                                                                                                     
[root@kvmatrix ~]#  

我注意到對我to=<root@freesoftwareservers.com>, orig_to=<root>,來說幾乎看起來像“重定向/別名”的行,除了地址是錯誤的。

[root@kvmatrix ~]# cat /etc/aliases                                                                                                                                                                                                                                   
mailer-daemon: postmaster                                                                                                                                                                                                                                             
postmaster: root                                                                                                                                                                                                                                                      
root: user@gmail.com                                                                                                                                                                                                                                   
trash: /tmp/mail.trash  

這是使用完全相同的腳本從工作伺服器設置中獲取的日誌:

Jul 13 05:03:18 confluence postfix/master[4518]: daemon started -- version 3.1.0, configuration /etc/postfix                                                                                                                                                          
Jul 13 05:03:18 confluence postfix/pickup[4521]: B9029A2C44: uid=0 from=<root@confluence.freesoftwareservers.com>                                                                                                                                                     
Jul 13 05:03:18 confluence postfix/cleanup[4525]: B9029A2C44: message-id=<20190713120318.B9029A2C44@confluence>                                                                                                                                                       
Jul 13 05:03:18 confluence postfix/qmgr[4522]: B9029A2C44: from=<root@confluence.freesoftwareservers.com>, size=449, nrcpt=1 (queue active)                                                                                                                           
Jul 13 05:03:18 confluence postfix/cleanup[4525]: BA500A2C45: message-id=<20190713120318.B9029A2C44@confluence>                                                                                                                                                       
Jul 13 05:03:18 confluence postfix/qmgr[4522]: BA500A2C45: from=<root@confluence.freesoftwareservers.com>, size=594, nrcpt=1 (queue active)                                                                                                                           
Jul 13 05:03:18 confluence postfix/local[4533]: B9029A2C44: to=<root@confluence.freesoftwareservers.com>, relay=local, delay=0.01, delays=0.01/0/0/0, dsn=2.0.0, status=sent (forwarded as BA500A2C45)                                                                
Jul 13 05:03:18 confluence postfix/qmgr[4522]: B9029A2C44: removed                                                                                                                                                                                                    
Jul 13 05:03:18 confluence postfix/smtp[4534]: BA500A2C45: replace: header From: root@confluence.freesoftwareservers.com (root): From: "confluence" <user@gmail.com >                                                                                  
Jul 13 05:03:18 confluence postfix/smtp[4534]: BA500A2C45: to=<user@gmail.com>, orig_to=<root@confluence.freesoftwareservers.com>, relay=smtp.domain.com[192.168.1.255]:587, delay=0.04, delays=0/0/0.03/0.01, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as C3BC8C247B)                                                                                                                                                                                                                                      
Jul 13 05:03:18 confluence postfix/qmgr[4522]: BA500A2C45: removed                                                                                                                                                                                                    
Jul 13 05:04:52 confluence postfix/pickup[4521]: 89B08A2C45: uid=0 from=<root@confluence.freesoftwareservers.com>                                                                                                                                                     
Jul 13 05:04:52 confluence postfix/cleanup[4525]: 89B08A2C45: message-id=<20190713120452.89B08A2C45@confluence>                                                                                                                                                       
Jul 13 05:04:52 confluence postfix/qmgr[4522]: 89B08A2C45: from=<root@confluence.freesoftwareservers.com>, size=385, nrcpt=1 (queue active)                                                                                                                           
Jul 13 05:04:52 confluence postfix/cleanup[4525]: 8A550A2C44: message-id=<20190713120452.89B08A2C45@confluence>                                                                                                                                                       
Jul 13 05:04:52 confluence postfix/qmgr[4522]: 8A550A2C44: from=<root@confluence.freesoftwareservers.com>, size=530, nrcpt=1 (queue active)                                                                                                                           
Jul 13 05:04:52 confluence postfix/local[4533]: 89B08A2C45: to=<root@confluence.freesoftwareservers.com>, relay=local, delay=0.01, delays=0/0/0/0, dsn=2.0.0, status=sent (forwarded as 8A550A2C44)                                                                   
Jul 13 05:04:52 confluence postfix/qmgr[4522]: 89B08A2C45: removed                                                                                                                                                                                                    
Jul 13 05:04:52 confluence postfix/smtp[4534]: 8A550A2C44: replace: header From: root@confluence.freesoftwareservers.com (root): From: "confluence" <user@gmail.com >                                                                                  
Jul 13 05:04:52 confluence postfix/smtp[4534]: 8A550A2C44: to=<user@gmail.com>, orig_to=<root@confluence.freesoftwareservers.com>, relay=smtp.domain.com[192.168.1.255]:587, delay=0.05, delays=0/0/0.04/0.01, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 93953C247B)                                                                                                                                                                                                                                      
Jul 13 05:04:52 confluence postfix/qmgr[4522]: 8A550A2C44: removed  

好吧,我過去曾使用過它,但這次嘗試在設置 Postfix 時減少我的配置。我不確定為什麼 Ubuntu 不需要它,但 Fedora 需要它,但這就是我修復它的方式。

/etc/postfix/main.cf:

canonical_maps = hash:/etc/postfix/canonical  

/etc/postfix/規範:

root user@gmail.com

重新載入 Postfix 並測試!–>postmap /etc/postfix/canonical && postfix reload

引用自:https://unix.stackexchange.com/questions/529970