이번에 새롭게 개발한 스팸 블록커를 공개 합니다.
기본적으로 Geo-IP Extension과 Spamhaus 의 블랙 리스트를 사용합니다.
안타깝지만 Geo-IP 가 서버에 설치 되어있지 않으면 국가별 차단 기능을 사용할 수 없습니다.
더욱 아쉬운건 PHP5.x 이상에서만 작동합니다. PHP5 의 함수들을 좀 많이 썼습니다.-_-a
어디까지나 EAS가 학습을 하는데까지 생기는 공백을 매꿔주는 역할은 할 수 있을것이라 생각합니다.
EAS를 참고하였으며, EAS에 피해를 주지 않도록 최대한 생각하여 개발 하였습니다.
EAS + SpamBlocker를 혼합하여 테스트 해본결과 지금까지 스팸을 100% 막았습니다. 저도 생각했던것 이상의 수치더군요.
스팸이 앞으로 좀더 다양하게 변화되어 막기가 점점 더 힘들어 질 것이라 생각합니다.
그럼 그때마다 계속해서 기능을 보강하여 새버젼을 내놓을 수 있도록 하겠습니다.
눈에 보이지 않는 프로세스라 디버깅 하기 힘들더군요, 디버깅과 모니터링을 위해 Logging까지 하면서 테스트 하였습니다.-_-;
옵션은 다음과 같습니다.
국가별 차단
국가별 차단 기능을 사용할 것인지에 대한 설정입니다. 사용을 하게 되면 접속을 허용한 국가만 글/트랙백을 작성할 수 있게 됩니다. 사용안함을 선택하여 기능을 끌 수 있습니다.
- 사용 : 국가별 차단 기능을 사용합니다.
- 사용안함 : 국가별 차단 기능을 사용하지 않습니다.
접속 허용 국가코드
접속을 허용할 국가의 코드입니다. 2자리 코드이며, 쉼표(,)로 구분을 합니다. 다수의 국가를 설정할 수 있습니다. 사용하시는 블로그의 의사소통이 일어나는 모든 국가를 추가해 주시면 됩니다.
국가코드는 이곳 을 참고하시기 바랍니다.
접속 허용 주소
무조건적으로 접속을 허용할 White List입니다. 교류를 하시는 모든 블로그 서비스를 등록해 주시면 됩니다. www는 붙이지 않습니다. 이하 모든 기능에 대해 최우선권을 갖게 됩니다. 쉼표(,)를 통해 구분합니다. 다수의 주소를 입력할 수 있습니다.
- 예 : blog.naver.com,egloos.com,blog.daum.net,tistory.com,blog.paran.com,blog.empas.com
트랙백 아이피 체크
트랙백을 받을때만 작동합니다. 트랙백의 URL과 실제로 보내는 서버의 IP를 비교하여 다를 경우 차단합니다. 규모가 큰 서비스형 블로그의 경우 대부분 블로그 서버와 트랙백 발송 서버가 다르기 때문에 원치 않는 차단이 있을 수 있습니다. 하지만 접속 허용 주소에 포함이 되어있으면 트랙백 아이피 체크를 하지 않습니다.
- 사용 : 외부로 부터 들어오는 트랙백에 대하여 호스트 아이피 체크를 합니다.
- 사용안함 : 외부로 부터 들어오는 트랙백에 대하여 아이피 체크를 하지 않습니다.
DNSBL 사용
Domain Name System Black List의 약자입니다. 원래는 스팸메일 시스템에서 사용되곤 하는 DNS쿼리를 이용한 블랙리스트 관리 시스템입니다. Spamhaus 의 디비를 이용하고 있습니다. 마찬가지로 접속 허용 주소가 더 우선시 됩니다. 스팸메일에 사용되는 기술이지만 도입한 이유는 다음과 같습니다.
최근에 발생하는 IP가 다른 전세계적인 동시 공격의 원리는 뉴스에서 접해 보셨을 좀비 PC에 의한 무차별 적인 공격입니다. 실제로는 대부분이 중국발 공격입니다. 하지만 이번에 모니터링을 해보니 공격 루트는 거의 전세계더군요-_-; 보통 이런 좀비 PC들은 서버를 공격하거나 스팸메일을 보내는데 이용됩니다. 그렇기 때문에 이런 좀비 PC의 아이피는 대부분이 Spamhaus에 등록이 되어있습니다. 이것을 통해 블록킹을 하는것을 생각하였습니다.
- 사용 : 무조건 체크를 합니다. 실제로 스패머가 아닌 정상적인 사용자까지 차단 될 우려가 있습니다.
- 홈페이지 입력시만 사용 : 스팸의 경우 자신의 홈페이지 경로 유입을 위해 홈페이지 url을 입력하게 됩니다. 이런 URL이 있는 경우에만 체크를 합니다.
- 사용안함 : DNSBL 체크 기능을 사용하지 않습니다.
아직 다양한 환경에서 테스트 해보지 못하였습니다. 테터툴즈 1.1 및 텍스트 큐브 최신버젼에서 작동하는것은 확인하였습니다. 사용해 보시고 문제 있을시 말씀해 주시면 최대한 고칠 수 있도록 하겠습니다. 감사합니다.
1314684826.zip