lambda Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 Bonjour, j'ai modifié mon script iptable. Je n'ai plus accès a ma page d'administration: http://192.168.1.1:8180 voici mon script #!/bin/sh # /etc/network/if-pre-up.d/iptables-start # Script qui démarre les règles de filtrage "iptables" # Formation Debian GNU/Linux par Alexis de Lattre # http://www.via.ecp.fr/~alexis/formation-linux/ # REMISE à ZERO des règles de filtrage iptables -F iptables -t nat -F # DEBUT des "politiques par défaut" # Je veux que les connexions entrantes soient bloquées par défaut iptables -P INPUT DROP # Je veux que les connexions destinées à être forwardées # soient acceptées par défaut iptables -P FORWARD ACCEPT # Je veux que les connexions sortantes soient acceptées par défaut iptables -P OUTPUT ACCEPT # FIN des "politiques par défaut" # DEBUT des règles de filtrage # Pas de filtrage sur l'interface de "loopback" iptables -A INPUT -i lo -j ACCEPT # J'accepte le protocole ICMP (i.e. le "ping") iptables -A INPUT -p icmp -j ACCEPT # J'accepte le protocole IGMP (pour le multicast) iptables -A INPUT -p igmp -j ACCEPT # J'accepte les packets entrants relatifs à des connexions déjà établies iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # Décommentez les deux lignes suivantes pour que le serveur FTP éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 20 -j ACCEPT #iptables -A INPUT -p tcp --dport 21 -j ACCEPT # Décommentez la ligne suivante pour que le serveur SSH éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 22 -j ACCEPT # Décommentez la ligne suivante pour que le serveur de mail éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 25 -j ACCEPT # Décommentez les deux lignes suivantes pour que le serveur de DNS éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 53 -j ACCEPT #iptables -A INPUT -p udp --dport 53 -j ACCEPT # Décommentez la ligne suivante pour que le serveur Web éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 80 -j ACCEPT # Décommentez la ligne suivante pour que le serveur CUPS éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 631 -j ACCEPT # Décommentez les deux lignes suivantes pour que le serveur Samba éventuel # soit joignable de l'extérieur #iptables -A INPUT -p tcp --dport 139 -j ACCEPT #iptables -A INPUT -p udp --dport 139 -j ACCEPT # Décommentez la ligne suivante pour que des clients puissent se connecter # à l'ordinateur par XDMCP) #iptables -A INPUT -p udp --dport 177 -j ACCEPT # Décommentez la ligne suivante pour que l'odinateur puisse se connecter # par XDMCP à une machine distante) #iptables -A INPUT -p tcp --dport 6001 -j ACCEPT # Décommentez la ligne suivante pour que le serveur CVS éventuel # soit joignable de l'extérieur via le mécanisme de "pserver" # (si les utilisateurs accèdent au serveur CVS exclusivement via SSH, # seule la ligne concernant le serveur SSH doit être décommentée) #iptables -A INPUT -p tcp --dport 2401 -j ACCEPT # Décommentez la ligne suivante pour pouvoir reçevoir des flux VideoLAN # (ce sont des flux UDP entrants sur le port 1234) #iptables -A INPUT -p udp --dport 1234 -j ACCEPT # Décommentez la ligne suivante pour pouvoir reçevoir des annonces SAP # (ce sont des annonces de session multicast) #iptables -A INPUT -p udp -d 224.2.127.254 --dport 9875 -j ACCEPT # Décommentez les 3 lignes suivantes pour pouvoir utiliser GnomeMeeting #iptables -A INPUT -p tcp --dport 30000:33000 -j ACCEPT #iptables -A INPUT -p tcp --dport 1720 -j ACCEPT #iptables -A INPUT -p udp --dport 5000:5006 -j ACCEPT # La règle par défaut pour la chaine INPUT devient "REJECT" # (il n'est pas possible de mettre REJECT comme politique par défaut) iptables -A INPUT -j REJECT # FIN des règles de filtrage # DEBUT des règles pour le partage de connexion (i.e. le NAT) # Décommentez la ligne suivante pour que le système fasse office de # "serveur NAT" et remplaçez "eth0" par le nom de l'interface connectée # à Internet #iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE # Si la connexion que vous partagez est une connexion ADSL, vous # serez probablement confronté au fameux problème du MTU. En résumé, # le problème vient du fait que le MTU de la liaison entre votre # fournisseur d'accès et le serveur NAT est un petit peu inférieur au # MTU de la liaison Ethernet qui relie le serveur NAT aux machines qui # sont derrière le NAT. Pour résoudre ce problème, décommentez la ligne # suivante et remplaçez "eth0" par le nom de l'interface connectée à # Internet. #iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS -o eth0 --clamp-mss-to-pmtu # FIN des règles pour le partage de connexion (i.e. le NAT) # DEBUT des règles de "port forwarding" # Décommentez la ligne suivante pour que les requêtes TCP reçues sur # le port 80 de l'interface eth0 soient forwardées à la machine dont # l'IP est 192.168.0.3 sur son port 80 (la réponse à la requête sera # forwardée au client) #iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.3:80 # FIN des règles de "port forwarding" Merci a tous Mon firewall est-il statefull avec ces commandes? Mon cript est-il valable? Lien vers le commentaire Partager sur d’autres sites More sharing options...
harmsik Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 Ton port 8081 n'est pas ouvert ! rajoute : iptables -A INPUT -p tcp --dport 8081 -j ACCEPT Lien vers le commentaire Partager sur d’autres sites More sharing options...
yoda222 Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 Strictement, juste pour répondre à la question, il suffit de rajoutter à la fin iptables -P INPUT ACCEPT si je me rappelle bien. Mais je ne crois pas que tu veuilles ça (pourtant, ça répond à ta question ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 J'ai du mal à comprendre ta réponse yoda222. Autant j'ai toujours trouvé tes réponses propres et niquelles, autant là, tu lui demande juste de désactiver son firewall, ce qui revient à dire que tout le petit script qu'il a copié ne sert plus à rien. La réponse de harmsik permet d'ouvrir le bon port en gardant une POLICY en DROP sur l'INPUT. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lambda Posté(e) le 12 juin 2006 Auteur Partager Posté(e) le 12 juin 2006 J'ai un gros problème... Mon serveur DHCP ne va pas, je n'ai pas le net, et je n'ai pas accès à la page. Même en modifiant la ligne en question... Comment autoriser tout le traffic sur le réseau local??? Lien vers le commentaire Partager sur d’autres sites More sharing options...
yoda222 Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 J'ai du mal à comprendre ta réponse yoda222. Autant j'ai toujours trouvé tes réponses propres et niquelles, autant là, tu lui demande juste de désactiver son firewall, ce qui revient à dire que tout le petit script qu'il a copié ne sert plus à rien. La réponse de harmsik permet d'ouvrir le bon port en gardant une POLICY en DROP sur l'INPUT. strictement c'est une bonne réponse ;-) (il aura accès à sa page d'admin...) Mais désolé je craques en ce moment (puis j'ai préciser que ce n'était pas ce qu'il voulait) désolé je ne le ferais plus PS : je précise, ce n'est pas le bac de philo qui me fait craqué, j'ai passé l'âge :-) Lien vers le commentaire Partager sur d’autres sites More sharing options...
yoda222 Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 J'ai un gros problème... Mon serveur DHCP ne va pas, je n'ai pas le net, et je n'ai pas accès à la page. Même en modifiant la ligne en question... Comment autoriser tout le traffic sur le réseau local??? Si mes souvenir d'iptables sont bons et que ton architecture est tjs la même que dans le sujet http://www.pcinpact.com/forum/index.php?sh...5entry1495675 alors tu doit pouvoir autoriser tout sur eth0 (c'est ça que tu veux, si j'ai bien compris) avec : iptables -A INPUT -i eth0 -j ACCEPT Lien vers le commentaire Partager sur d’autres sites More sharing options...
lambda Posté(e) le 12 juin 2006 Auteur Partager Posté(e) le 12 juin 2006 J'ai un gros problème... Mon serveur DHCP ne va pas, je n'ai pas le net, et je n'ai pas accès à la page. Même en modifiant la ligne en question... Comment autoriser tout le traffic sur le réseau local??? Si mes souvenir d'iptables sont bons et que ton architecture est tjs la même que dans le sujet http://www.pcinpact.com/forum/index.php?sh...5entry1495675 alors tu doit pouvoir autoriser tout sur eth0 (c'est ça que tu veux, si j'ai bien compris) avec : iptables -A INPUT -i eth0 -j ACCEPT sa foire j'ai déja testé! :-s Je pète un cable... C'est mon sujet de tfe, je le passe Vendredi, si quelqu'un peut vraiment m'aider. J'utilise coyote linux, si sa peut aider quelqu'un... LE BUT DE CE FIREWALL: STATEFULL bloque les connections non autorisées autorise tout le traffic dans le réseau local. Help !!! Lien vers le commentaire Partager sur d’autres sites More sharing options...
yoda222 Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 Et si tu remplace ta première règle (drop all : iptables -P INPUT DROP) par un drop uniquement de eth1 : iptables -P INPUT -i eth1 DROP ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
lambda Posté(e) le 12 juin 2006 Auteur Partager Posté(e) le 12 juin 2006 Et si tu remplace ta première règle (drop all : iptables -P INPUT DROP) par un drop uniquement de eth1 : iptables -P INPUT -i eth1 DROP ? Quelqu'un pourrait-il me refaire un script en sachant que interface web:eth1 interface lan:eth0 Merci, franchement si vous pouvez m'aider se serai super, parceque je suis vraiment très mal barré !!! Lien vers le commentaire Partager sur d’autres sites More sharing options...
harmsik Posté(e) le 12 juin 2006 Partager Posté(e) le 12 juin 2006 Je n'ai pas compris où était positionné ton serveur DHCP. Si il n'est pas sur ton firewall, le problème ne vient pas de ce dernier, puisque toutes tes machines sont dans un unique réseau (192.168.0.0/24). Sinon, il faut accepter le port 68/UDP depuis et vers les clients, et le port 67/UDP depuis et vers le firewall Lien vers le commentaire Partager sur d’autres sites More sharing options...
lambda Posté(e) le 13 juin 2006 Auteur Partager Posté(e) le 13 juin 2006 Je n'ai pas compris où était positionné ton serveur DHCP. Si il n'est pas sur ton firewall, le problème ne vient pas de ce dernier, puisque toutes tes machines sont dans un unique réseau (192.168.0.0/24). Sinon, il faut accepter le port 68/UDP depuis et vers les clients, et le port 67/UDP depuis et vers le firewall Il s'agit de coyote linux, le DHCP fais partie du firewall Lien vers le commentaire Partager sur d’autres sites More sharing options...
lambda Posté(e) le 13 juin 2006 Auteur Partager Posté(e) le 13 juin 2006 Bonjour a tous, J'ai retravaillé mon script, Mais j'ai un problème, mon serveur DHCP est bloqué, il se trouve sur la même machine (distribution coyote linux) Donc, je ne sais acceder au net que par ip statique. C'est etonnant car dans mon script, j'autorise tout le traffic sur le réseau local. J'ai fait un truc qui fallait pas??? Voici mon script: #Bloquer tout le traffic entrant iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP # Mode stateful iptables -A INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT # Pour accepter tout ce qui se passe sur l'interface lo (sinon ce n'est pas la peine d'activer le réseau !) : iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT #Autoriser tous ce qui se passe sur le réseau 192.168.1.0 iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT iptables -A OUTPUT -d 192.168.1.0/24 -j ACCEPT iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT # Pour accepter les résolutions de nom (ie: le dns) : iptables -A INPUT -i eth1 --protocol udp --source-port 53 -j ACCEPT iptables -A OUTPUT -o eth1 --protocol udp --destination-port 53 -j ACCEPT iptables -A INPUT -i eth1 --protocol tcp --source-port 53 -j ACCEPT iptables -A OUTPUT -o eth1 --protocol tcp --destination-port 53 -j ACCEPT # Pour accepter le traffic web: iptables -A INPUT -i eth1 --protocol tcp --source-port 80 -m state --state ESTABLISHED iptables -A OUTPUT -o eth1 --protocol tcp --destination-port 80 -m state --state NEW,ESTABLISHED # autoriser les requetes DHCP Merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
yoda222 Posté(e) le 13 juin 2006 Partager Posté(e) le 13 juin 2006 Je viens de penser à un truc, mais je ne sais pas comment ça se passe... Ton DHCP, avant de recevoir une ip, le client, il n'a pas d'IP... Donc à priori, il ne passe pas le filtre 192.168.1.0/24 ... Si ? C'est peut être par là qu'il faut chercher... Lien vers le commentaire Partager sur d’autres sites More sharing options...
harmsik Posté(e) le 13 juin 2006 Partager Posté(e) le 13 juin 2006 Juste remarque de yoda222. Pour le DHCP, essaye ca : iptables -A INPUT -i eth0 --protocol udp --source-port 68 --destination-port 67 -j ACCEPT iptables -A OUTPUT -o eth0 --protocol udp --source-port 67 --destination-port 68 -j ACCEPT ou, un peu moins restrictif mais ca n'ouvre pas de large faillle: iptables -A INPUT -i eth0 -p udp --dport 67:68 --sport 67:68 -j ACCEPT Lien vers le commentaire Partager sur d’autres sites More sharing options...
yoda222 Posté(e) le 13 juin 2006 Partager Posté(e) le 13 juin 2006 Juste remarque de yoda222. Pour le DHCP, essaye ca : iptables -A INPUT -i eth1 --protocol udp --source-port 68 --destination-port 67 -j ACCEPT iptables -A OUTPUT -o eth1 --protocol udp --source-port 67 --destination-port 68 -j ACCEPT ou, un peu moins restrictif mais ca n'ouvre pas de large faillle: iptables -A INPUT -i eth1 -p udp --dport 67:68 --sport 67:68 -j ACCEPT plutot eth0 que eth1 je pense (le local c'est eth0 ;-) ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
harmsik Posté(e) le 14 juin 2006 Partager Posté(e) le 14 juin 2006 oups, eth0 merci ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.