클라우드 공급자에서 호스팅되는 postfix 릴레이를 구성 중입니다. 우리 회사의 공개 IP와 정확한 발신자 목록에만 릴레이 액세스를 허용하고 싶습니다. 내 main.cf 구성은 다음과 같습니다.
mynetworks = 127.0.0.0/8 1.2.3.4/23 4.5.6.7/32 7.8.9.1/24
smtpd_recipient_restrictions = permit_mynetworks,
check_sender_access hash:/etc/postfix/allowed_senders,
reject_unauth_destination
allowed_senders는 다음과 같습니다:
[email protected] OK
[email protected] OK
[email protected] OK
이 설정을 유지하면 allowed_mynetworks 설정 이전 또는 이후에 설정했는지 여부에 관계없이 allowed_senders가 무시됩니다. allowed_mynetworks를 제거하면 allowed_senders가 정상적으로 작동합니다.
그렇다면 소스 IP 주소와 보낸 사람 이메일 주소로 이 릴레이에 대한 액세스를 어떻게 제한합니까?
답변1
Postfix 메일링 리스트에 문의하여 답변을 받았습니다. 작업 구성은 다음과 같습니다.
main.cf
mynetworks = 127.0.0.0/8 1.2.3.4/23 4.5.6.7/32 7.8.9.1/24
# No relaying from untrusted networks
smtpd_relay_restrictions =
permit_mynetworks,
reject_unauth_destination
# Also, no relaying by unauthorized senders
smtp_sender_restrictions =
check_sender_access hash:/etc/postfix/allowed_senders,
reject_unauth_destination
# Apply UCE controls to remote clients
smtpd_recipient_restrictions =
permit_mynetworks,
... anti-spam rules if any ...
허용_발신자:
# Just in case, reject relay attempts from untrusted networks
#
[email protected] permit_mynetworks, reject_unauth_destination
[email protected] permit_mynetworks, reject_unauth_destination
[email protected] permit_mynetworks, reject_unauth_destination