Created
February 28, 2012 18:59
-
-
Save jordanorelli/1934389 to your computer and use it in GitHub Desktop.
naive iptables rules
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*filter | |
# Allows all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0 | |
-A INPUT -i lo -j ACCEPT | |
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT | |
# Accepts all established inbound connections | |
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT | |
# Allows all outbound traffic | |
# You could modify this to only allow certain traffic | |
-A OUTPUT -j ACCEPT | |
# Allows HTTP and HTTPS connections from anywhere (the normal ports for websites) | |
-A INPUT -p tcp --dport 80 -j ACCEPT | |
-A INPUT -p tcp --dport 8000 -j ACCEPT | |
-A INPUT -p tcp --dport 8080 -j ACCEPT | |
-A INPUT -p tcp --dport 443 -j ACCEPT | |
# Rails default dev port. | |
-A INPUT -p tcp --dport 3000 -j ACCEPT | |
# Allows SSH connections for script kiddies | |
# THE -dport NUMBER IS THE SAME ONE YOU SET UP IN THE SSHD_CONFIG FILE | |
-A INPUT -p tcp -m state --state NEW --dport 42586 -j ACCEPT | |
# Now you should read up on iptables rules and consider whether ssh access | |
# for everyone is really desired. Most likely you will only allow access from certain IPs. | |
# Allow ping | |
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT | |
# log iptables denied calls (access via 'dmesg' command) | |
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 | |
# Reject all other inbound - default deny unless explicitly allowed policy: | |
-A INPUT -j REJECT | |
-A FORWARD -j REJECT | |
COMMIT |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
this is based on what I learned here:
http://library.linode.com/security/firewalls/iptables