Jump to content

Script iptable plus accès a la page d'admin


Recommended Posts

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?

Link to comment
Share on other sites

:transpi:

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.

Link to comment
Share on other sites

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???

Link to comment
Share on other sites

:zarb:

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 :craint: (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 :youhou: qui me fait craqué, j'ai passé l'âge :-)

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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 !!! :zarb:

Link to comment
Share on other sites

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é !!!

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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...

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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 ;-) )

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...