OpenSMTPD は再起動時に動作しません

OpenSMTPD は再起動時に動作しません

Arch Linux マシンに OpenSMTPD サーバーをインストールしました。自分で起動すると正常に動作しますが、マシンを再起動すると起動に失敗します。

出力は次のとおりですjournalctl -f _SYSTEMD_UNIT=smtpd.service

-- Reboot --
Oct 05 15:14:29 campbell-kelly smtpd[260]: info: startup
Oct 05 15:14:29 campbell-kelly smtpd[265]: fatal: smtpd: bind: Cannot assign requested address
Oct 05 15:14:29 campbell-kelly smtpd[260]: warn: lost child: pony express exited abnormally
Oct 05 15:14:29 campbell-kelly smtpd[262]: info: control process exiting
Oct 05 15:14:29 campbell-kelly smtpd[263]: info: lookup agent exiting
Oct 05 15:14:29 campbell-kelly smtpd[266]: warn: ca -> control: pipe closed
Oct 05 15:14:29 campbell-kelly smtpd[264]: warn: scheduler -> control: pipe closed

どこから問題が発生するのかはわかりません。インターネットで調べたところ、問題はネットワーク インターフェイスに原因があるようです。

ip link再起動直後の出力は次のとおりです。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether fa:16:3e:11:8a:b3 brd ff:ff:ff:ff:ff:ff

これが私のです/etc/hosts:

127.0.0.1   localhost
51.XXX.XXX.159  campbell-kelly.XXX.XX   campbell-kelly

助けようとしてくれてありがとう!


編集:

私の/etc/smtpd/smtpd.confファイル:

pki mail.XXX.XX certificate  "/etc/smtpd/tls/smtpd.crt"
pki mail.XXX.XX key          "/etc/smtpd/tls/smtpd.key"

table creds                    "/etc/smtpd/creds"
table vdoms                    "/etc/smtpd/vdoms"
table vusers                   "/etc/smtpd/vusers"

listen on eth0 tls pki mail.XXX.XX
listen on eth0 port 587 tls-require pki mail.XXX.XX auth <creds>

accept from any for domain <vdoms> virtual <vusers> deliver to mbox
accept for any relay

私の/etc/smtpd/creds。パスワードは次の方法で取得されましたecho test | smtpctl encrypt:

niols   $6$FgkfVn10xLZbDU4O$17y6Wc5YlYMGAzekSxsjZALWnCeLAH3oS4vk8VeUpe5c7l.uGxE3q.27FwXhXA/.EUz/KRVqRedaNX8.AsJw20

私の/etc/smtpd/vdoms

XXX.XX
XXX.YY
ZZZ.XX

私の/etc/smtpd/vusers

[email protected]        niols
[email protected]    niols

私の問題は実際には再起動時にのみ発生します。smtpd -v手動で起動しても問題は発生しないようです。

答え1

eth0 をリッスンしないようにしてください。0.0.0.0 でリッスンする方が良いかもしれません。

listen on 0.0.0.0 port 587 tls-require pki mail.XXX.XX auth <creds>

同様に、他の行も eth0 に変更します。

これには、127.0.0.1 を使用してメールを送信できるという利点があり、ネットワーク インターフェイスに IPv4 または IPv6 アドレスがまだ割り当てられていない場合でも機能するはずです。

関連情報