728x90
iptables란?
- iptables는 리눅스 운영 체제에서 패킷 필터링 및 네트워크 주소 변환을 설정하는 데 사용되는 명령줄 도구
- 주로 방화벽 설정과 네트워크 트래픽 제어에 사용됨
- 들어오거나 나가는 트래픽을 필터링하고 특정 조건에 따라 패킷을 허용하거나 차단 가능
iptables의 기본 구조
# iptables -A <chain> -p <protocol> -s <source> --sport <source-port> -d <destination> --dport <destination-port> -j <target>
- -A <chain> : 규칙을 추가할 체인 (INPUT, OUTPUT, FORWARD 등)
- -p <protocol> : 프로토콜 (tcp, udp, icmp 등)
- -s <source> : 소스 주소 (IP 또는 서브넷)
- --sport <source-port> : 소스 포트
- -d <destination> : 목적지 주소 (IP 또는 서브넷)
- --dport <destination-port> : 목적지 포트
- -j <target> : 패킷의 처리 방법 (ACCEPT, DROP, REJECT 등)
1. 특정 IP에서 특정 포트로의 인바운드 트래픽 허용하기
1-1. 인바운드 트래픽 허용
192.168.0.1에서 192.168.0.2의 2288포트로의 트래픽 허용
# iptables -A INPUT -s 192.168.0.1 -d 192.168.0.2 -p tcp --dport 2288 -j ACCEPT
- -A INPUT : INPUT 체인에 새로운 규칙 추가. INPUT 체인은 서버로 들어오는 패킷을 처리
- -s 192.168.0.1 : 소스 IP 주소가 192.168.0.1인 패킷에 대해 규칙 적용
- -d 192.168.0.2 : 목적지 IP 주소가 192.168.0.2인 패킷에 대해 규칙 적용
- -p tcp : 프로토콜이 TCP인 패킷에 대해 규칙 적용
- --dport 2288 : 목적지 포트가 2288인 패킷에 대해 규칙 적용
- -j ACCEPT : 패킷 허용
1-2. 설정 저장
# service iptables save (CentOS 6 이하)
# iptables-save > /etc/sysconfig/iptables (CentOS 7 이후)(CentOS 7 이상에서는 firewalld가 기본 방화벽 관리 도구)
1-3. 확인
# iptables -L -v -n --line-numbers
1-4. 정책 저장
시스템 재부팅 후에도 규칙을 유지하려면 규칙을 저장해야 한다.
# iptables-save > /etc/sysconfig/iptables.v1
+ 정책 복원
# iptables-restore < /etc/sysconfig/iptables.v1
2. 아웃바운드 트래픽 허용하기
192.168.0.1에서 192.168.0.2:2288로 나가는 트래픽 허용
iptables -A OUTPUT -s 192.168.0.1 -d 192.168.0.2 -p tcp --dport 2288 -j ACCEPT
3. 정책 삭제
# iptables -D INPUT -s 192.168.0.1 -d 192.168.0.2 -p tcp --dport 2288 -j ACCEPT
4. ICMP(Ping) 허용
# iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
5. 모든 규칙 초기화
현재 설정된 모든 방화벽 규칙을 초기화
# iptables -F728x90
'OS > Linux' 카테고리의 다른 글
| [Linux] Iptables란? 포트포워딩 설정 및 영구적용 방법 (0) | 2025.03.19 |
|---|---|
| [Linux] OpenSSL를 사용하여 SSL 인증서 추출 방법 (s_client) (1) | 2024.06.15 |
| [Linux] telnet이란? 텔넷 서버 구축부터 활용까지_통신 테스트 방법 (0) | 2024.05.26 |
| [Linux] RPM과 YUM이란? 내용 정리 (0) | 2024.04.28 |
| [Linux] 커널 헤더 설치 방법 (1) | 2024.04.27 |