GNU/Linux >> Linux Esercitazione >  >> Linux

CentOS / RHEL:come configurare le regole iptable per consentire le porte FTP 20/21

Gli iptables utility controlla il codice di filtraggio dei pacchetti di rete nel kernel Linux. 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.

Sul server FTP, per impostazione predefinita, le regole di iptables non sono impostate per consentire la porta 20/21 per la connessione FTP. Il tentativo di aprire una connessione FTP genera il seguente errore:

# ftp 192.168.10.10
ftp: connect: No route to host
ftp>

Consentire le porte FTP 20/21 in iptables

Accedi al server ftp e segui i passaggi indicati di seguito.

1. Modifica il file /etc/sysconfig/iptables-config e aggiungi "ip_conntrack_ftp “” modulo alla sezione “IPTABLES_MODULES= “. La voce dovrebbe essere simile a questa:

IPTABLES_MODULES="ip_conntrack_ftp"

2. Modifica il file /etc/sysconfig/iptables e assicurati che le regole di iptables siano aggiunte per la porta 20/21

# vi /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT                        ## rule related to FTP command (port 21)
-A INPUT -p tcp -m tcp --dport 20 -j ACCEPT                        ## rule related to FTP data (port 20)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
Nota: L'ordine delle regole di iptables è importante.

3. Riavvia il servizio iptables

# service iptables restart

4. Esegui il comando seguente per verificare se i moduli ftp sono caricati o meno.

# lsmod | grep -i ftp

Esempio di output:

# lsmod | grep -i ftp
nf_conntrack_ftp       12913  0
nf_conntrack           79357  3 nf_conntrack_ftp,nf_conntrack_ipv4,xt_state

5. Esegui il comando seguente per verificare se le regole di iptables relative alla porta ftp 20 e alla porta 21 sono abilitate o meno.

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ftp
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ftp-data
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

6. Verifica se riesci a trasmettere con successo l'ftp dal client al server ftp.


Linux
  1. CentOS / RHEL 7:come installare e configurare il server ftp (vsftpd)

  2. Come configurare Rsyslog remoto per accettare TLS e non TLS in CentOS/RHEL

  3. CentOS / RHEL 6:Come configurare kdump

  4. CentOS / RHEL 7:Come configurare kdump

  5. CentOS / RHEL 5:come configurare kdump

Come installare vsftpd su RHEL 8 / CentOS 8

Come configurare l'indirizzo IP in CentOS 7/RHEL 7 e CentOS 6/RHEL 6

Come installare e configurare GlusterFS su CentOS 7/CentOS 8

Come configurare IPtables per aprire le porte in CentOS/RHEL

CentOS / RHEL:come rendere le regole iptable persistenti durante i riavvii

Come configurare la funzionalità di supporto Early-kdump in CentOS/RHEL 8