GNU/Linux >> Linux Esercitazione >  >> Linux

Gestione di base del firewall iptables

Questo articolo fornisce alcune informazioni di base su come utilizzare iptables firewall software. Questo firewall è la soluzione firewall predefinita per le distribuzioni basate su Red Hat® Enterprise Linux® (RHEL®) 6 e CentOS® 6.

Nota :i passaggi in questo articolo non sono destinati all'uso su server RackConnect®. Se devi apportare modifiche al firewall su un server RackConnect, devi utilizzare il tuo Dedicated Firewall Manager.

Prerequisiti

Devi avere i seguenti prerequisiti:

  • Conoscenza di base di SecureShell® (SSH)
  • Accesso sudo o amministrativo al tuo server
  • Un server cloud non RackConnect che esegue RHEL 6 o CentOS 6.

Cos'è "iptables" e come funziona?

iptables è la soluzione firewall software Linux predefinita. Usando il modulo del kernel netfilter, iptables può gestire il traffico di rete in entrata e in uscita. iptables utilizza le catene di regole configurate come parte di una tabella sul server. Una tabella raggruppa catene simili che svolgono un'attività specifica.

Tabelle, catene e regole

Ogni tabella ha una serie di catene predefinite. Questo articolo fa riferimento al filtro tabella, che contiene INPUT , AVANTI e USCITA Catene. Le regole in queste catene vengono lette ed elaborate dall'alto verso il basso.

  • INGRESSO :questa catena gestisce il traffico in entrata destinato al server.

  • AVANTI :questa catena gestisce il traffico che arriva al server ma è destinato a un altro dispositivo.

  • USCITA :questa catena viene utilizzata per i pacchetti in uscita che hanno origine sul server.

Target, azioni e filtri

La tabella seguente mostra alcuni obiettivi e azioni di base in iptables quando il traffico viene inviato al server:

Nome Descrizione
ACCETTO Il traffico è accettato e non vengono elaborate ulteriori regole.
DROP Il pacchetto è bloccato e non vengono elaborate ulteriori regole. Nessuna risposta inviata al mittente.
LOG Le informazioni sul pacchetto vengono registrate sul server e iptables continua a elaborare le regole.
RIFIUTA Simile al pacchetto DROP, ma invia una risposta al mittente.
Filtro Cosa fa
-p (protocol) Il protocollo del pacchetto. Il protocollo specificato può essere uno di tcp , udp , icmp o la parola chiave speciale all .
-s, --source L'indirizzo IP di origine del pacchetto.
-d --destination La destinazione del pacchetto.
-sport La porta di origine da abbinare.
-dport La porta di destinazione da abbinare.
-i L'interfaccia ricevuta dal pacchetto.

L'anatomia di una regola

La seguente regola è un esempio di iptables regola:

   iptables -I INPUT -i eth0 -s 192.168.1.1 -p tcp --dport 22 -j ACCEPT

In questo esempio, il traffico proveniente dall'indirizzo IP di origine, 192.168.1.1 , sopra il tcp il protocollo è accettato su eth0 interfaccia alla porta di destinazione 22 . Questa regola viene aggiunta in cima a INPUT catena.

Come funzionano le regole "iptables"?

Un modo per limitare il traffico di rete in entrata e in uscita sul server consiste nell'implementare le regole del firewall. Su un server RHEL o CentOS 6, la soluzione firewall software predefinita è iptables . iptables ti consente di impostare una configurazione simile a quella di un firewall dedicato in esecuzione sul tuo server. Configura queste regole in una CHAIN a seconda della regola. Questo articolo discute l'INPUT chain, che è la catena predefinita per accettare il traffico tramite iptables .

Abilita e verifica lo stato di "iptables"

Prima di aggiungere nuove regole in iptables , dovresti verificare che il servizio sia in esecuzione ed elencare le regole correnti.

Per controllare lo stato di iptables , esegui il comando seguente:

  service iptables status

Dovresti ottenere un output che indica che il servizio è Active sul server. In caso contrario, puoi avviare il servizio con service iptables start comando.

Dopo l'avvio del servizio, puoi elencare le regole utilizzando il comando seguente:

   iptables -L

Se non hai ancora configurato alcuna regola, l'output è simile al seguente esempio:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

esempi di “iptables”

Gli esempi seguenti mostrano alcune regole in iptables e la loro funzionalità all'interno di iptables .

INSERT contro APPEND

Con iptables , il -I flag inserisce la regola in cima alla catena selezionata e il -A flag aggiunge la nuova regola in fondo alla catena selezionata. Questo è importante perché le regole vengono lette dall'alto verso il basso. Pertanto, se c'è una regola in alto che blocca tutto il traffico in entrata e usi -A per aggiungere una regola che accetta il traffico da un IP, la regola aggiunta viene bloccata dalla prima regola. Dovresti considerare la configurazione per determinare se -A o -I è l'opzione migliore per la modifica effettuata sul server. Rivedi sempre le regole attuali prima di apportare modifiche.

Una buona regola è aggiungere tutte le regole che finiscono con un drop e inserire tutte le regole che accettano un pacchetto.

Esempio di comando Cosa fa
iptables -L Questo comando elenca tutti gli iptables regole.
iptables -L --line-numbers Questo comando elenca tutti gli iptables regole e fornisce un numero di riga per ciascuna regola.
iptables -D INPUT 2 Se usato insieme a iptables -L --line-numbers , questo comando rimuove la seconda regola in INPUT catena. Questo è il metodo migliore per garantire la rimozione della regola corretta.
iptables -A INPUT -m tcp -p tcp -s 12.345.67.89 --dport=22 -j DROP Questa regola elimina il traffico sulla porta 22 dall'IP di origine attraverso la catena INPUT tramite TCP. Questa regola viene aggiunta in cima alla catena INPUT.
iptables -A INPUT -s 12.345.67.89 -j DROP Questa regola elimina tutte le connessioni in entrata dall'IP di origine. Questo esempio è aggiunto all'inizio di INPUT catena.
iptables -D INPUT -m tcp -p tcp -s 12.345.67.89 --dport=22 -j ACCEPT Questo comando cancella la regola specificata da INPUT tavolo. Puoi usare il -D contrassegna con qualsiasi catena o regola, ma ti consigliamo di rimuovere per numero di riga come mostrato sopra.
iptables -I INPUT -m tcp -p tcp -s 12.345.67.89 --dport=22 -j ACCEPT Questa regola accetta il traffico sulla porta 22 dall'IP di origine tramite INPUT catena tramite TCP. Questa regola è inserita in INPUT catena.
iptables -I INPUT -s 12.345.67.89 -j ACCEPT Questa regola accetta tutte le connessioni in entrata dall'IP di origine tramite qualsiasi protocollo su qualsiasi porta. Questa regola è inserita in INPUT catena.
service iptables save Per impostazione predefinita, iptables non fornisce persistenza. Questo comando ti permette di salvare le regole.
service iptables reload Questo comando ricarica il servizio iptables per consentire l'elaborazione di nuove regole.

Ulteriori letture

Questo articolo tratta solo le basi di iptables . Ci sono molte altre attività e regole che puoi configurare per limitare l'accesso al tuo server. Per ulteriori informazioni su iptables , puoi rivedere il man pagina per iptables su iptables - Pagina man di Linux.


Linux
  1. Server FTP di base di Ubuntu?

  2. Le 10 migliori soluzioni software di patch per server

  3. Consenti il ​​traffico web nel firewall del software iptables

  4. Gestione firewall di base con firewall

  5. Procedure consigliate per la sicurezza dei server Windows

Come configurare Iptables Firewall su CentOS

Procedura:Risoluzione dei problemi di base di IPtables

Procedura:Configurazione di base del file IPTables

I 5 migliori firewall Linux

Come configurare un firewall sul tuo server Linux

Debug di iptables e insidie ​​comuni del firewall?