GNU/Linux >> Linux Esercitazione >  >> Linux

Servizio del sistema operativo Linux "iptables"

Nome servizio

iptables

Descrizione

Gli iptables utility controlla il codice di filtraggio dei pacchetti di rete nel kernel Linux. Se è necessario configurare firewall e/o mascheramento IP, è necessario installare questo strumento. Il /sbin/iptables application è il programma della riga di comando dello spazio utente utilizzato per configurare le regole di filtraggio dei pacchetti IPv4 di Linux. Poiché anche Network Address Translation (NAT) è configurato dalle regole del filtro dei pacchetti, anche per questo viene utilizzato /sbin/iptables. Esiste uno strumento simile per le reti IPv6, noto anche come iptables-ipv6 .

La funzione iptables viene utilizzata per impostare, mantenere e ispezionare le tabelle delle regole del filtro dei pacchetti IP nel kernel Linux. Possono essere definite diverse tabelle. Ogni tabella contiene un numero di catene integrate e può anche contenere catene definite dall'utente.

Ogni catena è un elenco di regole che possono corrispondere a un insieme di pacchetti. Ogni regola specifica cosa fare con un pacchetto che corrisponde. Questo è chiamato obiettivo , che potrebbe essere un salto a una catena definita dall'utente nella stessa tabella.

Nome pacchetto RPM

iptables

Controllo del servizio

Avvia e interrompi esempi

# 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  ]

Utilizzo

# 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  ]

Demone

/sbin/iptables

Moduli

nfnetlink
ip_conntrack
ip_conntrack_netbios_ns

Configurazione

File di configurazione

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

Esempio di file di configurazione

# 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

Esempio di come configurare NAT con iptables

1. Elimina le regole esistenti da ogni tabella iptables

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

2. Abilita NAT

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

3. Salva le regole di iptables

# service iptables save

Nota :è necessario abilitare l'inoltro IP prima di configurare NAT.

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

Esempio di come aprire la porta specificata con iptables

1. Per consentire il traffico in entrata sulla porta SSH predefinita (22), puoi dire a iptables di consentire l'ingresso di tutto il traffico TCP su quella porta

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

2. Per consentire tutto il traffico web in entrata, puoi dire a iptables di consentire l'ingresso di tutto il traffico TCP su quella porta

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

3. Salva le regole di iptables

# service iptables save


Linux
  1. Servizio del sistema operativo Linux 'dhcpd'

  2. Servizio del sistema operativo Linux "anacron"

  3. Sistema operativo Linux Servizio "rete"

  4. Servizio del sistema operativo Linux "portmap"

  5. Servizio del sistema operativo Linux "auditd"

Servizio del sistema operativo Linux "NetFS"

Servizio del sistema operativo Linux 'ldap'

Servizio del sistema operativo Linux 'yppasswdd'

Servizio del sistema operativo Linux "xendomains"

Servizio del sistema operativo Linux 'nscd'

Servizio del sistema operativo Linux "calamaro"