Introduzione
Iptables è un programma di utilità per lo spazio utente che consente a un amministratore di sistema di configurare le tabelle fornite dal firewall del kernel Linux e le catene e le regole che memorizza. Iptables viene quasi sempre preinstallato su qualsiasi distribuzione Linux. Avere un firewall configurato correttamente è molto importante per la sicurezza generale del tuo server.
In questo articolo, ti condivideremo i passaggi per aprire le porte nel firewall Iptables nella distribuzione Ubuntu e Centos
Prerequisito
Accesso Sudo al server Ubuntu o Centos con Iptable installato.
Fase 1:elenca le regole Iptables correnti
Collegati al tuo server con accesso Sudo e per elencare le regole correnti che sono configurate per iptables, usa il comando sotto
sudo iptables -L
Possiamo vedere l'output come di seguito, che mostrerà tutte le regole attualmente configurate
root@e2e:~# iptables -L Chain INPUT (policy DROP) target prot opt source destination ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT all -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT icmp -- anywhere anywhere ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:http ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:https ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:1167 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:zabbix-agent Chain FORWARD (policy DROP) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination root@e2e:~#
Fase 2:backup di Iptables
Prima di procedere con l'aggiunta di regole in Iptable, dobbiamo eseguire un backup delle regole di Iptable, in caso di problemi con la configurazione di Iptables possiamo ripristinare le regole dal backup
Usa i comandi seguenti per salvare una regola Iptable
iptables-save > IPtablesbackup.txt
Fase 2:aggiungi/rimuovi una regola Iptable
Una volta che siamo a conoscenza delle regole attualmente configurate, possiamo aprire una porta in IPtables aggiungendo una regola usando il comando seguente.
sudo iptables -A INPUT -p tcp --dport xxxx -j ACCEPT
Nota:sostituisci xxxx con il numero di porta richiesto che desideri aprire
Ad esempio per aprire una porta MySQL 3306 ,Dobbiamo eseguire sotto il comando.
sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
Questo sostanzialmente dice a Iptable di accettare pubblicamente la connessione a Mysql.
Puoi visualizzare lo stesso con iptables -L come menzionato nel passaggio 1
root@:~# iptables -L Chain INPUT (policy DROP) target prot opt source destination ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT all -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT icmp -- anywhere anywhere ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:http ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:https ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:1167 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:zabbix-agent ACCEPT tcp -- anywhere anywhere tcp dpt:mysql Chain FORWARD (policy DROP) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination root@:~#
Se desideri rimuovere la regola che è stata aggiunta di recente, puoi utilizzare il comando seguente
sudo iptables -D INPUT -p tcp --dport xxxx -j ACCEPT
Se non desideri aprire la porta pubblicamente, puoi aprire la porta per un IP singolo.
Utilizzare il comando seguente per aprire la porta solo per IP singolo
sudo iptables -A INPUT -p tcp -s your_server_ip --dport xxxx -j ACCEPT
Nota:Sostituisci gentilmente your_server_ip con l'IP richiesto nel comando sopra e sostituisci xxxx con la porta richiesta
Fase 3:salva la regola Iptable
Una volta aggiunte le regole, dobbiamo salvare le regole e renderle permanenti. Se stai usando Ubuntu puoi usare iptables-persistent e per Centos puoi usare il comando iptables save
Su Ubuntu 14.04 usa i seguenti comandi per salvare/ricaricare le regole di iptables
sudo /etc/init.d/iptables-persistent save
sudo /etc/init.d/iptables-persistent reload
Su Ubuntu 16.04 e Ubuntu 18.04 usa i seguenti comandi
sudo netfilter-persistent save
sudo netfilter-persistent reload
Se stai usando centos, usa il comando Sotto
service iptables save
Passaggio 4:ripristino del backup di Iptables
In caso di problemi con la regola di configurazione di Iptables, puoi ripristinare le modifiche con il comando seguente e ripristinare il file di cui è stato eseguito il backup nel passaggio 2
iptables-restore < IPtablesbackup.txt
Conclusione
Seguire l'articolo sopra ti avrà aiutato ad aprire/chiudere le porte nel tuo sistema Linux, l'implementazione di un firewall adeguato iptables dovrebbe sempre essere considerata un'alta priorità per la tua configurazione in quanto consente agli amministratori di sistema di proteggere il tuo sistema e di consentire solo le porte richieste pubblicamente o limitandoli a un IP particolare