1. 악성 IP 리스트 확인
우선 악성 IP리스트를 구해봅시다
유료버전으로 워드프레스 보안 플러그인인 워드펜스 나 iThemes Security 그리고 Sucuri Security 등이 있으며
이를 무료버전으로 사용할 시 30일 후에나 추가로 리스트를 제공하는 등 실시간으로 처리가 어려운 부분이 있습니다.
그렇다면 실시간 악성 IP LIST는 어디서 구할 수 있을까요?
== > 레스큐사이버 https://rescure.me/ 에서 구할 수 있습니다.
https://rescure.me/feeds.html에 접속하여
Malicious IP Blacklist 를 선택하면 실시간 악성 IP를 확인 할 수 있습니다.서버에 .txt 형식으로 저장 되어 있는걸 볼 수 있습니다.
2. NGINX 설정에서 악성 IP 차단 리스트 추가
NGINX를 이용해 가장 간단하게 악성 IP 차단 리스트를 추가하는 방법은 NGINX 설정의 Block 섹션에서 deny 명령어를 사용해 악성 IP 리스트를 추가하는 것입니다.
************************************************************
EX )
deny 41.109.68.211; # wordfence에서 추가한 Block ip
}
************************************************************
그런데 아무래도 대량의 악성 IP차단 리스트를 추가한다면 이러한 방식은 비효율적인 방법이죠.
NGINX에서 적용되는 include 명령을 사용해 악성 IP 차단 리스트를 불러오는 것이 더 좋을 것 같습니다.
악성 IP 차단 리스트 파일 만들기
우선 아래와 같은 형식의 ip-block-list.conf 파일을 만듭니다. 이름은 원하는대로 만들면 되겠죠. 저는 이 파일을 /etc/nginx 폴더에 만들었습니다. 마찬가지로 만들어진 파일 위치만 명확하면 됩니다.
- 디폴트 값은 0으로 차단하지 않음
- 차달할 IP 다음에 1값을 주면 NGINX에서는 이 ip를 차달할 ip로 인식
geo $bad_ip {
default 0;
41.104.8.106 1;
41.109.68.211 1;
차단1;
차단1;
...
}
차단 리스트 불러오기
앞서 만들어진 악성 IP 차단 리스트 파일을 NGINX에서 불러와 인식시킵니다.
이는 앞서 이야기한대로 include명령을 사용합니다. nginx.conf 파일의 http 섹션에서 아래와 같은 명령어를 추가해줍니다.
************************************************************
include /etc/nginx/ip-block-list.conf
************************************************************
444 화면 띄워주기
마직막으로 이렇게 차단된 ip가 접근 시 아무런 응답도 보내지 않고 444 상태로 연결을 종료합니다.
이는 NGINX 설정 중 Block 섹션중에 아래와 같은 명령어를 추가합니다.
************************************************************
location / {
if ($bad_ip) {
return 444;
}
}
************************************************************
NGINX 다시 시작
이렇게 변경 후 NGINX를 다시 가동합니다.
************************************************************
Service nginx restart
************************************************************
'개발자 공부 업무 정보 > ETC' 카테고리의 다른 글
아파치 카프카 (0) | 2022.10.19 |
---|---|
CORS_작성중 (0) | 2021.12.10 |
Ireport 사용할 때 파라미터 전달 등 사용법 (0) | 2019.01.22 |
요다 조건문 / Yoda Conditions (0) | 2019.01.15 |
여러 도메인들 간 쿠키 공유하기 (0) | 2019.01.14 |