All pastes #236168 Raw Edit

Unnamed

public text v1 · immutable
·published 2006-11-03 17:37 UTC
rendered paste body
#!/bin/sh
# Begin /etc/rc.d/nat

EXT="eth0"
INT="eth1"
EXTIP="206.193.194.3"

WEBSERVER="192.168.1.251"

case $1 in
start)

        # Forwording
        echo "1" > /proc/sys/net/ipv4/ip_forward
        # Allow outgoing connections
#       /usr/sbin/iptables -A FORWARD -i $EXT -o $INT -m state --state ESTABLISHED,RELATED -j ACCEPT
        /usr/sbin/iptables -A FORWARD -i $INT -o $EXT -j ACCEPT
        /usr/sbin/iptables -A FORWARD -j LOG

        # Allow ssh to local box
        /usr/sbin/iptables -A INPUT -i $EXT -m state --state ESTABLISHED,RELATED -j ACCEPT
        /usr/sbin/iptables -A INPUT -i $EXT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

        # Allow 8080
        /usr/sbin/iptables -A INPUT -i $EXT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
        /usr/sbin/iptables -A INPUT -i $INT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
        # Port forwarding (testing)
#       /usr/sbin/iptables -t nat -A PREROUTING -p tcp -i $EXT -d 192.168.12.1 --dport 80 -j DNAT --to 192.168.12.180:80
#       /usr/sbin/iptables -A FORWARD -p tcp -i $EXT -d 192.168.12.180 --dport 80 -s 192.168.15.5 -j ACCEPT

        # Forwarding 
        # port 9800 (webdav)
        /usr/sbin/iptables -t nat -A PREROUTING -p tcp -i $EXT -d $EXTIP --dport 9800 -j DNAT --to 192.168.1.240:9800
        /usr/sbin/iptables -A FORWARD -p tcp -i $EXT -d 192.168.1.240 --dport 9800 -j ACCEPT
        # port 3389 (rdp)
        /usr/sbin/iptables -t nat -A PREROUTING -p tcp -i $EXT -d $EXTIP --dport 3389 -j DNAT --to 192.168.1.240:3389
        /usr/sbin/iptables -A FORWARD -p tcp -i $EXT -d 192.168.1.240 --dport 3389 -j ACCEPT
        # port 80 (http)
        /usr/sbin/iptables -t nat -A PREROUTING -p tcp -i $EXT -d $EXTIP --dport 80 -j DNAT --to $WEBSERVER:80
        /usr/sbin/iptables -A FORWARD -p tcp -i $EXT -d $WEBSERVER --dport 80 -j ACCEPT


        # Begin masquerade
        /usr/sbin/iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE

        ;;
stop)
        # Clear policies
        /usr/sbin/iptables -P INPUT ACCEPT
        /usr/sbin/iptables -F INPUT
        /usr/sbin/iptables -P OUTPUT ACCEPT
        /usr/sbin/iptables -F OUTPUT
        /usr/sbin/iptables -P FORWARD DROP
        /usr/sbin/iptables -F FORWARD
        /usr/sbin/iptables -t nat -F
        ;;
restart)
        $0 stop
        $0 start
        ;;
*)
        echo "usage: $0 [start|stop|restart]"
        ;;
esac

# End of file


and iptables -L

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:webcache 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:webcache 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
LOG        all  --  anywhere             anywhere            LOG level warning 
ACCEPT     tcp  --  anywhere             192.168.1.240       tcp dpt:9800 
ACCEPT     tcp  --  anywhere             192.168.1.240       tcp dpt:3389 
ACCEPT     tcp  --  anywhere             192.168.1.251       tcp dpt:http 
ACCEPT     tcp  --  anywhere             192.168.1.251       tcp dpt:http 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination