목록

2026.11.02 23:04
조회 27
0

안녕하십니까.

 

좋은아빠되기입니다.

 

10년간의 게으름을 끝으로

 

어제부터 라이믹스로 갈아 타고 있습니다.

 

깃으로 덮어쓰자마자 문제가 좀 생겼지만

(글감 모듈이라는게 있는데.. 이게 말썽을 피우더라구요. 안쓰시면 미리 지우시길)

 

기진곰님의 빠른 답변으로 금방 해결하였습니다.

 

10년간의 게으름을 끝낸것은

 

저의 부지런함도 최근 있었던 대형 보안 사고도 아니였습니다.

 

하루 20만개쯤 되는 아이피를 돌려가면 들어 오는 악성 봇들과의 전쟁이었습니다.

 

처음에는 트래픽 쯤은 그냥 주겠다. 한달 10만원 더내면 OK 이러고 있었는데...

 

슬슬 열이 받고 있는 상황에

 

평소 1정도의 로드에버리지가 15까지 치솟더라구요

(20코어, 64G 서버입니다. 기진곤님께서 예쁘게 Nginx+PHP-ftm 7.4+MaridDB 10.X 셋팅해 주셨습니다.)

 

로그를 가만히 보니 95% 이상이 해외 아이피 였습니다.

 

저는 XE는 서브로 자료실로만 운영하고 메인 서비스가 따로 있는지라...

 

일단 자체적으로 막아 보려고 노력을 했습니다.

 

처음에는 그냥 방화벽에 /24 차단을 줄줄이 걸었는데

 

몇시간 되지 않아서 2천개가 넘어 가더라구요.

 

그래서 IPset방식으로 전환하고

 

실시간으로 로그를 분석하여

 

GeoIP 조회를 통하여 해외 아이피의 경우 /24 차단

 

국내 아이피의 경우 20일 차단하는 방식으로 실시간 대응하는 쉘 스크립트를 만들었고

 

중간 중간에 따로 만들어둔 Merge 기능으로 /23 /22 /21 이렇게 대역을 줄이기 시작했습니다.

 

1회 차단시 1일후 차단을 풀어 주고

2회 차단시 4일후 차단을 풀어 주고

4회 차단시 7일후 차단을 풀어 주고

 

그러다 보니.. 하루도 안되어서.. 만개가 넘는 대역을 차단하고 있는 저를 보면서

 

하.....진짜 이래야 하나.. 끝은 있는건가? 하는 회의감들 들더라구요.

 

image.png

 

그래서 결국 이런 괴물같은 녀석도 만들었습니다만.. 답이 없더라구요.

(모든걸 실시간으로 자동화 해도.. 답이 없었습니다.)

 

nginx 에서 limit_req도 걸고 별 쌩쇼를 해도

 

초당 3~5개 정도 두드리는 녀석들을 어찌할 방법이 없더라구요.

 

아이피가 수십만개 넘게 돌려 쓰는데 답은 없었습니다.

 

로그를 보면서 생각한것이..그래 서버 부하를 주는 녀석이라도 잡자 하는 단순한 생각에

 

https://rhymix.org/pds/1961072

 

이런 녀석도 만들었습니다.

 

검색이나, 정렬위주로 부하를 일으키면서 때리길레..

 

nginx단에서 차단도 했지만... 검색기능을 열어놔야 해서...

 

임시 방편삼아 썼구요.

 

미리 만들어 두었던

 

https://rhymix.org/pds/1961052

 

로그 정리 애드온도 도움이 되었습니다.

 

하루 20만개 이상 방문자 기록이 찍히니깐 기분은 좋터군요..ㅎㅎㅎ

 

그래도 카운터로그가 부담이 되서.. 열씨미 돌렸습니다.

 

그래도 답은 없었습니다.

 

 

 

결국, 제가 제일 탐내던

 

기진곰님의 명작

 

구충제 모듈 : https://rhymix.org/pds/1843071

 

이녀석이 많이 탐나서.. 라이믹스로 갈아 타게 되었습니다.

 

두말할것 없는 명작이죠..

 

현재 

 

제가 만든 애드온과

 

제가 만든 쉘 스크립트

 

그리고 기진님곰의 구충제 모듈로

 

라이믹스에 방어막도 어느정도 쳤고.

 

트래픽은 그나마 적게 튀는 상황입니다.

 

라이믹스 하나만 운영하는 서버가 아니라서

 

두곳을 막아야해서 좀 힘들기도 하지만..

 

든든한 라이믹스와 구충제 모듈로

 

오늘 하루는 즐겁게 넘어가고 있습니다.

 

 

자꾸 자꾸 머리 굴려서 막다 보면 또다른 수가 생기겠지요.

 

현재 nginx 단에서 /xe 하단과

 

제가 만든 프로그램의 limit_req도 달리 설정을 해서

 

차별적으로 방어는 하고 있지만...

 

참..힘드네요..

 

그냥 넉두리 삼아서 적어 봤습니다.

 

 

어찌되었든.

 

라이믹스로 갈아 타면서 한시름 놓았고.

 

구닥다리 XE의 보안 구멍도 매꾸고 1석 2조인것 같습니다.

 

간간히 봇들과의 전쟁에서 일시적인 승리나마

 

기념할 일이 있으면 글 적도록 하겠습니다.

 

 

편안한밤 되세요.

 

긴글 읽어 주셔서 감사합니다.

 

ps : 클플은 구글광고 때문에 감히 적용을 못하는 상황입니다.

 

도저히 안되면 피난이라도 가야 겠습니다. ㅋㅋㅋ

 

ps2 : 이런짓도 하고 있습니다.

파일 다운로드 하루 100개로 제한하고

100개 이상히면 내일 다운로드 더 하세요. 하는데..

그거 무시하고 자꾸 들어오면 카운터는 30개 더 올라갑니다.

결국 130에 근접하면... 봇이라는 이야기죠.

image.png

 

아래를 보면 아시겠지만

빙봇이 제일 나쁜놈입니다...

확~~~ 짤라 버릴수도 없고... 단 몇 %지만 검색시장을 장악하고 있으니..
제가 참아야죠..

[오늘 봇 다운로드 통계]

[Googlebot] : IP 수 : 16
총 다운로드     : 320회
  1위      32회  Googlebot            34.64.82.71
  2위      29회  Googlebot            34.64.82.75
  3위      26회  Googlebot            34.64.82.77
  4위      25회  Googlebot            34.64.82.74
  5위      23회  Googlebot            34.64.82.66
  6위      23회  Googlebot            34.64.82.65
  7위      22회  Googlebot            34.64.82.79
  8위      20회  Googlebot            34.64.82.70
  9위      20회  Googlebot            34.64.82.69
 10위      19회  Googlebot            34.64.82.64
 11위      18회  Googlebot            34.64.82.76
 12위      17회  Googlebot            34.64.82.73
 13위      14회  Googlebot            34.64.82.72
 14위      12회  Googlebot            34.64.82.67
 15위      12회  Googlebot            34.64.82.68
 16위       8회  Googlebot            34.64.82.78

[GoogleWv] : IP 수 : 2
총 다운로드     : 3회
  1위       2회  GoogleWv             106.101.201.221
  2위       1회  GoogleWv             1.226.154.211

[Googlebot-Image] : IP 수 : 2
총 다운로드     : 2회
  1위       1회  Googlebot-Image      34.64.82.65
  2위       1회  Googlebot-Image      34.64.82.70

[Bingbot] : IP 수 : 29
총 다운로드     : 3,791회
  1위    1866회  Bingbot              52.231.148.0
  2위    1011회  Bingbot              52.231.148.3
  3위     836회  Bingbot              52.231.148.1
  4위      15회  Bingbot              20.15.133.174
  5위       9회  Bingbot              20.15.133.184
  6위       8회  Bingbot              20.15.133.175
  7위       7회  Bingbot              20.15.133.163
  8위       6회  Bingbot              20.15.133.191
  9위       5회  Bingbot              20.15.133.162
 10위       5회  Bingbot              20.15.133.160
 11위       3회  Bingbot              52.167.144.220
 12위       2회  Bingbot              52.167.144.213
 13위       2회  Bingbot              52.167.144.205
 14위       1회  Bingbot              52.167.144.189
 15위       1회  Bingbot              52.167.144.23
 16위       1회  Bingbot              52.167.144.175
 17위       1회  Bingbot              52.167.144.209
 18위       1회  Bingbot              52.167.144.162
 19위       1회  Bingbot              52.167.144.211
 20위       1회  Bingbot              52.167.144.169
 21위       1회  Bingbot              52.167.144.142
 22위       1회  Bingbot              52.167.144.136
 23위       1회  Bingbot              52.167.144.159
 24위       1회  Bingbot              52.167.144.161
 25위       1회  Bingbot              52.167.144.158
 26위       1회  Bingbot              52.167.144.234
 27위       1회  Bingbot              52.167.144.210
 28위       1회  Bingbot              52.167.144.176
 29위       1회  Bingbot              52.167.144.137

[NaverYeti] : IP 수 : 11
총 다운로드     : 11회
  1위       1회  NaverYeti            211.249.46.185
  2위       1회  NaverYeti            114.111.32.152
  3위       1회  NaverYeti            114.111.32.119
  4위       1회  NaverYeti            211.249.46.130
  5위       1회  NaverYeti            110.93.150.138
  6위       1회  NaverYeti            114.111.32.206
  7위       1회  NaverYeti            110.93.150.218
  8위       1회  NaverYeti            211.249.46.69
  9위       1회  NaverYeti            110.93.150.110
 10위       1회  NaverYeti            211.249.46.74
 11위       1회  NaverYeti            110.93.150.80

[Daum] : IP 수 : 26
총 다운로드     : 318회
  1위      39회  Daum                 121.53.91.107
  2위      31회  Daum                 121.53.92.107
  3위      19회  Daum                 211.183.208.245
  4위      18회  Daum                 211.183.208.242
  5위      17회  Daum                 211.249.246.105
  6위      17회  Daum                 211.249.246.122
  7위      16회  Daum                 121.53.92.108
  8위      15회  Daum                 121.53.91.108
  9위      14회  Daum                 211.183.208.241
 10위      13회  Daum                 203.133.184.224
 11위      13회  Daum                 121.53.221.224
 12위      12회  Daum                 211.249.246.136
 13위      12회  Daum                 211.183.208.243
 14위      11회  Daum                 121.53.91.109
 15위      10회  Daum                 211.249.246.152
 16위      10회  Daum                 211.183.208.244
 17위       8회  Daum                 121.53.93.224
 18위       7회  Daum                 121.53.220.224
 19위       7회  Daum                 121.53.91.224
 20위       7회  Daum                 121.53.92.224
 21위       7회  Daum                 203.133.185.224
 22위       6회  Daum                 211.249.246.168
 23위       5회  Daum                 121.53.90.224
 24위       2회  Daum                 211.231.103.106
 25위       1회  Daum                 27.0.238.114
 26위       1회  Daum                 27.0.238.71
좋은아빠되기입니다.

댓글 1