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

Updated on 2020-06-09 by

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)

참고

새롭게 뉴스레터를 시작했습니다.

1️⃣ 주식 등 투자 정보 : 기업 분석, IB 투자의견 등 투자 관련 내용
..... 테슬라 실적 및 IB들의의 테슬라 투자의견
2️⃣ 사례 및 트렌드 : 사례연구와 트렌드 관련 괜찮은 내용
.....유튜브와 경쟁대신 구독 전환한 비디오 플래폼 비메오 사례

서울에 생긴 Vultr 서버 100$ 프로모션

안녕하세요?
새로운 사이트 구축을 위한 신규 서버를 고민하신다면 , 서울 리젼이 생겨 더욱 빨라진 Vultr 서버를 Vultr 100$ 프로모션으로 이용해 보세요.

아래 프로모션 코드 링크를 통해 Vultr에서 서버 구축 후 1달 이상 사용 및 $25이상 결제 時 추가 100$을 주는 프로모션입니다.

Vultr는 서울에도 리젼이 있어 매우 빠르고, 아마존 웹 서비스(AWS)보다 성능이 높으며 가장 가성비가 뛰어납니다.

거기다 사용자 UI도 좋고, 15개까지 스냅샷을 무료로 제공하기 때문에 관리하기 좋습니다. 그리고 지금 100$ 프로모션처럼 가격적인 메리트도 있습니다.

우분투 20.04와 PHP 8 기반 워드프레스 설치 방법

가상 서버를 운영하고픈 勇者에게 전하는 가상 서버 운영 입문 노하우 – Vultr 가상서버호스팅(VPS)를 중심으로

워드프레스 최적화를 위한 18개월간의 고민, 그 노하우를 담다.

도쿄 리젼과 비교해 본 Vultr 서울 리젼 사용기

가성비가 뛰어난 Vultr 가상서버호스팅(클라우드호스팅,VPS) 사용기

Subscribe
Notify of
guest
0 Comments
Oldest
Newest
Inline Feedbacks
View all comments