Saluts,
Si tu y parvient … j’en serai très intéressé lol
Saluts,
Si tu y parvient … j’en serai très intéressé lol
Etonnant. Quelles sont les différences ?[/quote]
Je ne me souviens que de ça, sur la table nat:Can't set policy `INPUT' on `ACCEPT'
Je n’ai pas trop cherché, j’ai fait un nettoyage et recommencé.
[quote=“loreleil”]Si tu y parvient … j’en serai très intéressé lol [/quote]Pas sur que je me casse la tête avec ça, mais si je le fais, oui, je te préviens.
Ce message est un peu normal : il n’y a pas de chaîne INPUT dans la table nat. Mais ça devrait être pareil avec les deux versions de noyau.
Salut,
Ce message est un peu normal : il n’y a pas de chaîne INPUT dans la table nat. Mais ça devrait être pareil avec les deux versions de noyau.[/quote]
Après recherche, oui, c’est normal… Et j’ai la même erreur avec les autres noyaux.
Je n’avais pas redémarré le serveur depuis 45 jours. J’ai du faire une mauvaise manip, et comme je n’avais pas eu besoin de recharger mes règles je ne m’en étais pas aperçu.
Merci.
Désolé d’avoir été absent si longtemps, j’ai dû partir chez mes grand parents en Italie, et puis après il y avait noël, le nouvel an et toussa… vraiment désolé
Bon je vois que la discussion s’est légèrement détournée, alors je ne voudrait pas jouer les troubles fêtes mais je viens apporter de nouvelles informations en ce qui concerne mon serveur ftp, tout d’abord, j’ai essayer de mettre en passif (avant je ne voulait pas car ça n’avait pas grande utilité puisque ce n’est qu’un petit serveur personnel. mais si ça pouvait refaire fonctionner le serveur…) et là il s’est passé une chose incroyable ! ça ne marchait pas… et puis je me suis rapellé que si le passif utilisait d’autres port, iptables ne les autorisait pas ! du coup j’ai stoppé les daemon snort, spamassasin, snort, portsentry et j’ai refais les règles ipatbels en acceptant tt
et ça fonctionne !
alors j’ai un à un, tout réactiver pour voir la source du problème, j’en suis à un point où tt les firewall sont réactivé, et que je suis même en actif et ça fonctionne toujours… c’est très étrange… je cherche encore, en attendant continuez ce que vous faisiez faites pas attention à moi
ah bah nan, tt viens d’iptables, pourtant le port 21 est ouvert… que je sache en actif on a besoin que diu port 20+21…
c’est toujours un problème car si je dois accepter toutes les connexions entrantes mon firewall ne sert plus à grand chose…
Saluts,
Posté: 27 Déc 2011 07:10
D’abord, désolé pour le “détournement” du sujet.
Mais comme G.Alex-713 ne semble plus s’y intéresser, j’ai moins de scrupules…
(…)[/quote]
[quote=“G.Alex-713”]Désolé d’avoir été absent si longtemps, (…)
en attendant continuez ce que vous faisiez faites pas attention à moi[/quote]
Comme je l’ai écrit dans ma première réponse, les deux ports ne sont pas utilisés de la même façon, donc les règles iptables à mettre en place ne sont pas forcément identiques, selon le fonctionnement général du jeu de règles.
N’ayant fourni aucun détail concret, tu es le seul à pouvoir chercher…
Bon courage.
[code]root@server-713:~# cat /etc/init.d/firewall
#!/bin/bash
#On réinitialise les regles
iptables -t filter -F
iptables -t filter -X
#On bloque tout port non-autorisés
iptables -t filter -P INPUT ACCEPT
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
#on laisse ouvert les connexions déjà établies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#On laisse ouvert l’interfaces loopback (localhost)
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
#Pour le serveur Web:
#On laisse ouvert le port 80 pour apache2
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
#On laisse également ouvert le port 443 pour le https (http-over-ssl) l’échange de pages web sécurisé
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
#On laisse ouvert le port 22 pour les connexions ssh
iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
#Pour le serveur FTP:
#on ouvre le port 20 pour le transfert de fichiers
iptables -t filter -A OUTPUT -p tcp --dport ftp-data -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport ftp-data -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 20 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 20 -j ACCEPT
#on ouvre les ports pour le transfert de fichiers en mode passif
iptables -t filter -A OUTPUT -p tcp --dport 49152:65534 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 49152:65534 -j ACCEPT
#le port 21 pour l’identification ftp
iptables -t filter -A OUTPUT -p tcp --dport ftp -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport ftp -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 21 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 21 -j ACCEPT
#le port 990 pour le FTPS avec SSL
iptables -t filter -A OUTPUT -p tcp --dport 990 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 990 -j ACCEPT
#Pour les MAILS
#on laisse ouvert le port 25 pour le protocole smtp et pour pouvoir ainsi envoyer des mails
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
#on laisse ouvert le port 110 pour le protocole pop3 permettant ainsi de recevoir des mails
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
#On ouvre aussi le port 995 pour le protocole pop3 avec ssl
iptables -t filter -A OUTPUT -p tcp --dport 995 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 995 -j ACCEPT
#On ouvre le port 587, pour smtp en ssl
iptables -t filter -A OUTPUT -p tcp --dport 587 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 587 -j ACCEPT
#Pour le port DNS on ouvre le port 53 udp et tcp
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
#On ouvre le port 6667 pour le serveur ircd
iptables -t filter -A OUTPUT -p tcp --dport 6667 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 6667 -j ACCEPT
#Et le port 7000 pour les services anope
iptables -t filter -A OUTPUT -p tcp --dport 7000 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 7000 -j ACCEPT
#le 6666 pour les bots
iptables -t filter -A OUTPUT -p tcp --dport 6666 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 6666 -j ACCEPT
#le port 843 pour le policy port du irc flash
iptables -t filter -A OUTPUT -p tcp --dport 843 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 843 -j ACCEPT
#et le port 8002 pour une erreur
iptables -t filter -A OUTPUT -p tcp --dport 8002 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 8002 -j ACCEPT
#On laisse ouvert aussi le port 6697 pour irc avec ssl
iptables -t filter -A OUTPUT -p tcp --dport 6697 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 6697 -j ACCEPT
#Pour pouvoir faire des ping, on autorise les pings
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
#On fait en sorte d’éviter les ataques par denis de service (DDoS)
iptables -A FORWARD -p tcp --syn -m limit --limit 1/second -j ACCEPT
#aussi pour les protocoles udp et icmp
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
#On essaie de bloquer le scan de ports
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
[/code]
voilà mon firewall, je ne suis pas un expert d’iptables, mais j’espère que vous saurez m’aider
A mon avis il y a un paquet de règles en trop (et la politique par défaut d’INPUT à ACCEPT, pas génial), mais ce n’est pas le sujet.
Apparemment tu n’as pas tenu compte de ma première réponse concernant le port 20 : il s’agit d’un port source pour des connexions sortantes, donc pour l’autoriser :
Le module nf_conntrack_ftp est-il bien chargé ?
Il faudrait aussi des informations sur la connexion FTP côté client, avec le log détaillé des commandes FTP idéalement (mode bavard).
ta regle iptables fonctionne !!!
PS: si c’était en ACCEPT, pour inpût, c’était pr faire marcher mon serveur ftp en attendant
Bien, mais si tu n’utilises pas de chiffrement, cette règle ne devrait pas être nécessaire quand le module nf_conntrack_ftp est chargé. Tu n’as toujours pas dit s’il l’est ou pas.
Si la règle manquante était dans OUTPUT, ça ne devait pas être très efficace…
si si, c’était efficace, le problème devait être dans l’input
sinon apparemment ta règle ne marche plus (ça marche pour un seul rafraîchissement et puis ça rebloque) mais si je met en passif en autorisant normalement la plage de ports passifs ça fonctionne
Ce n’est pas très logique…
Si le problème était en INPUT, alors ma règle n’aurait aucun effet. Et si elle a un effet, il devrait être permanent, pas juste une fois. Tu utilises bien le port 21 en clair et non 990 en chiffré ?
ouioui, bien le port 21 non chiffré (toujours pas réussi à activer le SFTP/FTPS) mais ta règle est effectivement apparemment in-effective.
Pour du FTP non chiffré sur le port 21 avec le module nf_conntrack_ftp chargé, les règles acceptant les paquets dans l’état ESTABLISHED,RELATED en INPUT et OUTPUT et le port destination TCP 21 en INPUT devraient être suffisantes, en mode passif et actif.
comment charge-t-on le module nf_conntrack_ftp ? est ce qu’il faut ajouter un ? parce que tout les modules sont des fichiers objets (.so) qui commencent par un m_ comme module
Pour charger un module du noyau en ligne de commande ou dans un script :
On peut aussi le charger automatiquement au démarrage en ajoutant son nom dans le fichier /etc/modules.
un module du noyau ! ah ok ! j’avais cru un module de proftpd… j’essaye ça tout de suite
Edit: en activant ce module, en actif ça marche aussi, d’ailleurs
et au fait il fait quoi très exactement ce module ?
Le module nf_conntrack_ftp examine le contenu des connexions de commande (qui doivent être en clair, donc pas de chiffrement) sur les ports spécifiés par l’option “ports” (port 21 par défaut). Il recherche notamment les commandes de type PORT ou EPRT pour le mode actif ou les réponses aux commandes de type PASV ou EPSV pour le mode passif, qui contiennent le numéro de port choisi pour la connexion de données. Ensuite il peut créer une “expectation” qui a pour but de classer le premier paquet de la connexion de données dans l’état RELATED au lieu de NEW.
En bref cela permet l’ouverture de port dynamique pour les connexions de données FTP en acceptant les paquets dans l’état RELATED.
En conjonction avec le module nf_nat_ftp, cela permet aussi de faire la redirection de port dynamique pour une machine fonctionnant en routeur NAT.