Image

지식 기반 → Postfix를 사용한 스팸 방지 보호

[가상 서버]
출판 날짜: 14.06.2023

Postfix 서비스 구성 파일을 사용하면 설정을 세부적으로 조정하고 자체 수단을 사용하여 서비스 자체 수준에서 스팸의 양을 줄일 수 있습니다. 이 가이드에서는 PTR 레코드가 없고 잘못된 인사말이 있으며 DNSBL 목록을 사용하는 보낸 사람의 메일을 차단합니다.

1. 이러한 설정을 구성 파일에 추가해 보겠습니다(라인 주석 처리):

nano /etc/postfix/main.cf

#smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

다음 구성을 추가해 보겠습니다:

nano /etc/postfix/main.cf

smtpd_client_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_pipelining permit

smtpd_helo_restrictions = permit

smtpd_sender_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_sender reject_unknown_sender_domain permit

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_recipient reject_unauth_destination reject_unknown_recipient_domain reject_unverified_recipient reject_unknown_client_hostname reject_invalid_helo_hostname reject_non_fqdn_helo_hostname reject_unknown_helo_hostname reject_rbl_client b.barracudacentral.org reject_rbl_client dnsbl.abuse.ch reject_rbl_client bl.spamcop.net reject_rbl_client dul.ru permit

smtpd_data_restrictions = permit

smtpd_end_of_data_restrictions = permit

설정을 적용하려면 postfix를 다시 시작하세요:

systemctl restart postfix

규칙을 제거하거나 추가함으로써 발신자에 대한 요구 수준을 조절할 수 있습니다. 예를 들어 대부분의 인기 메일 서비스는 잘못된 서버 인사말이 있고 PTR 레코드를 MX와 일치시키지 않은 메일을 허용합니다. 아래는 설정에 대한 설명입니다:

  • permit_mynetworks — mynetworks 설정에 나열된 모든 주소를 확인합니다. 
  • allow_sasl_authenticated - 성공적으로 인증된 모든 클라이언트의 요청을 허용합니다.
  • reject_unauth_pipelining — 현재 전송된 이메일을 거부합니다(올바른 SMTP 세션 체인 우회). 
  • reject_non_fqdn_sender — 보낸 사람 주소가 올바르지 않으면 연결을 거부합니다. 
  • reject_unknown_sender_domain — MAIL FROM 헤더에 DNS MX 레코드와 DNS A 레코드가 없고 Postfix가 보낸 사람 주소의 최종 대상이 아닌 경우 요청을 거부합니다. 
  • reject_non_fqdn_recipient — 수신자의 주소가 잘못된 경우 연결을 거부합니다. 
  • reject_unauth_destination — 승인 없이 서비스에 접속하는 것을 금지합니다.
  • reject_unknown_recipient_domain — 보낸 사람의 도메인에 MX 및 A DNS 레코드가 없으면 요청을 거부합니다. 
  • reject_unverified_recipient — RCPT TO 주소로 전송된 메일이 거부된 것으로 알려졌거나 수신자의 주소를 사용할 수 없는 경우 요청을 거부합니다. 
  • reject_unknown_client_hostname — 보낸 사람의 PRT 레코드가 있는지, PTR에 따라 작업 중인 A 레코드가 있는지 확인합니다. 
  • reject_invalid_helo_hostname — HELO 인사말 구문을 확인합니다. 
  • reject_non_fqdn_helo_hostname — HELO 인사말 중에 올바른 FQDN이 필요합니다.
  • reject_unknown_helo_hostname — A 레코드나 MX ​​레코드가 없는 이름을 도입하는 것을 금지합니다. 
  • reject_rbl_client — 보낸 사람이 블랙리스트에 있는지 확인합니다.
  • permit - 연결을 허용합니다. 각 블록의 끝에 표시됩니다(서신이 둘 이상의 금지 규칙에 해당하지 않는 경우 이를 전달합니다).




No Comments Yet