私の自宅のUbuntuボックスでは、postfixはすべての送信メールをoutgoing.verizon.net
に中継するように設定されています。残念ながら、これにはローカルのユーザー間電子メール(たとえば、ローカルのcronジョブから私へ、または私から私へ)が含まれ、マシン外に移動する必要はありません。構成(下記)を微調整して、マシンを離れることなくローカル電子メールが配信されるようにする方法はありますか?
注:私はメールサーバー(ポート25)を実行していませんが、IMAPサーバーからダウンロードするために5分ごとにfetchmailを実行しています。
main.cf:
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mycomputer.example.com
masquerade_domains = example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, localhost.localdomain, localhost
relayhost = [outgoing.verizon.net]:587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtp_sasl_auth_enable = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtpd_sasl_auth_enable = no
Postfixは、non-local mails
をrelayhost
で指定されたホストにのみ中継します。ドメインをローカルと見なすには;ドメインはmydestination
パラメータの下にリストされている必要があります。したがって、mydestination
の下にexample.com
をリストすると、この問題を修正するのに役立ちます。
#/etc/postfix/main.cf
#...
mydestination = $myhostname, localhost.localdomain, localhost, example.com
#...
参照: Postfix docs
relayhost (default: empty)
The next-hop destination of non-local mail; overrides non-local domains in
recipient addresses. This information is overruled with relay_transport,
sender_dependent_default_transport_maps, default_transport,
sender_dependent_relayhost_maps and with the transport(5) table.