GNU/Linux >> Znalost Linux >  >> Linux

Linux OS Service „iptables“

Název služby

iptables

Popis

iptables obslužný program řídí kód filtrování síťových paketů v jádře Linuxu. Pokud potřebujete nastavit firewally a/nebo maskování IP, měli byste si nainstalovat tento nástroj. Soubor /sbin/iptables application je program příkazového řádku uživatelského prostoru používaný ke konfiguraci pravidel filtrování paketů IPv4 v systému Linux. Protože z pravidel paketového filtru se také konfiguruje překlad síťových adres (NAT), používá se k tomu také /sbin/iptables. Pro sítě IPv6 existuje podobný nástroj alias iptables-ipv6 .

Funkce iptables se používá k nastavení, údržbě a kontrole tabulek pravidel filtrování paketů IP v jádře Linuxu. Lze definovat několik různých tabulek. Každá tabulka obsahuje několik vestavěných řetězců a může obsahovat také řetězce definované uživatelem.

Každý řetěz je seznam pravidel, která mohou odpovídat sadě paketů. Každé pravidlo určuje, co dělat s paketem, který se shoduje. Tomu se říká cíl , což může být skok do uživatelem definovaného řetězce ve stejné tabulce.

Název balíčku RPM

iptables

Řízení služeb

Příklady spuštění a zastavení

# service iptables start
Applying iptables firewall rules:                          [  OK  ]
Loading additional iptables modules: ip_conntrack_netbios_n[  OK  ]
# service iptables stop
Flushing firewall rules:                                   [  OK  ]
Setting chains to policy ACCEPT: filter                    [  OK  ]
Unloading iptables modules:                                [  OK  ]

Použití

# service iptables
Usage: /etc/init.d/iptables {start|stop|restart|condrestart|status|panic|save}
# service iptables start
Applying iptables firewall rules:                          [  OK  ]
Loading additional iptables modules: ip_conntrack_netbios_n[  OK  ]
# service iptables stop
Flushing firewall rules:                                   [  OK  ]
Setting chains to policy ACCEPT: filter                    [  OK  ]
Unloading iptables modules:                                [  OK  ]
# service iptables restart
Applying iptables firewall rules:                          [  OK  ]
Loading additional iptables modules: ip_conntrack_netbios_n[  OK  ]
# service iptables condrestart
Flushing firewall rules:                                   [  OK  ]
Setting chains to policy ACCEPT: filter                    [  OK  ]
Unloading iptables modules:                                [  OK  ]
Applying iptables firewall rules:                          [  OK  ]
Loading additional iptables modules: ip_conntrack_netbios_n[  OK  ]
# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain RH-Firewall-1-INPUT (2 references)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255 
3    ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0           
4    ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0           
5    ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353 
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631 
8    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
10   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:80 
11   REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
# service iptables panic
Flushing firewall rules:                                   [  OK  ]
Setting chains to policy DROP: filter                      [  OK  ]
# service iptables save
Saving firewall rules to /etc/sysconfig/iptables:          [  OK  ]

Démon

/sbin/iptables

Moduly

nfnetlink
ip_conntrack
ip_conntrack_netbios_ns

Konfigurace

Konfigurační soubor

/etc/sysconfig/iptables          - iptables rules
/etc/sysconfig/iptables-config   - iptables configuration

Příklad konfiguračního souboru

# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Wed Feb  3 12:54:50 2016
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [254737803:197953409382]
-A INPUT -p tcp -m tcp --dport 162 -j ACCEPT 
-A INPUT -p udp -m udp --dport 162 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 14545 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 14161 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 5634 -j ACCEPT 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 
COMMIT
# Completed on Wed Feb  3 12:54:50 2016

Příklad, jak nastavit NAT pomocí iptables

1. Odstraňte existující pravidla z každé tabulky iptables

# iptables -F
# iptables -t nat -F
# iptables -t mangle -F

2. Povolit NAT

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# iptables -A FORWARD -i eth1 -j ACCEPT

3. Uložit pravidla iptables

# service iptables save

Poznámka :Před nastavením NAT je nutné povolit přesměrování IP.

# echo 1 > /proc/sys/net/ipv4/ip_forward

Příklad, jak otevřít určený port pomocí iptables

1. Chcete-li povolit příchozí provoz na výchozím portu SSH (22), můžete sdělit iptables, aby povolili vstup veškerého provozu TCP na tomto portu

# iptables -A INPUT -p tcp --dport ssh -j ACCEPT

2. Chcete-li povolit veškerý příchozí webový provoz, můžete říci iptables, aby povolilo veškerému TCP provozu na daném portu vstup

# iptables -A INPUT -p tcp --dport 80 -j ACCEPT

3. Uložte pravidla iptables

# service iptables save


Linux
  1. Služba operačního systému Linux „nfs“

  2. Služba operačního systému Linux „microcode_ctl“

  3. Služba Linux OS „NetFS“

  1. Služba Linux OS „ldap“

  2. Služba OS Linux „yppasswdd“

  3. Linux OS Service ‚xendomény‘

  1. Služba Linux OS „nscd“

  2. Služba Linux OS „chobotnice“

  3. Služba OS Linux „chytrá“