All pastes #976138 Raw Edit

Anonymous

public text v1 · immutable
·published 2008-04-07 23:05 UTC
rendered paste body
# Clean old iptables 
iptables -F 
iptables -X 
iptables -Z

# Default forward policy to DROP


iptables -P OUTPUT ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD ACCEPT

# Loopback - Allow unlimited traffic
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Fragments : Don't trust the little buggers. Send 'em to hell.
######iptables -A INPUT -f -j LOG --log-level debug --log-prefix "IPTABLES FRAGMENTS: "

# Refuse spoofed packets claiming to be the loopback
#iptables -A INPUT -d 127.0.0.0/8 -j DROP

iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -j DROP

# Allow BootP/DHCP UDP requests

iptables -A INPUT -p udp  --dport 67:68 -j ACCEPT
# DNS Allow UDP packets in for DNS client from nameservers
iptables -A INPUT -p udp  --sport 53 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -p udp  --dport 53 -j ACCEPT

#### TCP, log & drop
###iptables -A INPUT -i eth0 -p tcp -j LOG --log-level debug --log-prefix "IPTABLES TCP-IN: "
###iptables -A INPUT -i eth0 -p tcp -j DROP

# SSH 
# allow all sshd incoming connections (including the port fw)
iptables -A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# FTP
# allow all ftpd incoming connections
iptables -A INPUT -p tcp   --dport 21 -j ACCEPT
# Enable active ftp transfers 
iptables -A INPUT -p tcp   --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Enable passive ftp transfers
iptables -A INPUT -p tcp   --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Enable ident probes (IRC)
iptables -t filter -A INPUT -p tcp   --dport 113 -j ACCEPT

# Allow ICMP in if it is related to other connections
iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT

# LOGGING:

# UDP, log & drop
#iptables -A INPUT -i eth0 -p udp -j LOG --log-level debug --log-prefix "IPTABLES UDP-IN: "
#iptables -A INPUT -i eth0 -p udp -j DROP

# ICMP, log & drop
######iptables -A INPUT -i eth0 -p icmp -j LOG --log-level debug --log-prefix "IPTABLES ICMP-IN: "
iptables -A INPUT -i eth0 -p icmp -j DROP

# Windows NetBIOS noise, log & drop
######iptables -A INPUT -i eth0 -p tcp  --sport 137:139 -j LOG --log-level debug --log-prefix "IPTABLES NETBIOS-IN: "
iptables -A INPUT -i eth0 -p tcp  --sport 137:139 -j DROP

#### VLC
iptables -A INPUT -p igmp -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 1234 -m state --state NEW -j ACCEPT
iptables -A INPUT -d 224.2.127.254/32 -p udp -m udp --dport 9875 -j ACCEPT

#### Boinc
iptables -A INPUT -p tcp -m tcp --dport 1234 -m state --state NEW -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 31416 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 33103 -j ACCEPT

# HTTP
# allow all http/https incoming/return connections
iptables -A INPUT -p tcp -s 0/0 --sport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -s 0/0 --sport 443 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -d 0/0 --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -d 0/0 --dport 443 -j ACCEPT


# Anything else not allowed, log & drop
######iptables -A INPUT -j LOG --log-level debug --log-prefix "IPTABLES UNKNOWN-IN: "

iptables -A INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -j DROP
  echo "Firewall rules applied!"
  trap - 2 3