리눅스에는 IPTBLES 라는 방화벽이 있어 기본적으로 정책을 수립할수 있습니다.
하지만 모니터링을 하지 않는 이상 어느 IP가 문제인지도 모르고 해킹 이슈가 있는 특정 나라를 다 하나하나 적기 힘들기때문에 gerip라는 정책을 통해 국가 코드사용하여 막을수 있습니다.
1. 필수 패키지 설치 하기
yum install gcc gcc-c++ make automake unzip zip xz kernel-devel-`uname -r` iptables-devel -y
yum install perl-Text-CSV_XS -y //perl-Text-CSV_XS 설치
2. xtables-addons 설치
cd /usr/local/src
wget http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/xtables-addons-2.10.tar.xz
tar -xvf xtables-addons-2.10.tar.xz
cd xtables-addons-2.10
3. xtables-addons 의 mconfig 파일 수정
vi /usr/local/src/xtables-addons-2.10/mconfig
#build_TARPIT=m // 해당 내용 주석 처리
* RedHat에서 지원하지 않는 기능을 사용하기 때문에 주석 처리 합니다.
4. GeoIP 모듈 셋팅
cd //usr/local/src/xtables-addons-2.10/mconfig/geoip
unzip GeoIPCountryCSV.zip
./xt_geoip_dl
./xt_geoip_build GeoIPCountryWhois.csv //해당 csv파일은 다운로드 후 서버에 넣어야 합니다.
mkdir -p /usr/share/xt_geoip/
cp -r {BE,LE} /usr/share/xt_geoip/
첨부파일
GeoIPCountryCSV.zip
5. 설정하기
iptables -A INPUT -p tcp --dport 22 -m geoip ! --src-cc KR -j ACCEPT // 한국에서만 SSH 허용
iptables -A INPUT -m geoip --src-cc CN -j DROP //중국IP 차단
iptables -A INPUT -p tcp --dport 80 -m geoip --src-cc JP,US -j DROP // 일본, 미국 웹 차단
iptables -A INPUT -p tcp --dport 21 -m geoip ! --src-cc KR -j DROP //한국에서의 ftp만 허용하고 나머지 국가에서의 접속은 차단하고자할때
iptables -A INPUT -m geoip –-src-cc CN,US,HK,AT,AR,AS,AZ,BA,BD,BE,BJ,BM,BQ,BR,BY //국가 코드는 한 라인에 최대 15개 국가코드까지 명시가능하다.
적용 끝
* 정책은 정책일뿐 주기적인 모니터링은 필수다.
BigJu
GeoIP
'SW > 서버보안' 카테고리의 다른 글
서버 보안가이드 정리 (0) | 2021.11.12 |
---|---|
해킹 의심해보기 (0) | 2021.11.11 |
root 설정 보안 (0) | 2021.10.20 |
Centos7 - OTP 설치 (Google otp) (0) | 2021.09.28 |
GEOIP국가코드 - 방화벽 (0) | 2021.09.24 |
댓글