The Beginner’s Guide to iptables, the Linux Firewall

iptables is a powerful Linux firewall tool that allows you to secure your server or network by filtering and blocking incoming and outgoing traffic based on a set of rules. Here’s a beginner’s guide to iptables:

  1. Check if iptables is installed: Check if iptables is installed on your system by running the following command in the terminal:
sudo iptables --version

If iptables is not installed, you can install it by running the following command:

sudo apt-get install iptables
  1. Understanding iptables chains: iptables uses a set of chains to manage incoming and outgoing traffic. The three default chains are INPUT, OUTPUT, and FORWARD. INPUT controls incoming traffic, OUTPUT controls outgoing traffic, and FORWARD controls traffic that is being routed through the server.
  2. Adding iptables rules: You can add rules to iptables using the following command:
sudo iptables -A <chain> -p <protocol> --dport <port> -j <action>

Replace <chain> with the chain you want to add the rule to (INPUT, OUTPUT, or FORWARD), <protocol> with the protocol you want to allow (TCP, UDP, or ICMP), <port> with the port number you want to allow, and <action> with the action you want to take (ACCEPT, DROP, or REJECT).

For example, to allow incoming SSH traffic (port 22) on the INPUT chain, you can use the following command:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  1. Listing iptables rules: You can view the current iptables rules using the following command:
sudo iptables -L

This will show you the current rules for all chains.

  1. Saving iptables rules: To save the current iptables rules, run the following command:
sudo iptables-save > /etc/iptables/rules.v4

This will save the rules to the /etc/iptables/rules.v4 file. You can then load these rules at boot time by adding the following line to the /etc/rc.local file:

/sbin/iptables-restore < /etc/iptables/rules.v4

Iptables can be complex, but it is a powerful tool that can help you secure your server or network. By following these steps, you can get started with iptables and start adding rules to protect your system.