#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 # 서비스 재시작