The first step in using iptables is to
start the iptables service. This can be
done with the command:
|
Warning |
|
The ip6tables services should be turned
off to use the iptables service with the
following commands:
service ip6tables stop
chkconfig ip6tables off
|
|
To make iptables start by default
whenever the system is booted, you must change runlevel status on
the service using chkconfig.
chkconfig --level 345 iptables on
|
The syntax of iptables is separated
into tiers. The main tier is the chain. A
chain specifies the state at which a packet is manipulated. The
usage is as follows:
iptables -A chain -j target
|
The -A option appends a rule at the end
of an existing ruleset. The chain is
the name of the chain for a rule. The three built-in chains of
iptables (that is, the chains that affect
every packet which traverses a network) are INPUT, OUTPUT, and
FORWARD. These chains are permanent and cannot be deleted. The
-j target
option specifies the location in the iptables ruleset where this particular rule should
jump. Some built in targets are ACCEPT,
DROP, and REJECT.
New chains (also called user-defined chains) can be created by
using the -N option. Creating a new chain
is useful for customizing granular or elaborate rules.
Establishing basic firewall policies creates a foundation for
building more detailed, user-defined rules. iptables uses policies (-P) to create default rules.
Security-minded administrators usually elect to drop all packets as
a policy and only allow specific packets on a case-by-case basis.
The following rules block all incoming and outgoing packets on a
network gateway:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
|
Additionally, it is recommended that any forwarded packets — network traffic that is
to be routed from the firewall to its destination node — be
denied as well, to restrict internal clients from inadvertent
exposure to the Internet. To do this, use the following rule:
After setting the policy chains, you can create new rules for
your particular network and security requirements. The following
sections outline some rules you may implement in the course of
building your iptables firewall.
Firewall rules are only valid for the time the computer is on;
so, if the system is rebooted, the rules are automatically flushed
and reset. To save the rules so that they are loaded later, use the
following command:
/sbin/service iptables save
|
The rules are stored in the file /etc/sysconfig/iptables and are applied whenever
the service is started or restarted, including when the machine is
rebooted.