Example simple iptable ruleset
Jump to navigation
Jump to search
Big Fat Warning: this is not a firewall, by an stretch! It is a super-simple set of iptables rules, which will permit all incoming connections, and all outgoing connections. It is useful as a baby-step towards developing a real iptables ruleset; it's also useful when used in conjunction with fail2ban (which will add host-specific blocking rules for you, based on authentication-failures).
#! /bin/sh # /etc/iptables.bak # Let's save typing & confusion with variables IPTABLES=/sbin/iptables # Flush active rules and custom tables $IPTABLES --flush $IPTABLES --delete-chain # set the defaults so that by-default incoming and outgoing packets are explicitly allowed; $IPTABLES -P INPUT ACCEPT $IPTABLES -P FORWARD DROP $IPTABLES -P OUTPUT ACCEPT
Invoke and make these rules effective:
hostname ~ # sh /etc/iptables.bak
Resulting active rules:
hostname ~ # iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy DROP) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
REMEMBER! If you like the ruleset, and want it to be in-effect the next time you start iptables (ie after a reboot), then you must:
hostname ~ # rc-update add iptables default * iptables added to runlevel default hostname ~ # /etc/init.d/iptables save * Saving iptables state ...