Назад | Перейти на главную страницу

Предотвращение RCPT TO: перечисление имени пользователя в sendmail на ubuntu

Я пытаюсь настроить sendmail, чтобы он не разрешал перечисление имен пользователей с помощью команды RCPT TO :.

Я бесконечно гуглил, и, насколько я понимаю, лучший способ добиться этого - добавить учетную запись электронной почты для всех адресов в virtusertable.

Итак, я создал новый файл sendmail.cf с этой директивой:

FEATURE(`virtusertable', `hash /etc/mail/virtusertable')dnl     

Затем я добавляю в файл virtusertable.db:

@ubuntu test

и перезапустите sendmail, но он не работает:

mail from:root@ubuntu
250 2.1.0 root@ubuntu... Sender ok
rcpt to:root 
250 2.1.5 root... Recipient ok
rcpt to:fake
550 5.1.1 fake... User unknown

Я где-то ошибаюсь? Или есть лучший способ добиться этого?

Спасибо за любую помощь

Если вы хотите реализовать адрес для приема всей почты домена, делай это так:

LOCAL_CONFIG
Kuser user -m -a.FOUND

LOCAL_RULE_0
R$- < $=w . > $*        $: $(user $1 $) < $2 . > $3
R$- . FOUND < $=w . > $*          $@ catch-all < $2 . > $3

Помните, что левая часть правил разделена правой частью табуляторами. После обновления sendmail.mc с помощью приведенного выше кода запустите sendmailconfig

Однако имейте в виду, что все, что отправляется команде RCPT TO:, проверяется с помощью набора правил check_rcpt. Чтобы предотвратить перечисление имен пользователей, вам может потребоваться использовать такие методы, как серый список (Я использую серый фильтр) и установите правильные значения для greet_pause ClientConn и ClientRate.

Адрес «для всех» не всегда является хорошим решением. Подумайте, хотите ли вы, чтобы отправители, которые ввели неправильный адрес, были проинформированы об их ошибке или нет.