HellTron
15.10.03, 21:57
Hi..
Hier ist meine Configuration für ne Firewall...
Mein PC dient auch als DSL Router, und ich weiss nicht ob ich alles richtig gemacht habe schau doch mal bitte jemmand drüber.... und bitte feedback geben :) DANKE schonmal :)
PS: Ich habe noch nicht alle Games eingetragen... bin noch die PORTS am rausfinden :)
---------------------------------------------------------------------------------------------
#!/bin/sh
# Variablen {
nameserver=194.25.2.129
lan0=192.168.0.0/24
lan1=192.168.100.0/24
lan2=10.0.0.0/24
# }
# Regeln löschen {
iptables -F
# }
# Kernelparameter {
echo 1 > /proc/sys/net/ipv4/ip_forward;
echo 1 > /proc/sys/net/ipv4/ip_dynaddr;
# }
# DROP all IN/FORWARD/OUT {
iptables -P INPUT DROP;
iptables -P FORWARD DROP;
iptables -P OUTPUT DROP;
# }
# ACCEPT OUT {
# iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan0 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan0 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan1 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan1 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan2 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan2 --dport 1024: -j ACCEPT;
# CLIENT
iptables -A OUTPUT -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
iptables -A OUTPUT -p udp --sport 1024: --dport 53 -j ACCEPT; # to dns (udp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 53 -j ACCEPT; # to dns (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 137 -j ACCEPT; # to net-bios-ns (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 138 -j ACCEPT; # to net-bios-dgm (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 139 -j ACCEPT; # to net-bios-ssn (tcp)
iptables -A OUTPUT -p udp --sport 1024: --dport 137 -j ACCEPT; # to net-bios-ns (udp)
iptables -A OUTPUT -p udp --sport 1024: --dport 138 -j ACCEPT; # to net-bios-dgm (udp)
iptables -A OUTPUT -p udp --sport 1024: --dport 139 -j ACCEPT; # to net-bios-ssn (udp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 443 -j ACCEPT; # to https (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 5190 -j ACCEPT; # to icq (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 6000 -j ACCEPT; # to X11 (tcp)
#SERVER
iptables -A OUTPUT -p tcp --sport 20 --dport 1024: -j ACCEPT; # from ftp-data (tcp)
iptables -A OUTPUT -p tcp --sport 21 --dport 1024: -j ACCEPT; # from ftp (tcp)
iptables -A OUTPUT -p tcp --sport 22 --dport 1024: -j ACCEPT; # from ssh (tcp)
iptables -A OUTPUT -p tcp --sport 25 --dport 1024: -j ACCEPT; # from smtp (tcp)
iptables -A OUTPUT -p tcp --sport 80 --dport 1024: -j ACCEPT; # from http (tcp)
iptables -A OUTPUT -p tcp --sport 110 --dport 1024: -j ACCEPT; # from pop3 (tcp)
iptables -A OUTPUT -p tcp --sport 137 --dport 1024: -j ACCEPT; # from netbios-ns (tcp)
iptables -A OUTPUT -p tcp --sport 138 --dport 1024: -j ACCEPT; # from netbios-dgm (tcp)
iptables -A OUTPUT -p tcp --sport 139 --dport 1024: -j ACCEPT; # from netbios-ssn (tcp)
iptables -A OUTPUT -p udp --sport 137 --dport 1024: -j ACCEPT; # from netbios-ns (udp)
iptables -A OUTPUT -p udp --sport 138 --dport 1024: -j ACCEPT; # from netbios-dgm (udp)
iptables -A OUTPUT -p udp --sport 139 --dport 1024: -j ACCEPT; # from netbios-ssn (udp)
iptables -A OUTPUT -p tcp --sport 6000 --dport 1024: -j ACCEPT; # from X11 (tcp)
# }
# ACCEPT IN {
# iptables -A INPUT -i eth0 -p tcp -s $lan0 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p udp -s $lan0 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p tcp -s $lan1 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p udp -s $lan1 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p tcp -s $lan2 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p udp -s $lan2 --sport 1024: --dport 1024: -j ACCEPT;
# CLIENT
iptables -A INPUT -p tcp --sport 20 --dport 1024: ! --syn -j ACCEPT; # from ftp-data (tcp)
iptables -A INPUT -p tcp --sport 21 --dport 1024: ! --syn -j ACCEPT; # from ftp (tcp)
iptables -A INPUT -p tcp --sport 22 --dport 1024: ! --syn -j ACCEPT; # from ssh (tcp)
iptables -A INPUT -p tcp --sport 25 --dport 1024: ! --syn -j ACCEPT; # from smtp (tcp)
iptables -A INPUT -p udp --sport 53 -j ACCEPT; # from dns (udp)
iptables -A INPUT -p tcp --sport 53 -j ACCEPT; # from dns (tcp)
iptables -A INPUT -p tcp --sport 80 --dport 1024: ! --syn -j ACCEPT; # from http (tcp)
iptables -A INPUT -p tcp --sport 110 --dport 1024: ! --syn -j ACCEPT; # from pop3 (tcp)
iptables -A INPUT -p tcp --sport 137 --dport 1024: ! --syn -j ACCEPT; # from netpios-ns (tcp)
iptables -A INPUT -p tcp --sport 138 --dport 1024: ! --syn -j ACCEPT; # from netpios-dgm (tcp)
iptables -A INPUT -p tcp --sport 139 --dport 1024: ! --syn -j ACCEPT; # from netpios-ssn (tcp)
iptables -A INPUT -p udp --sport 137 --dport 1024: -j ACCEPT; # from netpios-ns (udp)
iptables -A INPUT -p udp --sport 138 --dport 1024: -j ACCEPT; # from netpios-dgm (udp)
iptables -A INPUT -p udp --sport 139 --dport 1024: -j ACCEPT; # from netpios-ssn (udp)
iptables -A INPUT -p tcp --sport 443 --dport 1024: ! --syn -j ACCEPT; # from https (tcp)
iptables -A INPUT -p tcp --sport 5190 --dport 1024: ! --syn -j ACCEPT; # from icq (tcp)
iptables -A INPUT -p tcp --sport 6000 --dport 1024: ! --syn -j ACCEPT; # from X11 (tcp)
# SERVER
iptables -A INPUT -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 137 -j ACCEPT; # to netbios-ns (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 138 -j ACCEPT; # to netbios-dgm (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 139 -j ACCEPT; # to netbios-ssn (tcp)
iptables -A INPUT -p udp --sport 1024: --dport 137 -j ACCEPT; # to netbios-ns (udp)
iptables -A INPUT -p udp --sport 1024: --dport 138 -j ACCEPT; # to netbios-dgm (udp)
iptables -A INPUT -p udp --sport 138 --dport 138 -j ACCEPT; # to netbios-dgm <-> (udp)
iptables -A INPUT -p udp --sport 1024: --dport 139 -j ACCEPT; # to netbios-ssn (udp)
iptables -A INPUT -p tcp --sport 1024: --dport 6000 -j ACCEPT; # to X11 (tcp)
# }
# FORWARD {
# TO SERVICE
iptables -A FORWARD -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
iptables -A FORWARD -p udp --sport 1024: --dport 53 -j ACCEPT; # to dns (udp)
iptables -A FORWARD -p tcp --sport 1024: --dport 53 -j ACCEPT; # to dns (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 443 -j ACCEPT; # to https (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 5190 -j ACCEPT; # to icq (tcp)
# FROM SERVICE
iptables -A FORWARD -p tcp --sport 20 --dport 1024: -j ACCEPT; # from ftp-data (tcp)
iptables -A FORWARD -p tcp --sport 21 --dport 1024: -j ACCEPT; # from ftp (tcp)
iptables -A FORWARD -p tcp --sport 22 --dport 1024: -j ACCEPT; # from ssh (tcp)
iptables -A FORWARD -p tcp --sport 25 --dport 1024: -j ACCEPT; # from smtp (tcp)
iptables -A FORWARD -p udp --sport 53 --dport 1024: -j ACCEPT; # from dns (udp)
iptables -A FORWARD -p tcp --sport 53 --dport 1024: -j ACCEPT; # from dns (tcp)
iptables -A FORWARD -p tcp --sport 80 --dport 1024: -j ACCEPT; # from http (tcp)
iptables -A FORWARD -p tcp --sport 110 --dport 1024: -j ACCEPT; # from pop3 (tcp)
iptables -A FORWARD -p tcp --sport 443 --dport 1024: -j ACCEPT; # from https (tcp)
iptables -A FORWARD -p tcp --sport 5190 --dport 1024: -j ACCEPT; # from icq (tcp)
# }
# GAMES {
# GAMESPY
iptables -A OUTPUT -p tcp --sport 1024: --dport 28910 -j ACCEPT;
iptables -A INPUT -p tcp --sport 28910 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p tcp --sport 28910 --dport 1024: -j ACCEPT;
iptables -A INPUT -p tcp --sport 1024: --dport 28910 -j ACCEPT;
iptables -A FORWARD -p tcp --sport 28910 --dport 1024: -j ACCEPT;
# NWN
iptables -A OUTPUT -p udp --sport 1024: --dport 5121 -j ACCEPT;
iptables -A INPUT -p udp --sport 5121 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p udp --sport 5121 --dport 1024: -j ACCEPT;
iptables -A INPUT -p udp --sport 1024: --dport 5121 -j ACCEPT;
iptables -A FORWARD -p udp --sport 5121 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p tcp --sport 1024: --dport 6667 -j ACCEPT;
iptables -A INPUT -p tcp --sport 6667 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p tcp --sport 6667 --dport 1024: -j ACCEPT;
iptables -A INPUT -p tcp --sport 1024: --dport 6667 -j ACCEPT;
iptables -A FORWARD -p tcp --sport 6667 --dport 1024: -j ACCEPT;
# ET
iptables -A OUTPUT -p udp --sport 1024: --dport 27960 -j ACCEPT;
iptables -A INPUT -p udp --sport 27960 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p udp --sport 27960 --dport 1024: -j ACCEPT;
iptables -A INPUT -p udp --sport 1024: --dport 27960 -j ACCEPT;
iptables -A FORWARD -p udp --sport 27960 --dport 1024: -j ACCEPT;
# QIII
# QIII UT 3.0
# QIII NAVY SEALS
# HL - CS
# HL
# CIV CALL TO POWER
# MYTH II
# DIABLO II
# UT2003
# SSAM I
# SSAM II
# AMERICAN ARMY OP
# WAR III
# WAR III FT
# MOHAA
# RTCW
# SNES
# DOOM III
# }
# LOOPBACK DEVICE {
iptables -A INPUT -i lo -j ACCEPT;
iptables -A OUTPUT -o lo -j ACCEPT;
# }
# ICMP {
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type destination-unreachable -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type source-quench -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type time-exceeded -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type parameter-problem -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type source-quench -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type parameter-problem -j ACCEPT;
# }
# MASQ - NAT {
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE;
# }
# LOG {
iptables -A INPUT -j LOG;
iptables -A OUTPUT -j LOG;
iptables -A FORWARD -j LOG;
# }
# DROP all other IN/OUT {
iptables -A INPUT -p tcp --dport auth -j REJECT --reject-with tcp-reset;
iptables -A INPUT -j DROP;
#
iptables -A FORWARD -p tcp -j REJECT --reject-with tcp-reset;
iptables -A FORWARD -p udp -j REJECT;
iptables -A FORWARD -j DROP;
#
iptables -A OUTPUT -p tcp -j REJECT --reject-with tcp-reset;
iptables -A OUTPUT -p udp -j REJECT;
iptables -A OUTPUT -j DROP;
# }
Hier ist meine Configuration für ne Firewall...
Mein PC dient auch als DSL Router, und ich weiss nicht ob ich alles richtig gemacht habe schau doch mal bitte jemmand drüber.... und bitte feedback geben :) DANKE schonmal :)
PS: Ich habe noch nicht alle Games eingetragen... bin noch die PORTS am rausfinden :)
---------------------------------------------------------------------------------------------
#!/bin/sh
# Variablen {
nameserver=194.25.2.129
lan0=192.168.0.0/24
lan1=192.168.100.0/24
lan2=10.0.0.0/24
# }
# Regeln löschen {
iptables -F
# }
# Kernelparameter {
echo 1 > /proc/sys/net/ipv4/ip_forward;
echo 1 > /proc/sys/net/ipv4/ip_dynaddr;
# }
# DROP all IN/FORWARD/OUT {
iptables -P INPUT DROP;
iptables -P FORWARD DROP;
iptables -P OUTPUT DROP;
# }
# ACCEPT OUT {
# iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan0 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan0 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan1 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan1 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d $lan2 --dport 1024: -j ACCEPT;
# iptables -A OUTPUT -o eth0 -p udp --sport 1024: -d $lan2 --dport 1024: -j ACCEPT;
# CLIENT
iptables -A OUTPUT -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
iptables -A OUTPUT -p udp --sport 1024: --dport 53 -j ACCEPT; # to dns (udp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 53 -j ACCEPT; # to dns (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 137 -j ACCEPT; # to net-bios-ns (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 138 -j ACCEPT; # to net-bios-dgm (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 139 -j ACCEPT; # to net-bios-ssn (tcp)
iptables -A OUTPUT -p udp --sport 1024: --dport 137 -j ACCEPT; # to net-bios-ns (udp)
iptables -A OUTPUT -p udp --sport 1024: --dport 138 -j ACCEPT; # to net-bios-dgm (udp)
iptables -A OUTPUT -p udp --sport 1024: --dport 139 -j ACCEPT; # to net-bios-ssn (udp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 443 -j ACCEPT; # to https (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 5190 -j ACCEPT; # to icq (tcp)
iptables -A OUTPUT -p tcp --sport 1024: --dport 6000 -j ACCEPT; # to X11 (tcp)
#SERVER
iptables -A OUTPUT -p tcp --sport 20 --dport 1024: -j ACCEPT; # from ftp-data (tcp)
iptables -A OUTPUT -p tcp --sport 21 --dport 1024: -j ACCEPT; # from ftp (tcp)
iptables -A OUTPUT -p tcp --sport 22 --dport 1024: -j ACCEPT; # from ssh (tcp)
iptables -A OUTPUT -p tcp --sport 25 --dport 1024: -j ACCEPT; # from smtp (tcp)
iptables -A OUTPUT -p tcp --sport 80 --dport 1024: -j ACCEPT; # from http (tcp)
iptables -A OUTPUT -p tcp --sport 110 --dport 1024: -j ACCEPT; # from pop3 (tcp)
iptables -A OUTPUT -p tcp --sport 137 --dport 1024: -j ACCEPT; # from netbios-ns (tcp)
iptables -A OUTPUT -p tcp --sport 138 --dport 1024: -j ACCEPT; # from netbios-dgm (tcp)
iptables -A OUTPUT -p tcp --sport 139 --dport 1024: -j ACCEPT; # from netbios-ssn (tcp)
iptables -A OUTPUT -p udp --sport 137 --dport 1024: -j ACCEPT; # from netbios-ns (udp)
iptables -A OUTPUT -p udp --sport 138 --dport 1024: -j ACCEPT; # from netbios-dgm (udp)
iptables -A OUTPUT -p udp --sport 139 --dport 1024: -j ACCEPT; # from netbios-ssn (udp)
iptables -A OUTPUT -p tcp --sport 6000 --dport 1024: -j ACCEPT; # from X11 (tcp)
# }
# ACCEPT IN {
# iptables -A INPUT -i eth0 -p tcp -s $lan0 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p udp -s $lan0 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p tcp -s $lan1 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p udp -s $lan1 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p tcp -s $lan2 --sport 1024: --dport 1024: -j ACCEPT;
# iptables -A INPUT -i eth0 -p udp -s $lan2 --sport 1024: --dport 1024: -j ACCEPT;
# CLIENT
iptables -A INPUT -p tcp --sport 20 --dport 1024: ! --syn -j ACCEPT; # from ftp-data (tcp)
iptables -A INPUT -p tcp --sport 21 --dport 1024: ! --syn -j ACCEPT; # from ftp (tcp)
iptables -A INPUT -p tcp --sport 22 --dport 1024: ! --syn -j ACCEPT; # from ssh (tcp)
iptables -A INPUT -p tcp --sport 25 --dport 1024: ! --syn -j ACCEPT; # from smtp (tcp)
iptables -A INPUT -p udp --sport 53 -j ACCEPT; # from dns (udp)
iptables -A INPUT -p tcp --sport 53 -j ACCEPT; # from dns (tcp)
iptables -A INPUT -p tcp --sport 80 --dport 1024: ! --syn -j ACCEPT; # from http (tcp)
iptables -A INPUT -p tcp --sport 110 --dport 1024: ! --syn -j ACCEPT; # from pop3 (tcp)
iptables -A INPUT -p tcp --sport 137 --dport 1024: ! --syn -j ACCEPT; # from netpios-ns (tcp)
iptables -A INPUT -p tcp --sport 138 --dport 1024: ! --syn -j ACCEPT; # from netpios-dgm (tcp)
iptables -A INPUT -p tcp --sport 139 --dport 1024: ! --syn -j ACCEPT; # from netpios-ssn (tcp)
iptables -A INPUT -p udp --sport 137 --dport 1024: -j ACCEPT; # from netpios-ns (udp)
iptables -A INPUT -p udp --sport 138 --dport 1024: -j ACCEPT; # from netpios-dgm (udp)
iptables -A INPUT -p udp --sport 139 --dport 1024: -j ACCEPT; # from netpios-ssn (udp)
iptables -A INPUT -p tcp --sport 443 --dport 1024: ! --syn -j ACCEPT; # from https (tcp)
iptables -A INPUT -p tcp --sport 5190 --dport 1024: ! --syn -j ACCEPT; # from icq (tcp)
iptables -A INPUT -p tcp --sport 6000 --dport 1024: ! --syn -j ACCEPT; # from X11 (tcp)
# SERVER
iptables -A INPUT -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 137 -j ACCEPT; # to netbios-ns (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 138 -j ACCEPT; # to netbios-dgm (tcp)
iptables -A INPUT -p tcp --sport 1024: --dport 139 -j ACCEPT; # to netbios-ssn (tcp)
iptables -A INPUT -p udp --sport 1024: --dport 137 -j ACCEPT; # to netbios-ns (udp)
iptables -A INPUT -p udp --sport 1024: --dport 138 -j ACCEPT; # to netbios-dgm (udp)
iptables -A INPUT -p udp --sport 138 --dport 138 -j ACCEPT; # to netbios-dgm <-> (udp)
iptables -A INPUT -p udp --sport 1024: --dport 139 -j ACCEPT; # to netbios-ssn (udp)
iptables -A INPUT -p tcp --sport 1024: --dport 6000 -j ACCEPT; # to X11 (tcp)
# }
# FORWARD {
# TO SERVICE
iptables -A FORWARD -p tcp --sport 1024: --dport 20 -j ACCEPT; # to ftp-data (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 21 -j ACCEPT; # to ftp (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 22 -j ACCEPT; # to ssh (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 25 -j ACCEPT; # to smtp (tcp)
iptables -A FORWARD -p udp --sport 1024: --dport 53 -j ACCEPT; # to dns (udp)
iptables -A FORWARD -p tcp --sport 1024: --dport 53 -j ACCEPT; # to dns (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 80 -j ACCEPT; # to http (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 110 -j ACCEPT; # to pop3 (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 443 -j ACCEPT; # to https (tcp)
iptables -A FORWARD -p tcp --sport 1024: --dport 5190 -j ACCEPT; # to icq (tcp)
# FROM SERVICE
iptables -A FORWARD -p tcp --sport 20 --dport 1024: -j ACCEPT; # from ftp-data (tcp)
iptables -A FORWARD -p tcp --sport 21 --dport 1024: -j ACCEPT; # from ftp (tcp)
iptables -A FORWARD -p tcp --sport 22 --dport 1024: -j ACCEPT; # from ssh (tcp)
iptables -A FORWARD -p tcp --sport 25 --dport 1024: -j ACCEPT; # from smtp (tcp)
iptables -A FORWARD -p udp --sport 53 --dport 1024: -j ACCEPT; # from dns (udp)
iptables -A FORWARD -p tcp --sport 53 --dport 1024: -j ACCEPT; # from dns (tcp)
iptables -A FORWARD -p tcp --sport 80 --dport 1024: -j ACCEPT; # from http (tcp)
iptables -A FORWARD -p tcp --sport 110 --dport 1024: -j ACCEPT; # from pop3 (tcp)
iptables -A FORWARD -p tcp --sport 443 --dport 1024: -j ACCEPT; # from https (tcp)
iptables -A FORWARD -p tcp --sport 5190 --dport 1024: -j ACCEPT; # from icq (tcp)
# }
# GAMES {
# GAMESPY
iptables -A OUTPUT -p tcp --sport 1024: --dport 28910 -j ACCEPT;
iptables -A INPUT -p tcp --sport 28910 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p tcp --sport 28910 --dport 1024: -j ACCEPT;
iptables -A INPUT -p tcp --sport 1024: --dport 28910 -j ACCEPT;
iptables -A FORWARD -p tcp --sport 28910 --dport 1024: -j ACCEPT;
# NWN
iptables -A OUTPUT -p udp --sport 1024: --dport 5121 -j ACCEPT;
iptables -A INPUT -p udp --sport 5121 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p udp --sport 5121 --dport 1024: -j ACCEPT;
iptables -A INPUT -p udp --sport 1024: --dport 5121 -j ACCEPT;
iptables -A FORWARD -p udp --sport 5121 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p tcp --sport 1024: --dport 6667 -j ACCEPT;
iptables -A INPUT -p tcp --sport 6667 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p tcp --sport 6667 --dport 1024: -j ACCEPT;
iptables -A INPUT -p tcp --sport 1024: --dport 6667 -j ACCEPT;
iptables -A FORWARD -p tcp --sport 6667 --dport 1024: -j ACCEPT;
# ET
iptables -A OUTPUT -p udp --sport 1024: --dport 27960 -j ACCEPT;
iptables -A INPUT -p udp --sport 27960 --dport 1024: -j ACCEPT;
iptables -A OUTPUT -p udp --sport 27960 --dport 1024: -j ACCEPT;
iptables -A INPUT -p udp --sport 1024: --dport 27960 -j ACCEPT;
iptables -A FORWARD -p udp --sport 27960 --dport 1024: -j ACCEPT;
# QIII
# QIII UT 3.0
# QIII NAVY SEALS
# HL - CS
# HL
# CIV CALL TO POWER
# MYTH II
# DIABLO II
# UT2003
# SSAM I
# SSAM II
# AMERICAN ARMY OP
# WAR III
# WAR III FT
# MOHAA
# RTCW
# SNES
# DOOM III
# }
# LOOPBACK DEVICE {
iptables -A INPUT -i lo -j ACCEPT;
iptables -A OUTPUT -o lo -j ACCEPT;
# }
# ICMP {
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type destination-unreachable -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type source-quench -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type time-exceeded -j ACCEPT;
iptables -A OUTPUT -p icmp --icmp-type parameter-problem -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type source-quench -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT;
iptables -A INPUT -p icmp --icmp-type parameter-problem -j ACCEPT;
# }
# MASQ - NAT {
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE;
# }
# LOG {
iptables -A INPUT -j LOG;
iptables -A OUTPUT -j LOG;
iptables -A FORWARD -j LOG;
# }
# DROP all other IN/OUT {
iptables -A INPUT -p tcp --dport auth -j REJECT --reject-with tcp-reset;
iptables -A INPUT -j DROP;
#
iptables -A FORWARD -p tcp -j REJECT --reject-with tcp-reset;
iptables -A FORWARD -p udp -j REJECT;
iptables -A FORWARD -j DROP;
#
iptables -A OUTPUT -p tcp -j REJECT --reject-with tcp-reset;
iptables -A OUTPUT -p udp -j REJECT;
iptables -A OUTPUT -j DROP;
# }