Я только что установил сервер OpenSMTPD на свою машину Arch Linux. Он работает нормально, когда я запускаю его сам, но не запускается, когда я перезагружаю компьютер.
Здесь 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
:
niols@XXX.XX niols
niols@ZZZ.XX niols
Моя проблема действительно возникает только при перезагрузке. Даже smtpd -v
при запуске вручную не возникает никаких проблем.
Старайтесь не слушать 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.