Postfix“smtpd_recipient_restrictions”에 대한 최적 매개 변수 설정


8

우리는 다른 ISP로부터 DNS를 물려 받았으며 이제 메일 서버는 분당 약 1000 개의 이메일로 공격을받으며이 이메일의 99.99 %는 스팸 일뿐입니다. 우리는 스팸을 걸러 내고 필터링 / 거부를 ​​최적화하려고 노력하고 있습니다.

귀하의 의견으로는 최적의 설정은 smtpd_recipient_restrictions무엇입니까?

시스템 설정 : Ubuntu + Amavis + Postfix + MySQL + Fail2Ban-Postfix

조언을 환영합니다!

UDPATE, 2012-08-08

posftix 구성을 다음과 같이 변경하고 Potrgey 서비스를 구성하면 스팸 수준이 10 배 감소했습니다.

smtpd_recipient_restrictions = 
permit_mynetworks, 
permit_sasl_authenticated, 
reject_non_fqdn_hostname, 
reject_invalid_hostname, 
reject_non_fqdn_sender, 
reject_unknown_sender_domain, 
reject_non_fqdn_recipient, 
reject_unknown_recipient_domain, 
check_policy_service inet:127.0.0.1:10023, 
reject_rbl_client zen.spamhaus.org, 
check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf,
reject_unauth_pipelining, 
reject_unauth_destination

여기에 이미지 설명을 입력하십시오


1
그 도메인을 사고 싶습니다! 제안하십시오.
mailq

무엇을 해결하려고합니까? 뭐가 문제 야? 스팸을 거부한다고 말합니다. 그러나 이것은 문제가되지 않습니다. 이것은 해결책입니다.
mailq

@mailq : 안타깝게도 죄송합니다
Igor

@mailq : 스팸을보다 효과적으로 거부하고 시스템 부하를 줄이려는 아이디어
Igor

답변:


6

당신은 규칙의 순서가 매우 나쁩니다. 모두 유지하고 다른 것을 추가하지 않으려면 순서는 다음과 같아야합니다.

smtpd_recipient_restrictions = 
permit_mynetworks, 
permit_sasl_authenticated, 
reject_unauth_pipelining, 
reject_invalid_hostname, 
reject_non_fqdn_sender, 
reject_unknown_sender_domain, 
reject_unauth_destination, 
reject_unknown_recipient_domain, 
reject_rbl_client zen.spamhaus.org,
check_recipient_access proxy:mysql:/etc/postfix/mysql-virtual_recipient.cf, 
reject_non_fqdn_recipient

그래도 충분하지 않으면 http://www.postfix.org/POSTSCREEN_README.htmlpostscreen 에서 읽으십시오 .


죄송하지만 주문이 중요합니까? 어떤 의미에서 접두사는 처음에는 "permit_mynetworks"와 마지막에는 "reject_non_fqdn_recipient"를 확인합니다.
Igor

1
확실하게! 주문이 중요합니다. 왼쪽에서 오른쪽으로 (또는 아래로) postfix.org/SMTPD_ACCESS_README.html
mailq

5

다음과 유사한 smtpd_recipient_restriction을 제안합니다.

smtpd_recipient_restricdtions = 
# Whitelisting or blacklisting:
check_recipient_access proxy:mysql:/etc/postfix/mysql-virtual_recipient.cf,
# Everyone should play after rules:
reject_non_fqdn_recipient,
reject_non_fqdn_sender,
reject_unknown_recipient_domain,
reject_unknown_sender_domain,
reject_unauth_pipelining,
# Mails from your users:
permit_mynetworks,
permit_sasl_authenticated,
# This will block mails from domains with no reverse DNS record. Will affect both spam and ham mails, but mostly spam. 
reject_unknown_reverse_client_hostname,
# Instead of reject_unknown_reverse_client_hostname you can also use reject_unknown_client_hostname, which is an even harder rule. 
# Reject ugly HELO/EHLO-hostnames (could also affect regular mails):
reject_non_fqdn_hostname,
reject_invalid_helo_hostname,
# Reject everything you're not responsible for:
reject_unauth_destination,
# Only take mails for existing accounts:
reject_unverified_recipient,
# DNS lookups are "expensive", therefore should be at bottom
reject_rbl_client zen.spamhaus.org

smtpd_recipient_restrictions에 대한 자세한 내용은 여기를 참조 하십시오 : http://www.postfix.org/postconf.5.html#smtpd_recipient_restrictions

postgrey , postscreen , postfwd 또는 다른 정책 데몬 을 사용하고 싶을 수도 있습니다 .

또한 사전 대기열 모드에서 amavisd-new를 사용하고 있는지 확인하십시오.


이것은 나쁘다. 두 번째 줄은 모든 발신 수신자의 메일을 차단합니다. 따라서 서버에서 외부로 메일을 보낼 수 없습니다. MySQL 쿼리는 DNS 쿼리와 마찬가지로 비쌉니다. 따라서 MySQL 쿼리를 맨 아래로 이동해야합니다.
mailq
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.