Question sur les ports à autoriser en sortie pour un serveur

Demande d'aide : c'est ici.
Répondre
Avatar de l’utilisateur
franb
Membre
Membre
Messages : 139
Inscription : 04 nov. 2017, 09:41
Status : Hors-ligne

PascalHambourg a écrit : 04 janv. 2018, 00:51
franb a écrit : Pour le mode actif, il faut juste autoriser le port 20 en sortie
Non.
géré par nf_conntrack_ftp ??
franb a écrit : le mode actif fait que le serveur initalise la connexion à partir du port 20 sur un port précisé par le client.
Oui.

Le module nf_conntrack_ftp seul ne suffit plus avec le noyaux récents : par défaut l'affectation automatique du helper ftp au port 21 est désactivée, il faut donc ajouter une règle iptables avec la cible CT pour l'affecter explicitement à une connexion de commande FTP.

Idem avec les helpers des autres protocoles "complexes" : PPTP, SIP, TFTP...
quelque chose du type

Code : Tout sélectionner

iptables -t ???  -A PREROUTING -p tcp --dport 21 -j CT --helper ftp
??

PREROUTING parce que ça doit être fait avant le traitement du paquet entrant, je mettrais ??? = raw par elimination, mes candidats suivants seraient nat puis mangle mais le nat me parait illogique et mangle est plutôt l'alteration des paquets. Mais la table raw semble pour la configuration...

Dans la doc, il semble dire que ce serait pour un autre port

Code : Tout sélectionner

 iptables -t raw  -A PREROUTING -p tcp --dport 1234 -j CT --helper ftp-1234
PascalHambourg
Contributeur
Contributeur
Messages : 930
Inscription : 05 août 2016, 20:25
Status : Hors-ligne

Désolé pour la réponse tardive, je n'avais pas vu ce message.
franb a écrit :
Pour le mode actif, il faut juste autoriser le port 20 en sortie
Non.
géré par nf_conntrack_ftp ??
Oui. Il faut autoriser l'état RELATED, éventuellement en conjonction avec la correspondance helper.
franb a écrit :e mettrais ??? = raw par elimination
Je mettrais la même chose, pas par élimination mais parce que c'est dans la page de manuel.
L'affectation doit être faite avant le passage par conntrack, qui a lieu après le passage dans la chaîne de la table raw et avant le passage dans les chaînes des autres tables.
franb a écrit : PREROUTING parce que ça doit être fait avant le traitement du paquet entrant
Cette phrase n'a pas de sens. Cette règle est déjà un traitement.
La table raw n'a que deux chaînes : PREROUTING pour les paquets reçus et OUTPUT pour les paquets émis. Le choix dépend donc de si on est sur un client ou un serveur.
franb a écrit : Dans la doc, il semble dire que ce serait pour un autre port
Quelle doc ? Qui dit ça ?
Répondre