Я думаю, что fail2ban
использует команду машины mail
для отправки электронной почты, поэтому он использует демон почтовой машины. Если вы посмотрите на этот фрагмент:
# Option: actionstart
# Notes.: command executed once at the start of Fail2Ban.
# Values: CMD
#
actionstart = printf %%b "Hi,\n
The jail <name> has been started successfully.\n
Regards,\n
Fail2Ban"|mail -s "[Fail2Ban] <name>: started on <fq-hostname>" <dest>
здесь взято из (fail2ban
sources на github) , вы можете видеть, что сообщение fail2ban
передается команде mail
(в дистрибутиве на основе Debian это устанавливается через mailutils
пакет). Поскольку я думаю, что ваша проблема в том, что вы не можете использовать или настроить эту команду mail
(что означает настройку почтового сервера), вы можете написать очень простой двоичный файл mail
(на языке, который вы предпочитаете). ), с довольно похожим интерфейсом, который может использовать что-то вроде Gmail App Script для отправки электронной почты или даже Gunmail или Sendgrid для фактической отправки электронной почты с этого компьютера (с помощью запроса POST через REST Api? Они позволяют вам?) и добавьте этот пользовательский двоичный файл в $PATH
пользователя, который запускает fail2ban
.
Редактировать : в документации по вычислениям Google есть страница , связанная с Send Grid. Также согласно этому вы не можете использовать sendmail: порты закрыты.
Google Compute Engine не разрешает исходящие соединения через порты 25, 465 и 587. По умолчанию эти исходящие SMTP-порты заблокированы из-за большого количества злоупотреблений, к которым эти порты подвержены. Кроме того, наличие надежного стороннего поставщика, такого как SendGrid, Mailgun или Mailjet, освобождает Compute Engine и вас от поддержания репутации IP у получателей.