화이트리스트를 사용하여 인증된 smtp 이메일 강제 적용

화이트리스트를 사용하여 인증된 smtp 이메일 강제 적용

root@servername예를 들어 이메일이 에서 오는 경우를 제외하고 인증된 smtp 이메일만 허용할 수 있는 exim 설정이 필요합니다 . 오늘 제가 가지고 있는 것은 다음과 같습니다.

acl_not_smtp (custom_begin_outgoing_notsmtp_checkall)

deny
authenticated = *
condition = ${if !eq {root@$primary_hostname}{${address:$h_from:}}}
message = REJECTED
accept

이 솔루션은 인증되지 않은 모든 이메일을 차단합니다. 누구든지 더 나은 해결책이 있습니까?

답변1

다른 acl: acl_smtp_rcpt를 호출해야 할 것 같습니다. 이 ACL이 서버에 어떤 이름으로 매핑되어 있는지 알아보세요. 데비안에서는 acl_check_rcpt입니다.

발신자를 테스트하려면 발신자가 이미 제공되어야 하며, 이는 원격 측에서 "RCPT TO:" 명령을 보낼 때 적용됩니다. 시도하지 않고 acl_check_rcpt에서 다음과 같은 작업을 수행합니다.

accept authenticated = *
accept senders = root@servername
deny message = Rejected

쉽게 위조될 수 있는 보낸 사람 주소에 의존해서는 안 됩니다. 다음을 사용하여 보내는 호스트에 대해 테스트할 수 있습니다.

    accept senders = root@servername
           hosts = 127.0.0.1 : localhost

또한 메시지의 출처가 귀하의 서버인지 확인하십시오.

대부분 로컬 메시지는 smtp로 수신되지 않습니다. 구성에 acl_not_smtp가 들어 있습니다. 그러나 다시 한번 이것이 매핑된 이름을 검색해 보세요.

관련 정보