Contents

리눅스 Firewall NAT

   Apr 7, 2023     3 min read

특정 포트에 허용

1

방법

R1)

router ospf 1
network 192.168.20.0 0.0.0.255 area 0
network 1.1.12.0 0.0.0.255 area 0
default-information originate always



Firewall)

# setup -> Firewall Configuration (enabled)

# vi /etc/sysconfig/iptalbes    
// 필요없는 문장들 삭제

# iptables -P FORWARD DROP  
// 기본 정책 설정

# iptables -A FORWARD -s 192.168.30.1 -p tcp --dport 80 -j ACCEPT
# iptables -A FORWARD -s 192.168.40.1 -p tcp --dport 80 -j ACCEPT
# iptables -A FORWARD -s 192.168.40.2 -p tcp --dport 23 -j ACCEPT
# iptables -A FORWARD -m state —state ESTABLISHED,RELATED -j ACCEPT

# vi /etc/sysconfig/iptables



2

# service iptables save

# vi /etc/sysctl.conf
    7행) net.ipv4.ip_forward = 1로 고치기

# /sbin/sysctl -p



NAT (Network Address Translation)

  • NAT Table : 들어오는 패킷을 다른 포트나 다른 호스트 서버로 라우팅 하는 역할
  • SNAT(Source Netwrok Address Tanslation) : 사설IP -> 공용IP

3
POSTROUTING or MASQUERADE

  • SNAT는 하나의 IP를 공유하여 여러 호스트들이 인터넷 통신을 가능하게 해주는 방식이다. 기본적으로 출발지 주소를 변경하는 방법으로 동작을 한다.
  • SNAT는 nat 테이블에 있는 POSTROUTING chain 에서만 의미가 있다.

  • DNAT(Destination Network Address Translation) : 공용 IP → 사설 IP

4
PREROUTING

  • DNAT의 기능은 위에도 설명했다시피 목적지 주소를 변경하는 것이다. NAT 서버 뒤에 웹서버나 FTP, 메일 서버를 운영하여야 할 때에는 SNAT를 사용해서는 접속을 할 수가 없다.
  • DNAT는 nat 테이블에 있는 PREROUTING 또는 OUTPUT 에서만 의미가 있다.
  • DNAT를 설정시 NAT 테이블 설정 → filter 테이블의 FORWARD 설정 순으로 한다.

  • REDIRECT 타켓
  • 특별한 DNAT의 예로서 SNAT나 DNAT와 달리 패킷을 다른 서버의 특정 포트로 포워딩하지 않고 자기 자신(localhost)의 다른 포트로 포워딩할 때 사용한다.
  • REDIRECT는 nat 테이블에 있는 RPEROUTING 또는 OUTPUT 에서만 의미가 있다.

iptable_NAT (POSTROUTING)

5

방법

Firewall)

iptables -A POSTROUTING -t nat -s 192.168.10.0/24 -j MASQUERADE
iptables -nL -t nat
service iptables save
service iptables restart

# vi /etc/sysconfig/iptables



6

iptable_NAT (PREROUTING)

7

방법

Firewall)

서비스(포트)에 따라서 IP주소를 다르게 할당하기 위해서 Firewall 랜카드를 추가해야 함.

192.168.20.110, 192.168.20.120 을 추가

# iptables -A PREROUTING -t nat -d 192.168.20.110 -p tcp --dport 80 -j DNAT
	--to-destination 192.168.10.1
# iptables -A PREROUTING -t nat -d 192.168.20.120 -p tcp --dport 23 -j DNAT
	--to-destination 192.168.10.2



결과

LA5)

8

LB5)

9

iptables_NAT

10

방법

LB5, LC5, LD5)

DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.1
GATEWAY=192.168.1.2
PREFIX=24
ONBOOT=yes
HWADDR=00:50:00:00:02:00



Firewall)

# ifconfig | more



11

# vi /etc/sysconfig/iptables



12