[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

exim. acl - проверка recieved



Я заставляю пользователей аутентифицироваться даже для осуществления локальной доставки с помощью следующего акла:

   .ifdef LOCAL_USERS_MUST_AUTH
     deny message = "Even local users must authenticate!"
     hosts = *:!+relay_from_hosts
     !authenticated = *
     condition = ${if
   match_domain{$sender_address_domain}{+local_domains}  {yes}{no} }
   .endif

Но, так как $sender_address_domain берется из From, то возможна ситуация, когда любой человек, указав у себя в mua мой smtp сервер и from с доменом не в +local_domains, сможет доставить письмо без аутентификации любому локальному пользователю. во первых, тут не будет работать фильтрация спама по dnsbl, во-вторых этот инцидент плохо заметен в логах. Неприятно, в общем. Есть ли способ составить акл по следующему алгоритму (или может у кого-то есть уже готовое решение): проверить заголовок Recieved письма - и, если письмо получено *только* нашим сервером от сервера не из +relay_from_domains или +relay_hosts, но, в тоже время, $sender_address_domain не из +local_domains, то посылать его лесом. есть ли какие-то подводные камни у данного решения. я, на первый взляд, их не вижу.

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: