본문 바로가기

IT기반지식/IS플랫폼

SPF(Sender Policy Framework) 메일서버등록제


메일서버등록제(SPF: Sender Policy Framework)
메일서버 정보를 사전에 DNS에 공개 등록함으로써 수신자로 하여금 이메일에 표시된 발송자 정보가 실제 메일서버의 정보와 일치하는지를 확인할 수 있도록 하는 인증기술

* 대다수 스팸발송자가 자신의 신원을 감추기 위하여 발송자 주소나 전송경로를 허위로 표기하거나 변경하는 경우가 많다는데 착안
 
SPF를 이용한 이메일 인증절차:
발신자 : 자신의 메일서버 정보와 정책을 나타내는 SPF 레코드를 해당 DNS에 등록
수신자 : 이메일 수신시 발송자의 DNS에 등록된 SPF 레코드를 확인하여 해당 이메일에 표시된 발송IP와 대조하고 그 결과값에 따라 수신여부를 결정
(메일서버나 스팸차단솔루션에 SPF 확인기능이 설치되어 있어야 함)
 
SPF 개발 및 도입현황:
1998년 Paul Vixie의 ‘Repudiating Mail From'에서 처음으로 아이디어가 제안된 이후 Pobox.com의 Meng Weng Wong에 의해 SPF가 개발됨
2004년 2월 IETF(Internet Engineering Task Force)에 공식 RFC(Request For Comments)로 제안되었으며, 2004년 12월 SPF의 모든 기술적 내용들이 최종 완성됨
SPF는 타 인증기술에 비해 적용이 용이하고 호환성이 좋으며 오픈소스를 기반으로 하므로 전 세계적으로 폭넓은 지지기반을 확보하고 있음
한국을 비롯한 미국, 캐나다, 일본 등 여러 국가들이 정부차원에서 사업자들을 대상으로 SPF 레코드 출판 및 확인기능 도입을 통한 스팸차단 활용을 적극 권고하고 있음

* SPF 란 무엇이며 설정의 필요성은
: 메일 헤더는 쉽게 위/변조 될 수 있으며, 위/변조된 발신지 정보로 스팸메일을 발송하는 경우가 많습니다.
만약 보낸이 주소가 hanbiro@hanbiro.com이다면 hanbiro.com의 메일서버에서 보내겠지요. 그래야 정상입니다.
그런데 다른서버를 이용해서 보냈을 경우 메일을 받는 서버에서 보낸메일서버의 아이피와 실제 hanbiro.com의 메일서버를 비교해서 같지 않을 경우 Fail을 표시하는 것입니다.
그러기 위해서 인가된 호스트 및 아이피를 도메인의 Zone 파일에서 SPF레코드를 설정합니다.
SPF기능 적용으로 지금 당장은 포탈의 이메일을 가장해서 보내는 스팸메일에 적용을 합니다.
SPF의 값이 Fail시 거의 99.9%의 스팸메일로 인식됩니다.


* SPF 판정값
: None -> 발신 도메인 SPF 레코드 적용하지 않았거나, 발신자 정보에서 해당 도메인의 정보를 확인 할 수 없음.
Netural -> 발신 도메인에 대한 위/변조 여부 판단 하지 않음.
Pass -> 메일 헤더가 위/변조 되지 않음.
Fail -> 메일 헤더가 위/변조 되었음.
Softfail -> 메일 헤더가 위/변조 되었으나, 메일 포워딩등의 서비스처럼 적법하게 위조 될 수 있음.
TempError -> 메일 수신 서버에서 SPF 확인시 문제 발생.
PermError -> 발송 도메인에 출판된 SPF 레코드값의 오류 발생.


참고사이트
   SPF(Sender Policy Framework) 공식 홈페이지 : http://www.openspf.org/
   SPF위키피디아 : http://en.wikipedia.org/wiki/Sender_Policy_Framework
   QMail 에서 SPF 설정 : http://aramjo.blog.me/120102169083