back to top
-6 C
New York
월요일, 12월 23, 2024

Buy now

해킹 시도 악성 IP 차단 리스트 관리 방법 – NGINX 기준

NGINX 서버 운영 시 서버단에서 악성 IP 차단 리스트 관리 방법에 대해서 알아봅니다. 이는 NGINX에서 악성 IP 차단 리스트 추가 방법과 악성 IP 차단 리스트를 쉽게 구하는 방법 등을 살펴봅니다.

보안에서 가장 좋은 방법은 실시간으로 악성 IP를 탐지하고 리스트에 추가하는 것이 가장 좋겠지만 그런 서비스는 대부분 유료인듯 합니다.

워드프레스 보안 플러그인인 워드펜스(wordfence)iThemes Security 그리고 Sucuri Security등은 실시간 IP 차단과 같은 부가기치 높은 서비스는 유료로 제공합니다.

그래서 우선 알고 있는 IP만이라도 IP 차단 리스트에 올려 서버 접속을 막는 방법을 생각해 봤습니다.

NGINX 설정에서 악성 IP 차단 리스트 추가

NGINX를 이용해 가장 간단하게 악성 IP 차단 리스트를 추가하는 방법은 NGINX 설정의 Block 섹션에서 deny 명령어를 사용해 악성 IP 리스트를 추가하는 것입니다.

location / {
   deny 41.104.8.106; # wordfence에서 추가한 Block ip 
   deny 41.109.68.211; # wordfence에서 추가한 Block ip 
}Code language: PHP (php)

그런데 아무래도 대량의 악성 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;
    차단 IP03 1;
    차단 IP04 1;
    ...
}Code language: PHP (php)

차단 리스트 불러오기

앞서 만들어진 악성 IP 차단 리스트 파일을 NGINX에서 불러와 인식시킵니다.

이는 앞서 이야기한대로 include명령을 사용합니다. nginx.conf 파일의 http 섹션에서 아래와 같은 명령어를 추가해줍니다.

include /etc/nginx/ip-block-list.conf Code language: PHP (php)

444 화면 띄워주기

마직막으로 이렇게 차단된 ip가 접근 시 아무런 응답도 보내지 않고 444 상태로 연결을 종료합니다.

이는 NGINX 설정 중 Block 섹션중에 아래와 같은 명령어를 추가합니다.

location / {
    if ($bad_ip) {
        return 444;
    }
}Code language: PHP (php)

NGINX 다시 시작

이렇게 변경 후 NGINX를 다시 가동합니다.

Service nginx restart
또는
nginx -s reloadCode language: PHP (php)

해킹 시도 악성 IP 차단 리스트 구하기

도입부에서 언급한 워드프레스 보안 플러그인인 워드펜스(wordfence)iThemes Security 그리고 Sucuri Security등은 무료 버젼의 경우 악성 IP 리스트는 30일 후에 제공하는 등 실시간으로 ip 리스트를 제공하지는 않기 적절한 대처가 쉽지는 않습니다.

실시간 악성 IP 리스트는 레스큐 사이버에서 구할 수 있어..

그렇다면 실시간으로 제공되는 악성 IP 차단 리스트를 구하는 바법은 없을까요?

이런 실시간으로 업데이트되는 악성 IP 차단 리스트는 레스큐 사이버라는 사이트에서 구할 수 있습니다.

The [RES]cure Cyber Threat Intelligence Project (beta)

이 사이트에서 REScure Malicious IP Blacklist 부분을 클릭하면 최근 업데이트된 악성 IP 블랙리스트를 다운받을 수 있습니다.

내용은 아래와 같은 형식으로 되어 있습니다.

 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
 #   The REScure Cyber Threat Intelligence Feed Project (beta) Malicious IP Blacklist		       #
 #   Blogpost	https://www.theprohack.com/2018/09/rescure-cyber-threat-intelligence-feed.html	       #
 #   Feeds last updated at Tue Jun  9 08:00:37 UTC 2020. Feed updation frequency is 4 hours.	       #
 #   Email us at hello<at>theprohack.com for collaboration, sharing IoC, API Access or just to say Hi! #
 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
100.24.1.50
100.25.99.126
101.0.74.84
101.10.18.209
101.109.184.59
101.110.14.135Code language: PHP (php)

참고

spot_img

Latest articles

Related articles

spot_img