메일 스팸을 차단하는 방법

제 사이트에 존재하지 않는 주소로 귀찮은 메일 스팸이 계속 도착하고 있습니다. 당연히 전송은 실패하지만, 로그가 막힙니다. 소스 IP 주소를 알 수 없는데, 발신자 주소 기준으로 이메일을 차단할 수 있는 방법이 있을까요? 스팸 발신 주식이 계속 바뀌고 있다는 점은 알고 있지만, 조언을 구합니다. 제 Discourse는 자체 호스팅으로 운영되고 있습니다.

아직 확인하지 않으셨다면 다음 게시물이 도움이 될 수 있습니다:

다음 명령을 사용하면 로그에서 대부분의 스팸머 IP 주소를 필터링할 수 있습니다. (이는 엄밀히 말해 RFC 요구사항은 아니지만, 거의 모든 스팸 릴레이에는 유효한 PTR이 없습니다.)

./launcher logs mail-receiver | grep -v 'unknown' | grep -E 'NOQUEUE'

겉보기에 legitimate한 서버에서 스팸이 오는 경우, 이메일 도메인을 사용하여 발신자를 차단하는 것은 여전히 어렵습니다. 도메인은 쉽게 위장할 수 있기 때문입니다. 따라서 가장 좋은 방법은 발신 SMTP 서버의 IP를 찾아서 차단하는 것입니다.

./launcher logs mail-receiver | grep -E '[0-9A-F]{10,}:.+(from=<[^>]|client=)'

결과 쌍에서 첫 번째 값은 SMTP 서버 IP를, 두 번째 값은 발신자 주소를 제공합니다.

mail-receiver를 구성하려면 다음에 설명된 지침을 사용할 수 있습니다.

이 접근 방식을 사용하여 거의 모든 스팸을 제거했습니다.

그것은 사소한 행정적 불편함일 뿐입니다. 완벽하지 않은 차단이 실제 사용자가 포럼에 실질적인 기여를 하는 것을 막는 것과 비교해 보세요. 개인적으로는 어떤 형태의 차단도 사용하지 않습니다. 비효율적인 입력이 들어오는 비용이 있더라도, 유효한 입력을 잃고 싶지 않기 때문입니다.