У меня настроен почтовый сервер на основе этогоруководство(Немецкий), с возможно важной деталью, что я использую 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 не может к нему подключиться, я не знаю, как это отладить дальше, и буду признателен за любой совет о том, как действовать дальше. Спасибо.
решение1
После случайных попыток внести различные изменения в конфигурацию я наткнулся на решение. По какой-то причине 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
и вдруг больше никаких ошибок!