IT기술/Linux

리눅스 방화벽

dobbby 2023. 6. 12. 21:46
반응형

#CentOS 7 기준
firewalld
1) 서비스 
systemctl disable firewalld
systemctl stop firewalld
systemctl start firewalld

2) 사용 포트 확인
firewall-cmd --zone=public --list-ports

3) 포트 허용
firewall-cmd --zone=public --add-port=22581/tcp

#CentOS 6
iptables
2) iptables 설치
yum install iptables-services

3) iptables 서비스 활성화 및 시작
service iptables start #CentOS 6
systemctl start iptables.service #CentOS 7

4) 정책 확인 (순서대로 우선순위 적용)
iptables -L

5) iptables 설정 확인
iptables -S

6) iptables 에 http 허용 정책 추가
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT INPUT 체인에 정책 추가
-p tcp TCP 프로토콜 사용
--dport 80 목적지 서비스 포트 지정
-j ACCEPT 타킷 지정 (패킷 허용)

7) iptables 정책 저장
service iptables save

8) iptables 서비스 재시작
serivce iptables restart

7) iptables 정책 삭제
iptables -D INPUT -p tcp --dport 21 -j ACCEPT

8) iptables 정책 확인
iptables -C INPUT -p tcp --dport 21 -j ACCEPT

9) iptables 출력 시 줄번호 출력
iptables -L --line-number

10) iptables 특정 위치에 정책 추가
iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT

11) 특정 서비스 포트에 대해 특정 IP만 허용 1 (해당 IP에 대해서만 22 포트 허용)
iptables -A INPUT -i eth0 -p tcp -s 10.10.10.10/32 --dport 22 -j ACCEPT 
iptables -A INPUT -i eth0 -p tcp --dport 22 -j DROP

12) 특정 서비스 포트 (1521) 에 대해 특정 IP 만 허용 2
iptables -A INPUT -i eth0 -p tcp -s 10.10.10.11/32 --dport 1521 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 1521 -j DROP

13) IP 주소를 범위로 지정 1
iptables -A INPUT -p all -m iprange --src-range 192.168.0.0-192.168.255.255 -j DROP

14) IP 주소를 범위로 지정 2
iptables -A INPUT -p all -m iprange --dst-range 192.168.1.11-192.168.2.15 -j DROP

15) iptable 에서 주소를 범위로 지정하는 방법
-m iprange --src-range 시작 IP주소 -끝 IP주소
-m iprange --dst-range 시작 IP주소 -끝 IP주소

16) 서비스 포트를 범위로 지정 1 (목적지 포트 차단)
iptables -A INPUT -p tcp -m multiport --dports 3001:3010 -j DROP

16) 서비스 포트를 범위로 지정 2 (출발지 포트 차단)
iptables -A INPUT -p tcp -m multiport --sports 4001,4003,4005 -j DROP

17) 전체 삭제하기
iptables -F
iptables --flush

18) 체인의 기본 정책 변경
iptables -P INPUT DROP
iptables -P FOWARD DROP
iptables -P OUTPUT DROP

19) 영구 적용 시 수정
/etc/sysconfig/iptables 

20) 방화벽 로그 확인
tail -f /var/log/messages

21) iptables 로그만 보려면
vi /etc/rsyslog.conf 
kern.* /var/log/iptables.log # 추가
systemctl restart rsyslog.service # 서비스 재시작

반응형