postfix만 실행하는 Centos 서버가 있습니다. gratis
or grátis
또는 grétis
또는 단어가 포함된 이메일을 필터링하고 싶습니다 grâtis
.
두 번째 편지가 문제입니다. 그래서 나는 다음과 같은 거부를 사용했습니다.
/^Subject:.*gr.tis/ REJECT Your message was rejected
문제는 "점"이 접미사가 있는 특수 문자와 일치하지 않는다는 것입니다. 즉, 해당 키워드가 포함된 이메일을 보내면 gratis
필터링됩니다. 그러나 내가 그것을 포함하는 이메일을 보낸다면 그렇지 않습니다 grátis
.
이 문제를 어떻게 해결할 수 있나요?
답변1
스팸 샘플을 파일에 저장하고 예를 들어 cat -A
, sed -n l
, 등을 사용하여 hexdump
검사합니다 . 제목 헤더에서 실제 바이트를 확인하기 위해 필요한 모든 작업을 수행합니다 hd
.od
예를 들어
grep '^Subject:' /tmp/saved.spam | sed -n l
이렇게 하면 header_checks 파일에 넣을 정확한 정규식을 만드는 데 도움이 됩니다.
답변2
다음을 사용해 보세요:
/^Subject:.*gr.{1,2}tis/ REJECT Your message was rejected
대신에. 어쩌면 이것은 코딩의 버그일 수도 있습니다.