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

(EXIM) ACL, позволяющий только внутреннему домену отправлять псевдоним внутренней группы

Я пытаюсь создать правило ACL, которое позволит только внутренним пользователям / пользователям из белого списка отправлять псевдонимы определенной группы, такие как all @ или office2 @

Я знаю, что мне нужно что-то похожее на:

deny       log_message =  $sender_address is not permitted to send to myprotecteddomain.com my2protecteddomain.com
           domains     = myprotecteddomain.com : my2protecteddomain.com
           ! senders   = *myowndomain.com

Но, возможно, используя внешний файл с адресами из белого списка, я не настолько хорош в ACL Exim!

Если вам это нужно только для локальных пользователей, я думаю, вам не следует использовать sender потому что его можно без проблем подделать - вместо этого вы должны настроить SMTP авторизация (begin authenticators раздел), а затем вы можете использовать что-то вроде этого:

deny  recipients   = lsearch*@;/etc/exim/protected-recipients
      !authenticated = *
      message      = Sending denied - protected list - not authenticated - returned to sender
      log_message  = PROTECTED - sending denied not - authenticated - - logged to file

deny  recipients   = lsearch*@;/etc/exim/protected-recipients
      condition    = ${lookup{$authenticated_id}lsearch{/etc/exim/allowed-users}{no}{yes}}
      message      = Sending denied - protected list - no access - returned to sender
      log_message  = PROTECTED - sending denied - no access - logged to file

Для recipients я использую lsearch*@; поэтому вы можете использовать как полные адреса электронной почты, так и использовать такие символы:

protected-user@general.domain
*@protected-domain

Для аутентифицированных пользователей вам нужно просто перечислить их имена построчно (примечание yes и no порядок в поиске).

Если вам тоже нужны удаленные пользователи, вы можете добавить:

accept  recipients   = lsearch*@;/etc/exim/protected-recipients
    !sender_domains = +local_domains
    condition    = ${lookup{$sender_address}lsearch{/etc/exim/allowed-users}{yes}{no}}

перед первым запретить и перечислить адреса по одному в строке.