Iptable connexion bloquée serveur proftpd

Bonjour,

J’ai configurer le parefeu de mon serveur debian squeeze mais celui-ci me bloque la connexion au serveur proftpd et je suis constament obliger de désactiver iptable pour me connecter au ftp, cela fait maintenant deux semaine que je suis bloquer la dessu et je ne trouve pas la solution.

Je poste donc ici la configuration du parefeu en espérant que vous saurez me guider vers la solution.

[code]#!/bin/sh

iptables -t filter -F
iptables -t filter -X
echo “Règles réinitialisées”

iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
echo “Connection bloquées”

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
echo “Autorise les connections déja établie”

iptables -A INPUT -p tcp --dport 80 -m string --to 70 --algo bm --string ‘GET /w00tw00t’ -j DROP

iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
echo “Port serveur http ouvert”

iptables -t filter -A INPUT -p tcp --dport 6060 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 6060 -j ACCEPT
echo “Port serveur ssh ouvert”

iptables -t filter -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 21 -j ACCEPT
echo “Port serveur ftp ouvert”

iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT
echo “Port serveur smtp ouvert”

iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT
echo “Port serveur pop ouvert”

iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT
echo “Port serveur imap ouvert”

iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
echo “Port serveur dns ouvert”

iptables -t filter -A INPUT -p tcp --dport 27900 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27900 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27900 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27900 -j ACCEPT
echo “Port serveur Wolf:27900 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27960 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27960 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27960 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27960 -j ACCEPT
echo “Port serveur Wolf:27960 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27961 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27961 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27961 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27961 -j ACCEPT
echo “Port serveur Wolf:27961 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27965 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27965 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27965 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27965 -j ACCEPT
echo “Port serveur Wolf:27965 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27950 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27950 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27950 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27950 -j ACCEPT
echo “Port serveur Wolf:27950 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27018 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27018 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27018 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27018 -j ACCEPT
echo “Port serveur Wolf:27018 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27951 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27951 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27951 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27951 -j ACCEPT
echo “Port serveur Wolf:27951 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27952 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27952 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27952 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27952 -j ACCEPT
echo “Port serveur Wolf:27952 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27970 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27970 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27970 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27970 -j ACCEPT
echo “Port serveur Wolf:27970 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27980 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27980 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27980 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27980 -j ACCEPT
echo “Port serveur Wolf:27980 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27985 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27985 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27985 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27985 -j ACCEPT
echo “Port serveur Wolf:27985 ouvert”

iptables -t filter -A INPUT -p tcp --dport 27990 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 27990 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 27990 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 27990 -j ACCEPT
echo “Port serveur Wolf:27951 ouvert”

iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
echo “Horloge système ouverte”

iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
echo “Ping autorisé”

iptables -A FORWARD -p tcp --syn -m limit --limit 1/second -j ACCEPT

iptables -A FORWARD -p udp -m limit --limit 1/second -j ACCEPT
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT

iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/second -j ACCEPT

iptables -I INPUT -d 88.190.27.146 -p tcp --dport 80 -m string --to 70
–algo bm --string ‘GET /w00tw00t.at.ISC.SANS.’ -j DROP
echo “w00tw00t règle appliquée”

iptables -I INPUT -d 88.190.27.146 -p tcp --dport 80 -m string --to 700
–algo bm --string ‘Host: 88.190.27.146’ -j DROP

iptables -t filter -A INPUT -p udp --dport 9987 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 9987 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 10011 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 10011 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 30033 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 30033 -j ACCEPT
echo “Ports Teamspeak 3 ouvert”[/code]

Merci d’avance.

Que se passe-t-il exactement ?
Tu n’aurais pas oublié de charger le module de suivi de connexion FTP nf_conntrack_ftp ?

PS : A partir de “iptables -t filter -A INPUT -p icmp -j ACCEPT”, c’est n’importe quoi.

Bonsoir,

En effet, je n’avais pas charger le module. Merci de votrre réponse rapide qui ma beaucoup aidé.

iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT echo "Port serveur http ouvert"

Par ailleurs, pour chacun de tes services (HTTP, SSH, SMTP,…) tu n’as pas besoin d’ouvrir le flux dans les deux sens pour qu’il soit accessible depuis l’extérieur.

Si tu héberge un site web, la ligne suivante suffit :

iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT echo "Port serveur http ouvert"

Cette ligne autorise n’importe qui à contacter ton serveur sur le port TCP/80 (HTTP). La réponse du serveur sera implicitement autoriser puisque ton pare-feu est dit “statefull”.

Lorsque tu écris ceci :

iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT echo "Port serveur http ouvert"

Là, tu autorise tout le monde à accéder à ton serveur HTTP ET tu autorise ton serveur web à accéder à n’importe quelle IP sur le port TCP/80.

Cela n’est pas gênant dans le fonctionnement mais tu ne restreint pas au mieux les flux autorisés sur ton serveur.

Bonne continuation.

Je prend note de vos conseils. Merci beaucoup pour ces précieuse informations.