Я только что обновил свой сервер с FreeBSD 10.3 до 11.1. Теперь он работает под управлением Sendmail 8.15.2 и OpenSSL 1.0.2k-freebsd 26 января 2017 года.
С момента обновления отправка почты к мой сервер выходит из строя. Я увеличил уровень журнала, чтобы показать все входящие и исходящие SMTP-команды, используя /usr/sbin/sendmail -d95.99 -bD -X /tmp/test.log
. Типичное входящее соединение выглядит так:
34431 >>> 220 localhost.FKEinternet.net ESMTP Sendmail 8.15.2/8.15.2; Thu, 8 Mar 2018 11:35:32 -0500 (EST)
34431 <<< EHLO [192.168.14.73]
34431 >>> 250-localhost.FKEinternet.net Hello rrcs-184-74-100-26.nys.biz.rr.com [184.74.100.26], pleased to meet you
34431 >>> 250-ENHANCEDSTATUSCODES
34431 >>> 250-PIPELINING
34431 >>> 250-8BITMIME
34431 >>> 250-SIZE
34431 >>> 250-DSN
34431 >>> 250-ETRN
34431 >>> 250-STARTTLS
34431 >>> 250-DELIVERBY
34431 >>> 250 HELP
34431 <<< STARTTLS
И в /var/log/messages
я нахожу
Mar 8 11:35:32 Dreamer kernel: pid 34431 (sendmail), uid 0: exited on signal 11
Можно ли где-нибудь посмотреть журнал сбоев, чтобы понять, что происходит? Что еще я могу сделать для устранения этой проблемы?
РЕДАКТИРОВАТЬ
Помимо экземпляров sh.core
, pkg.core
и pkg-static.core
созданный во время обновления сервера два дня назад, find / -name "*.core" -ls
не вернул файлы ядра, которым меньше года. Где происходит сбой экземпляра sendmail с каждый письмо, которое пытаются доставить, я ожидал найти его не старше нескольких минут. Что могло бы предотвратить .core
файлы не создаются?
Я нашел ответ в ответе DutchDaemon от 12 декабря 2017 г. [sendmail] Множество логов "не выдавало MAIL / EXPN / VRFY / ETRN" ветка на форумах FreeBSD:
При стандартной установке в ваш .mc файл помещается что-то вроде этого:
dnl Enable STARTTLS for receiving email.
define(`CERT_DIR', `/etc/mail/certs')dnl
define(`confSERVER_CERT', `CERT_DIR/host.cert')dnl
define(`confSERVER_KEY', `CERT_DIR/host.key')dnl
define(`confCLIENT_CERT', `CERT_DIR/host.cert')dnl
define(`confCLIENT_KEY', `CERT_DIR/host.key')dnl
define(`confCACERT', `CERT_DIR/cacert.pem')dnl
define(`confCACERT_PATH', `CERT_DIR')dnl
define(`confDH_PARAMETERS', `CERT_DIR/dh.param')dnl
Я сравнил этот блок кода с тем, что было на моем сервере .mc
файл и обнаружил, что в нем отсутствует define('confDH_PARAMETERS','CERT_DIR/dh.param')dnl
линия. Я добавил это, перезапустил sendmail
, и теперь он работает.
Я все еще хотел бы знать, почему никогда не было .core
генерируются файлы, и, как заметил SirDice на форумах FreeBSD,
Странно, что на самом деле он разбился, я ожидал, что он выдаст сообщение об ошибке и откажется запускаться, а не при запуске и segfault, когда вы попытаетесь его использовать.