Всем привет!
Все маны прочитал, ответа не нашел на следующий вопрос:
Установил почтовый сервер в докер-контейнерах для обслуживания нескольких доменов в сборке mailu.io. Ключи создал, в DNS все что нужно прописал (DKIM, SPF, DMARC).
Но при детальном рассмотрении выяснилось что исходящие письма не имеют подписи DKIM (Заголовок DKIM-Signature отсутствует).
конфиг: mailu/overrides/rspamd/dkim_signing.conf
selector = "dkim";
path = "/dkim/mail.mydomain.ru.$selector.key";
# ниже шаманнил "вдруг прокатит", не получилось.
use_domain_sign_networks = "header";
allow_username_mismatch = true;
try_fallback = true;
результирующий конфиг rspamd: (rspamadm configdump)
dkim_signing {
use_vault = true;
vault_url = "http://admin/internal/rspamd/vault";
vault_token = "mailu";
use_domain_sign_networks = "header";
use_domain = "header";
allow_hdrfrom_mismatch = false;
allow_username_mismatch = true;
path = "/dkim/mail.mydomain.ru.$selector.key";
symbol = "DKIM_SIGNED";
sign_authenticated = true;
allow_envfrom_empty = true;
allow_hdrfrom_multiple = false;
sign_local = true;
sign_networks [
"127.2.4.7",
]
use_esld = false;
try_fallback = true;
use_redis = false;
key_prefix = "DKIM_KEYS";
selector = "dkim";
}
то есть он конфиг зачитал.
путь /dkim прописан в контейнере
в логе:
#28(rspamd_proxy) <8a0050>; lua; greylist.lua:217: skip greylisting for local networks and/or authorized users
#28(rspamd_proxy) <8a0050>; proxy; dkim_symbol_callback: skip DKIM checks for local networks and authorized users
#28(rspamd_proxy) <8a0050>; lua; spf.lua:186: skip SPF checks for local networks and authorized users
#28(rspamd_proxy) <8a0050>; lua; dmarc.lua:349: skip DMARC checks as either SPF or DKIM were not checked
#28(rspamd_proxy) <8a0050>; lua; whitelist.lua:301: skip DMARC/SPF blacklists for local networks and/or authorized users
#28(rspamd_proxy) <8a0050>; dkim_signing; lua_dkim_tools.lua:183: user is authenticated
#28(rspamd_proxy) <8a0050>; dkim_signing; lua_dkim_tools.lua:405: use domain(header) for signature: mydomain.ru
#28(rspamd_proxy) <8a0050>; dkim_signing; lua_dkim_tools.lua:425: final DKIM domain: mydomain.ru
Это все что пишет dkim_signing,
функция prepare_dkim_signing() в lua_dkim_tools.lua завершается с условием «все нормально»
-- TODO: try every domain in the vault
return true, {
domain = dkim_domain,
vault = true,
}
в [L473 строке] (https://github.com/rspamd/rspamd/blob/master/lualib/lua_dkim_tools.lua#L473)
Дальше в логе:
inet_address_connect: connect [::1]:11335 failed: 99, 'Address not available'
proxy; register_fuzzy_client_call: cannot connect to localhost:11335([::1]:11335), 22, Invalid argument
lua; once_received.lua:102: Skipping once_received for authenticated user or local network
proxy; finalize_item: slow rule: URIBL_MULTI(503): 330.67 ms; enable slow timer delay
proxy; finalize_item: slow rule: SURBL_MULTI(509): 817.40 ms; enable slow timer delay
proxy; rspamd_redis_connected: skip obtaining bayes tokens for BAYES_HAM of classifier bayes: not enough learns 28; 200 required
proxy; rspamd_redis_connected: skip obtaining bayes tokens for BAYES_SPAM of classifier bayes: not enough learns 24; 200 required
proxy; rspamd_stat_classifiers_process: skip statistics as SPAM class is missing
lua; greylist.lua:331: Score too low - skip greylisting
lua; neural.lua:442: skip ham sample to keep spam/ham balance; probability 0.5283018867924528; 25 spam and 52 ham vectors stored
lua; neural.lua:69: created new ANN profile for default:default, data stored at prefix rn_default_default_x6qwp8o7_0
proxy; rspamd_task_write_log:
Внятной документации про устройство mailu не нашёл (схема работы подписи), а из коробки не запустилось.
Ну другом сервере OpenDKIM + postfix поднял, все подписывает. А здесь за подпись отвечает RSPAMD, если изменить Milter для postfix то и фильтр спама перестает работать.
Вопрос: Что я делаю не так? Куда копать? Что менять (кроме днк ;)? Есть ли где-то внятное описание этой всей схемы?