User Tools

Site Tools


computers:firewall_configuration

Firewall configuration

Source NAT

First enable IPv4 packet forwarding by editing /etc/sysctl.conf, uncomment (or add) the following line:

net.ipv4.ip_forward=1

Apply by sudo sysctl -p

Then add the following lines to /etc/rc.local (so the rule is enabled on reboot):

# source NAT
# alter the source address of the packets from the internal network
Ext_IF="eth0"
Ext_IP="1.1.1.1"
Int_IF="eth1"
Int_Net="192.168.1.0/24"
iptables -t nat -A POSTROUTING -s $Int_Net -o $Ext_IF -j SNAT --to-source $Ext_IP
iptables -A FORWARD -s $Int_Net -o $Ext_IF -j ACCEPT
iptables -A FORWARD -d $Int_Net -i $Int_IF -m state --state ESTABLISHED,RELATED -j ACCEPT

Destination NAT

# destination NAT
# forward ssh to Int_IP if the external IP Ext_IP_2 was used 
Ext_IP_2="1.1.1.2"
Int_IP="192.168.1.2"
iptables -t nat -I PREROUTING -p tcp -d $Ext_IP_2 --dport 22 -j DNAT --to-destination $Int_IP:22
iptables -A FORWARD -i $Ext_IF -o $Int_IF -p tcp --dport 22 -j ACCEPT

Monitoring

sudo iptables -t nat -L

References

computers/firewall_configuration.txt · Last modified: 2020/08/16 00:13 by chkuo