Spam Relay 기능 설정하기

[ Sendmail Spam Relay 기능 설정하기 ]

Qmail도 릴레이는 기본적으로 안되게 되어있습니다. local과 virtual domains에 있는 도메인 네임들에 있는 완전 도메인네임들을 /var/qmail/control/rcpthosts파일에 적기 때문입니다. 릴레이가 필요시에는 릴레이 관련 설정을 확인한 후 테스트를 한 후 릴레이를 허용하여야 합니다. Qmail에서 릴레이를 두 개의 설정파일로 컨트롤합니다. 첫 번째 파일인 /etc/tcp.smtp에서 릴레이와 접근을 막는 설정을 할수 있고 두 번째 파일인 /var/qmail/control/rcpthosts 파일에서는 메일 릴레이를 열어줄 서버를 결정해 줍니다. 여기서 중요한 것은 rcpthosts파일은 tcp.smtp 설정의 RELAYCLIENT=”” 이 옵션이 없을 때에만 동작하며 우선순위를 가집니다. 그러므로 rcpthosts 파일에 릴레이가 필요한 IP를 기록하고 모두를 allow하면 먼저 rcpthosts를 확인한 후 릴레이를 허용할 IP를 확인한 다음 만약 해당 IP가 없다면 릴레이를 막을 것입니다.

아래의 tcp.smtp 설정은 172.16.5.xxx 및 로컬은 모두 허용하고 rcpthosts에 있는 IP를 제외한 모든 IP는 막는다는 뜻입니다.
172.16.5.:allow,RELAYCLIENT=”” 127.0.0.1:allow,RELAYCLIENT=”” :allow

tcp.smtp 를 수정한 후에는 tcpserver가 사용할 수 있는 cdb 형식으로 바꿔주기 위해 아래와 같이 db 파일로 바꾸어 주어야 하며 sendmail과 같이 qmail을 재시작 할 필요는 없습니다.

# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp 특정 IP 대역의 메일 관련 접속을 완전히 막을려면 해당IP:deny 설정을 하여 smtp로의 접속을 완전히 막을 수 있습니다. qmail 메일도 Sendmail과 같이 유동 IP 사용자들에게 릴레이를 열어 주어야 하는 메일 서버의 경우에는 qmail 소스를 패치하면 qmail-smtpd가 암호 인증 후에 릴레이를 열어주는 방법이 있습니다. 자세한 것은 아래의 사이트를 참조하시기 바랍니다. http://kldp.org/~eunjea/qmail_relay.php#tcpserver 참조 : http://yis.yonsei.ac.kr/document/service_info/security/guide/document/mail/mail_qmail.html