Smartd не может отправить почту
У меня есть 8-поточный сервер CentOS. я настраивалsmartmontools
для мониторинга моих дисков. MTA – этоmsmtp
. Чтобы проверить настройку, я изменил свойsmartd.conf
добавлением:
/dev/sda -a -m my.mail@pro.vider -M test
Поскольку никаких писем я не увидел, решил проверить журнал:
journalctl -u smartd
что дало следующее:
smartd[1184]: Executing test of <mail> to my.mail@pro.vider...
smartd[1184]: Test of <mail> to my.mail@pro.vider produced unexpected output (459 bytes) to STDOUT/STDERR:
smartd[1184]: send-mail: cannot connect to smtp.gmail.com, port 587: Permission denied
smartd[1184]: send-mail: could not send mail (account default from /etc/msmtprc)
smartd[1184]: send-mail: cannot log to /var/log/msmtp.log: cannot open: Permission denied
smartd[1184]: send-mail: log info was: host=smtp.gmail.com tls=on auth=on user=my.mail@pro.vider from=my.mail@pro.vider recipients=my.mail@pro.vider errormsg='cannot connect to smtp.gmail.com, port 587: Permission denied' exitcode=EX_TEMPFAIL
Итак, я попробовал:
echo "My message" | mail -s "Some subject" my.mail@pro.vider
который отправляет почту, но все равно показывает ошибку:
send-mail: cannot log to /var/log/msmtp.log: cannot open: Permission denied
Я подумал, что это может быть проблема с разрешениями SE, поэтому проверил:
getsebool -a | grep mail
что дало:
gitosis_can_sendmail --> off
httpd_can_sendmail --> on
logging_syslogd_can_sendmail --> on
logwatch_can_network_connect_mail --> on
mailman_use_fusefs --> off
postfix_local_write_mail_spool --> on
У меня есть две ошибки, но я не знаю, как их исправить. Был бы рад, если бы кто-нибудь указал мне правильное направление.
Огромное спасибо!
1 ответ
send-mail: невозможно подключиться к smtp.gmail.com, порт 587: разрешение отклонено send-mail: невозможно отправить почту (учетная запись по умолчанию из /etc/msmtprc)
Вероятно, это проблема аутентификации. Проверьте свои учетные данные в своем/etc/msmtprc
.
send-mail: невозможно войти в /var/log/msmtp.log: невозможно открыть: разрешение отклонено
Это может быть AppArmor, запрещающий вход в систему./var/log/msmtp.log
.
Я не знаю насчет CentOS, но вы все равно можете взглянуть на этот вопрос AskUbuntu . В Ubuntu есть профиль AppArmor по умолчанию, который позволяет входить только в/var/log/msmtp
(без.log
расширение).
Или вы можете попробовать сsyslog LOG_MAIL
(который должен войти в/var/log/mail.log
) вместоlogfile /var/log/msmtp.log
в вашем msmtprc, как предложено здесь .