iptables 방화벽의 NAT 설정하기
2024. 1. 30. 21:24ㆍ리눅스/모두의 리눅스
728x90
반응형
VMname : firewall
ens33 (vmnet8)
IPv4 : manual
IP Addresses : 192.168.163.3/24, 192.168.163.101/24
Gateway : 192.168.163.1
DNS Server : 168.128.63.1, 8.8.8.8
Automatically connect : checked
ens36 (vmnet2)
IPv4 : Manual
IP Addresses : 192.168.102.253/24
Gateway : x
DNS Servers : x
Automatically connect : checkedsystemctl restart network
ens36 (vmnet2)
IPv4 : Manual
IP Addresses : 192.168.102.101/24
Gateway : 192.168.102.253
DNS Servers : 168.126.63.1, 8.8.8.8
Automatically connect : checkedsystemctl restart network
/etc/hosts 설정
firewall
- 192.168.163.1 hostos
- 192.168.163.3 firewall
web
- 192.168.102.101 web1
- 192.168.102.1 hostos
- 192.168.163.1 hostos
firewall 방확벽설정
- systemctl stop firewalld
- systemctl disable firewalld
- yum -y install iptables-services
- systemctl enable iptables
- > /etc/sysconfig/iptables
- systemctl start iptables
- systemctl status iptables
- iptables -F (방화벽 룰 다 내리기)
iptables -t filter -nL (초기화 확인)
iptables -t nat -nL (nat 테이블 확인)
NAT 설정 1(내부망 -> 외부망)
NAT(Network Address Translation)는 주소 변환 기술
iptables에서 NAT를 설정하기 위해서는 nat 테이블에서 설정
방화벽에서 NAT기술을 사용하기 위해서는 2가지 설정을 한다.
- 주소 변환
- - 출발지 주소 변환 : SNAT, MASQUERADE (내부망 -> 외부망)
- - 목적지 주소 변환 : DNAT (외부망 -> 내 부망)
- 포워딩 설정
- - /proc/sys/net/ipv4/ip_forward : 커널 파라미터를 이용해서 1로 설정
출발지 주소가 192.168.102.101 이면 외부로 나갈 수 있도록 주소를 변환
- iptables -t nat -A POSTROUTING -s 192.168.102.101 -o ens33 -j MASQUERADE
- 임시적-echo 1 > /proc/sys/net/ipv4/ip_forward
- 영구적-/etc/sysctl.conf 수정
외부망 -> 내부망
- iptables -t nat -F
- iptables -t nat -A PREROUTING -d 192.168.163.101 -j DNAT --to 192.168.102.101
- iptables -t nat -A PREROUTING -s 192.168.102.101 -j SNAT --to 192.168.163.101
- iptables-save > /etc/sysconfig/iptables (iptables 영구적 적용)
- 포워딩 영구적 적용
- vi /etc/sysctl.conf
- net.ipv4.ip_forward = 1
- sysctl -p
내부망 firewalld 내림
- systemctl stop firewalld
- systemctl disable firewalld
참고사이트:
https://www.youtube.com/watch?v=UC4DYd48gn0
반응형