All pastes #475799 Raw Edit

Stuff

public text v1 · immutable
·published 2007-05-07 18:19 UTC
rendered paste body
root@frequency:/home/lenny# cat ~/ip
IFext="eth2"
IFint="eth1"
lannet="192.168.0.0/16"

/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT DROP

logger -t iptables Flushing tables
/sbin/iptables -F
/sbin/iptables -F INPUT
/sbin/iptables -F OUTPUT
/sbin/iptables -F FORWARD
/sbin/iptables -F -t mangle
/sbin/iptables -F -t nat
/sbin/iptables -X
/sbin/iptables -Z

# create DUMP table
/sbin/iptables -N DUMP
/sbin/iptables -F DUMP
# limited logs

#/sbin/iptables -A DUMP -p icmp -m limit --limit 1/m --limit-burst 5 -j LOG --log-prefix "IPT ICMPDUMP: "
#/sbin/iptables -A DUMP -p tcp -m limit --limit 1/m --limit-burst 5 -j LOG --log-prefix "IPT TCPDUMP: "
#/sbin/iptables -A DUMP -p udp -m limit --limit 1/m --limit-burst 5 -j LOG --log-prefix "IPT UDPDUMP: "

/sbin/iptables -A DUMP -p tcp -j REJECT --reject-with tcp-reset

#/sbin/iptables -A DUMP -p udp -j REJECT --reject-with--icmp-port-unreachable
/sbin/iptables -A DUMP -j DROP
/sbin/iptables -N STATEFUL
/sbin/iptables -F STATEFUL
/sbin/iptables -I STATEFUL -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -I STATEFUL -m state --state NEW -i ! ${IFext} -j ACCEPT
/sbin/iptables -A STATEFUL -j DUMP
/sbin/iptables -N SSH
/sbin/iptables -F SSH
/sbin/iptables -A SSH -i ! ${IFext} -j RETURN
/sbin/iptables -A SSH -m recent --name SSH --set --rsource
/sbin/iptables -A SSH -m recent ! --rcheck --seconds 60 --hitcount 3 --name SSH --rsource -j RETURN
/sbin/iptables -A SSH -j DUMP
/sbin/iptables -N SYN-FLOOD
/sbin/iptables -F SYN-FLOOD
/sbin/iptables -A SYN-FLOOD -m limit --limit 1/s --limit-burst 4 -j RETURN
/sbin/iptables -A SYN-FLOOD -j DROP

/sbin/iptables -A INPUT -i ${IFext} -p tcp --syn -j SYN-FLOOD
/sbin/iptables -A INPUT -p tcp -i ${IFext} ! --syn -m state --state NEW -j DROP

# watch out for fragments
/sbin/iptables -A INPUT -i ${IFext} -f -j LOG --log-prefix "IPT FRAGMENTS: "
/sbin/iptables -A INPUT -i ${IFext} -f -j DROP

logger -t iptables Setting input/output rules
# allow loopback in
/sbin/iptables -A INPUT -i lo -j ACCEPT

# allow loopback and LAN out
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
/sbin/iptables -A OUTPUT -p ALL -s ${lannet} -j ACCEPT

#/sbin/iptables -I INPUT -p tcp -i ${IFext} --dport ssh -m state --state NEW -j SSH

logger -t iptables Turning on NAT
# masquerade from internal network
/sbin/iptables -t nat -A POSTROUTING -s ${lannet} -o ${IFext} -j MASQUERADE

logger -t iptables Finish up
# push everything else to state table
/sbin/iptables -A INPUT -j STATEFUL
/sbin/iptables -A FORWARD -j STATEFUL
/sbin/iptables -A OUTPUT -j STATEFUL

/sbin/iptables -I INPUT -p tcp -i ${IFext} --dport ssh -m state --state NEW -j SSH
/sbin/iptables -I INPUT -p tcp -i ${IFext} --dport ssh -j ACCEPT

##DC++

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 412 -j DNAT --to-destination 192.168.0.110:6000
iptables -I FORWARD -i ${IFext} -p tcp --dport 412 -j ACCEPT

iptables -t nat -I PREROUTING -i ${IFext} -p udp --dport 412 -j DNAT --to-destination 192.168.0.110:6000
iptables -I FORWARD -i ${IFext} -p udp --dport 412 -j ACCEPT

## PORT 54 FTP

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 54 -j DNAT --to-destination 192.168.0.110
iptables -I FORWARD -i ${IFext} -p tcp --dport 54 -j ACCEPT

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 5000:5015 -j DNAT --to-destination 192.168.0.110
iptables -I FORWARD -i ${IFext} -p tcp --dport 5000:5015 -j ACCEPT

##VNC

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 5900 -j DNAT --to-destination 192.168.0.110:5900
iptables -I FORWARD -i ${IFext} -p tcp --dport 5900 -j ACCEPT

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 6000 -j DNAT --to-destination 192.168.0.110:6000
iptables -I FORWARD -i ${IFext} -p tcp --dport 6000 -j ACCEPT

iptables -t nat -I PREROUTING -i ${IFext} -p udp --dport 6000 -j DNAT --to-destination 192.168.0.110:6000
iptables -I FORWARD -i ${IFext} -p udp --dport 6000 -j ACCEPT

iptables -I OUTPUT -p icmp -o ${IFext}  -j DROP

iptables -I INPUT -p tcp -i ${IFext} --dport 80 -j ACCEPT
iptables -I INPUT -p tcp -i ${IFext} --dport 81 -j ACCEPT

# EE

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 33335:33336  -j DNAT --to-destination 192.168.0.110
iptables -I FORWARD -i ${IFext} -p tcp --dport 33335:33336 -j ACCEPT

iptables -t nat -I PREROUTING -i ${IFext} -p udp --dport 33334  -j DNAT --to-destination 192.168.0.110
iptables -I FORWARD -i ${IFext} -p udp --dport 33334 -j ACCEPT

# Azureus

iptables -t nat -I PREROUTING -i ${IFext} -p tcp --dport 55914 -j DNAT --to-destination 192.168.0.110
iptables -I FORWARD -i ${IFext} -p tcp --dport 55914 -j ACCEPT

iptables -t nat -I PREROUTING -i ${IFext} -p udp --dport 55914 -j DNAT --to-destination 192.168.0.110
iptables -I FORWARD -i ${IFext} -p udp --dport 55914 -j ACCEPT