Я настроил почтовый сервер на основе этого руководство (Немецкий), с, возможно, важной деталью, что я использую CentOS 8 в качестве базовой ОС вместо Debian. Все работает нормально, за исключением того, что мне не удается интегрировать rspamd в свою установку.
Если я подключу postfix для подключения к rspamd, включив следующие строки в main.cf
:
smtpd_milters = inet:localhost:11332
non_smtpd_milters = inet:localhost:11332
milter_protocol = 6
milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}
milter_default_action = accept
и отправьте электронное письмо, я вижу следующую ошибку от postfix:
postfix/submission/smtpd[125562]: fatal: host/service localhost/11332 not found: Device or resource busy
В worker-proxy.inc
конфигурация для rspamd выглядит как
bind_socket = "localhost:11332";
milter = yes;
timeout = 120s;
upstream "local" {
default = yes;
self_scan = yes;
}
Если я вручную подключаюсь к rspamd с помощью telnet, я не вижу этой ошибки:
# telnet localhost 11332
Trying ::1...
Connected to localhost.
Escape character is '^]'.
Итак, rspamd прослушивает ожидаемый порт, но postfix не может подключиться к нему, я не знаю, как отлаживать это дальше, и был бы признателен за любые советы о том, как действовать дальше. Спасибо.
Попробовав наугад различные изменения конфигурации, я наткнулся на решение. По какой-то причине постфикс не может разрешить localhost
. Я изменил следующие записи в /etc/postfix/main.cf
:
smtpd_milters = inet:localhost:11332
non_smtpd_milters = inet:localhost:11332
к
smtpd_milters = inet:127.0.0.1:11332
non_smtpd_milters = inet:127.0.0.1:11332
и вдруг ошибок больше нет!