GNU/Linux >> Tutoriels Linux >  >> Linux

CentOS / RHEL :Comment configurer les règles iptable pour autoriser les ports FTP 20/21

Les iptables L'utilitaire contrôle le code de filtrage de paquets réseau dans le noyau Linux. La fonctionnalité iptables est utilisée pour configurer, maintenir et inspecter les tables de règles de filtrage de paquets IP dans le noyau Linux. Plusieurs tables différentes peuvent être définies. Chaque table contient un certain nombre de chaînes intégrées et peut également contenir des chaînes définies par l'utilisateur.

Sur le serveur FTP, les règles iptables par défaut ne sont pas définies pour autoriser le port 20/21 pour la connexion FTP. Essayer d'ouvrir une connexion ftp entraîne l'erreur suivante :

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

Autoriser les ports FTP 20/21 dans iptables

Connectez-vous au serveur ftp et suivez les étapes ci-dessous.

1. Éditez le fichier /etc/sysconfig/iptables-config et ajoutez "ip_conntrack_ftp "" module à la section "IPTABLES_MODULES= “. L'entrée devrait ressembler à ceci :

IPTABLES_MODULES="ip_conntrack_ftp"

2. Modifiez le fichier /etc/sysconfig/iptables et assurez-vous que les règles iptables sont ajoutées pour le port 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
Remarque : L'ordre des règles iptables est important.

3. Redémarrez le service iptables

# service iptables restart

4. Exécutez la commande ci-dessous pour vérifier si les modules ftp sont chargés ou non.

# lsmod | grep -i ftp

Exemple de sortie :

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

5. Exécutez la commande ci-dessous pour vérifier si les règles iptables liées au port ftp 20 et au port 21 sont activées ou non.

# 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. Vérifiez si vous pouvez réussir le ftp du client au serveur ftp.


Linux
  1. CentOS / RHEL 7 :Comment installer et configurer le serveur ftp (vsftpd)

  2. Comment configurer Remote Rsyslog pour accepter TLS et non-TLS dans CentOS/RHEL

  3. CentOS / RHEL 6 :Comment configurer kdump

  4. CentOS / RHEL 7 :Comment configurer kdump

  5. CentOS / RHEL 5 :Comment configurer kdump

Comment installer vsftpd sur RHEL 8 / CentOS 8

Comment configurer l'adresse IP dans CentOS 7 / RHEL 7 et CentOS 6 / RHEL 6

Comment installer et configurer GlusterFS sur CentOS 7/CentOS 8

CentOS / RHEL :Comment faire persister les règles iptable à travers les redémarrages

CentOS / RHEL :Comment ajouter des règles iptable

Comment configurer la fonctionnalité de prise en charge de Early-kdump dans CentOS/RHEL 8