What is iptables in Linux ? Introduction and basic usages of iptables under Unix/Linux
We can call it is the basics of Firewall in Linux. Iptables is a rule based firewall system and is normally pre-installed on a Unix operating system which is controlling the incoming and outgoing packets. By-default the iptables is running without any rules, we can create, add, edit rules to it. Here I am trying to list some common as well as the basics of iptables.
Hope, this topic gives you some basic ideas and tips of iptables.
Basic structure of iptables.
The structure for the iptables is like, Tables which has chains and the chains which contains rules.
Tables —> Chains —> Rules. The rules are defined to control the packets for Input/Output.
Tables —> Chains —> Rules. The rules are defined to control the packets for Input/Output.
List of different Tables in iptables structure.
Here is list of iptables Tables and corresponding Chains.
Here is list of iptables Tables and corresponding Chains.
Tables;
1. Filter Table
It is the default table in iptables. There are no need to specify the table name for defining the Rules. Different inbuilt chains in this table;
1.1 INPUT Chain
INPUT Chain is for managing packets input to the server. Here we can add Rules to control INPUT connections from remote to the server.
1. Filter Table
It is the default table in iptables. There are no need to specify the table name for defining the Rules. Different inbuilt chains in this table;
1.1 INPUT Chain
INPUT Chain is for managing packets input to the server. Here we can add Rules to control INPUT connections from remote to the server.
1.2 FORWARD Chain
To add Rules to manage packet connections from one network interface(NIC) to another on the same machine.
To add Rules to manage packet connections from one network interface(NIC) to another on the same machine.
1.3 OUTPUT Chain
The OUTPUT Chain control packets from the server to outside. Here we can add different rules to manage outbound connection from the server.
The OUTPUT Chain control packets from the server to outside. Here we can add different rules to manage outbound connection from the server.
2. NAT table
Network address translation (NAT) is a methodology of modifying network address information in Internet Protocol (IP) datagram packet headers while they are in transit across a traffic routing device for the purpose of remapping one IP address space into another. The default inbuilt chains for NAT tables are;
2.1 PREROUTING chain
As the name indicates its translate packets before routing.
2.2 POSTROUTING chain
Translate packets after routing completes.
2.3 OUTPUT chain
Network address translation (NAT) is a methodology of modifying network address information in Internet Protocol (IP) datagram packet headers while they are in transit across a traffic routing device for the purpose of remapping one IP address space into another. The default inbuilt chains for NAT tables are;
2.1 PREROUTING chain
As the name indicates its translate packets before routing.
2.2 POSTROUTING chain
Translate packets after routing completes.
2.3 OUTPUT chain
3. Mangle table
This table is used for packet alternation. Different inbuilt chains are;
3.1 PREROUTING chain
3.2 OUTPUT chain
3.3 FORWARD chain
3.4 INPUT chain
3.5 POSTROUTING chain
This table is used for packet alternation. Different inbuilt chains are;
3.1 PREROUTING chain
3.2 OUTPUT chain
3.3 FORWARD chain
3.4 INPUT chain
3.5 POSTROUTING chain