포럼
IPGUARD 모듈 완성!
2013.07.08 22:58
"IP 가드" 모듈이 완성되었습니다...^^ 도움을 주신 @라르게덴님 정말 감사합니다...
현재 스쿨에서 시험 운영중이고 매우 효과적이랍니다. 아래 그림을 보세요.
스쿨이 5월경부터 트래픽에 시달리며 사이트가 닫히는 일이 빈번하였습니다. 트래픽을 증설하였지만 소용이 없었어요.
XE 1.2.4 버전을 끝으로 사라진 haneul님의 리퍼러 모듈을 복원하여 로그를 조사한 결과 불량 액션 요청이 수도없이 반복된다는 것을 알 수 있었습니다. 스팸필터 또는 금지 IP 등록 등의 기능으로는 이러한 요청을 차단할 수 없다는 것도 알게 되었지요.
즉 요청이 있다면 코어는 동작하고 처리된 내용을 반드시 내놓게 되는데 잘못된 요청이라 하더라도 거부하는데까지 많은 자원을 소모할 수 밖에 없더군요. 스팸필터라는 것도 역시 글등록을 필터링할 뿐 차단할 수 있는 능력이나 기능은 없습니다.
문제 해결은 원천 차단인데 이것을 구현하는 방법이 하이퍼텍스트 엑세스 파일(.htaccess)을 작성하여 계정 대문(루트)에 설치하고 수문장 역할을 해야 합니다. 다시말해서 요청 자체를 코어에게 전달하지 않는 것, 즉 IP를 차단하는 일입니다...^^
5월 16일~18일에 직접 엑세스 파일을 작성하고 테스트 해 본 결과 효과가 있었어요. 문제는 "엑세스 파일을 어떻게 하면 쉽게 만들수 있을까?" 그리고 "코어 안이나 코어 바깥에 어떻게 하면 설치할 수 있을까?"였는데 이문제는 라르게덴님의 조언으로 해결하였답니다. 자동으로 설치하는 문제는 FTP 비번을 가지고 있어야 하는 더 큰 문제가 있기 때문에 수동으로 설치하도록 처리하였고 대신 잘못된 요청에 대한 IP들을 쉽고 편리하게 모니터링하면서 수집 할 수 있도록 만들었습니다.
잘못된 요청들을 보내는 IP를 원천 차단하면 20일이후처럼 현저하게 트래픽이 감소한 것을 볼 수 있습니다. 이러한 요청들은 아마도 웹에 널려있는 링크들을 수집해 무작위로 회원가입, 글작성 액션을 덧붙여 시도하는 듯 보입니다.
리퍼러 로그를 보고 깜짝 놀랐던 액션입니다. 외부페이지 모듈에서 위와 같이 dispBoardWrite 액션을 요청하니 에디터가 활짝 열리는 군요. 글작성을 시도해 보면 "잘못된 요청입니다"로 응답하지만 이와 같은 요청에 코어는 늘 시달리고 있답니다...^^
모듈 배포는 현재 스쿨이 1.4.5.20 버전이어서 1.4버전을 바탕으로 만들었기 때문에 1.5버전에 대한 수정이 필요할 것 같군요.
댓글 18
-
푸시아
2013.07.08 23:10
-
우진홈
2013.07.09 20:25
호스팅 사용자에게 도움이 되었으면 합니다...^^
-
라르게덴
2013.07.08 23:12
오! 멋지네요!! :p
비정상적 접근자를 분석해서 막는다니... 저도 좀 그런 접근이 많은데 우진홈님이 IPGUARD 모듈을 배포하시면 저도 써봐야겠네요. ^^ 고생하셨습니다~
-
우진홈
2013.07.09 20:27
라르게덴님의 도움으로 파일을 갱신할 수 있었습니다. 감사합니다...^^
-
윈컴이
2013.07.09 00:00
대단하십니다~
1.5에 대해 수정 하신면 1.7은 어떻게 되나요?
관리자 디자인은 제가 만들어 드릴 수 있습니다!
-
우진홈
2013.07.09 20:29
1.4 스타일이 저는 좋아서 1.5에서도 큰 변경사항이 없습니다. 1.7은 윈컴이님께 전적으로 의뢰합니다. 설명서 작성후 곧 배포하면 1.7 디자인은 윈컴이님 마음껏 수정,재배포하셔도 좋습니다...^^
-
윈컴이
2013.07.09 22:56
오, 그렇군요.
등록 되자 마자 바로 수정 한 후 여기에 압축 파일로 올리겠습니다~ XE 버전 별로 다른 파일 불러오게 해주세요 :)
-
pentopen
2013.07.09 04:14
와웅~ 대단하시네요~
꼭 배포좀 해주세요....+_+//
-
우진홈
2013.07.09 20:31
오늘 1.5에서 설치, 테스트 해 보았습니다. 곧 배포하겠습니다...^^
-
CONORY
2013.07.09 11:28
와우~ 아주좋은데요..
그러나 .htaccess파일을 사용하는 방식이라서 nginx는 사용불가군요..ㅠㅠ
-
우진홈
2013.07.09 20:34
엔진X가 어떤 물건인지 잘 몰라요...죄송...^^
-
OEZ
2013.07.10 12:14
nginx 용으로 conf 파일을 배포하면됩니다. ^^
-
2donggalbi
2013.07.09 12:16
오 아주 멋집니다!! 수고하셨습니다
-
우진홈
2013.07.09 20:34
고맙습니다...^^
-
쿡래빗
2013.07.09 17:01
멋집니다~!
-
우진홈
2013.07.09 20:35
감사합니다...^^
-
fantimes
2013.07.10 10:22
배포를 원합니다 배포가 크신분 ㅠㅠ
-
airbogo
2013.07.11 16:01
^^ 고생하신 흔적이 보입니다. 선뜻 도와주시겠다는 원컴이님도 대단하시구요 ㅎㅎ
정말 공개해 주시면 xe 에 큰 공헌을 하시는 것이라 생각합니다.