iptables firewall, driller.
HejsaJeg har leget med at lave dette firewall script.
Men nu må jeg have lavet noget galt.
For nu lukker den for alt.
Nogen der kan se fejlen?
Hjælp til optimering modtages gerne ;)
#!/bin/bash
FW=/sbin/iptables
echo 0 > /proc/sys/net/ipv4/ip_forward
#Fjern tidligere regler også NAT
$FW -F ; $FW -X ; $FW -Z ; $FW -F -t nat
#Sæt policy
$FW -P INPUT DROP
$FW -P FORWARD DROP
$FW -P OUTPUT ACCEPT
# Tillad forbindelser oprettet indefra.
$FW -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
$FW -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
OFF_IP=192.168.2.110 # Offentlig IP
INET_IF=eth0 # Internet interface
DMZ_IF=eth1 # DMZ Interface
LAN_IF=eth2 # LAN interface
SRV1=172.16.1.2 # CenSrv1
SRV3=172.16.2.2 # W2k3Srv3
# Tillad SSH udefra.
$FW -A INPUT -j ACCEPT -p tcp --dport 22
# ICMP Tilladelser
$FW -A FORWARD -p icmp --icmp-type echo-request -j ACCEPT
$FW -A FORWARD -p icmp --icmp-type echo-reply -j ACCEPT
$FW -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
$FW -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
# Transperant proxy opsætning.
$FW -A INPUT -p tcp -s 172.16.2.0 --dport 8080 -j ACCEPT
$FW -t nat -A PREROUTING -i $LAN_IF -d ! $SRV1 -p tcp --dport 80 -j REDIRECT --to-port 8080
$FW -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
# Porte der skal forwardes til CenSrv1
FORWARDPORTS="25 80 110 143 21 20"
for port in $FORWARDPORTS
do
$FW -A FORWARD -j ACCEPT -p tcp --dport $port
$FW -A FORWARD -j ACCEPT -p udp --dport $port
$FW -t nat -A PREROUTING -p tcp -d $OFF_IP --dport $port -j DNAT --to $SRV1
$FW -t nat -A PREROUTING -p udp -d $OFF_IP --dport $port -j DNAT --to $SRV1
done
# Porte der skal forwardes til W2k3Srv3
FORWARDPORTS2="1723"
for port2 in $FORWARDPORTS2
do
$FW -A FORWARD -j ACCEPT -p tcp --dport $port2
$FW -A FORWARD -j ACCEPT -p udp --dport $port2
$FW -t nat -A PREROUTING -p tcp -d $OFF_IP --dport $port2 -j DNAT --to $SRV3
$FW -t nat -A PREROUTING -p udp -d $OFF_IP --dport $port2 -j DNAT --to $SRV3
done
# start routing
echo 1 > /proc/sys/net/ipv4/ip_forward
