해외 IP를 차단 및 중국 IP차단

한국을 제외한 전 세계 모든 해외 IP를 차단
 

GeoIPCountryCSV.zip 다운로드후 아래 쉘 스크립트와 같은 경로에 업로드

 

쉘 스크립트 작성
# vi GeoIPCountryWhois.sh

[code]

#!/bin/sh 
 
# iptables init 

sudo iptables -P INPUT ACCEPT 
sudo iptables -F 

echo "IPTABLES INIT SUCCESS" 

BLOCK_LIST_FILE=./GeoIPCountryWhois.csv 
 
echo "BLOCK LIST FILE = $BLOCK_LIST_FILE" 
 
# ADD BLOCK TARGET LIST 
ALLOW_TARGET_COUNTRY="Korea" 

# REGIST BLOCK IP FOR LOOP 
for IP_BANDWIDTH in `egrep -v $ALLOW_TARGET_COUNTRY $BLOCK_LIST_FILE | awk -F, '{print $1, $2}' | awk -F" '{print $2"-"$4}'` 

do 

echo "STARTING!!" 

sudo iptables -I INPUT -p all -m iprange --src-range $IP_BANDWIDTH -j DROP 

done 

sudo iptables -L


[/code]

쉘 스크립트 실행
 

# sh GeoIPCountryWhois.sh

참고로 한국을 제외한 모든 해외IP차단할 경우 시간이 엄청 오래걸립니다.
중국 또는 특정 국가를 차단하는형식으로 사용하시면 좋을듯 합니다.

 

================================================


중국IP차단

[code]

#!/bin/bash 
DATA=./GeoIPCountryWhois.csv 
IPT=/sbin/iptables 
 
// 차단할 국가 China 
for IPRANGE in `egrep "China" $DATA | cut -d, -f1,2 | sed -e 's/"//g' | sed -e 's/,/-/g'` 
 
do 

$IPT -A INPUT -p all -m iprange --src-range $IPRANGE -j DROP 

done
[/code]
 

첨부파일

GeoIPCountryCSV.zip (2.4 MB) 194회 2020-06-23 08:32
|

댓글 6개

감사합니다.
사용하고 싶은데 사용법 가르쳐 주시면 감사하겟습니다
감사합니다.

전체 막고 한국에서만 접속하자

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기
🐛 버그신고