configuration iptables derriere une freebox (résolu)

configuration iptables derriere une freebox (résolu) - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 02-02-2005 à 08:00:25    

je suis passé recement d'une connexion par modem sagem fast 908 en usb a une connexion freebox en rj45.
ma freebox est configuré en routeur avec l'ouverture des ports 22 et 443 vers l'ip 192.168.0.10 (mon serveur debian)
je ping bien l'adresse externe de ma freebox mais je n'arrive pas a me connecté sur mon serveur.
 
mon iptables actuel :
 
#!/bin/sh
 
# fichier de configuration IPtables
# cree depuis http://www.canonne.net
# (c) 2003 Antoine CANONNE
 
 
# Activation du forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
 
# Nous vidons toutes les chaines
iptables -F
 
# Nous supprimons les chaines non standards
iptables -X
 
# Par defaut tout est ferme
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
 
# reinitialisation table NAT
iptables -t nat -F
iptables -t nat -X
 
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
 
# Translation d'adresse pour tout ce qui sort vers l'internet
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
 
# La machine locale est sure
iptables -A INPUT  -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
 
# Resolution DNS pour les machines du LAN
iptables -A FORWARD -i eth0 -o eth0 --protocol udp --source-port 53 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth0 --protocol udp --destination-port 53 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth0 --protocol tcp --source-port 53 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth0 --protocol tcp --destination-port 53 -j ACCEPT  
 
# On permet toutes les connexions sur le LAN depuis le firewall
iptables -A INPUT -i  eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
# On permet toutes les connexions sur le firewall depuis le LAN
iptables -A INPUT -i  eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# On accepte toutes les liaisons firewall-Internet
iptables -A OUTPUT -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# On accepte les liaisons Internet-firewall deja etablies
iptables -A  INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# On accepte toutes les liaisons LAN-Internet
iptables -A FORWARD -i eth0 -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
# On accepte les liaisons Internet-LAN deja etablies
iptables -A FORWARD -i eth0 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
 
# Ouverture pour le serveur ssh
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -j ACCEPT
iptables -A INPUT  -i eth0 -p tcp --dport 22  -j ACCEPT
 
 
# Ouverture pour le serveur ssh
iptables -A OUTPUT -o eth0 -p tcp --sport 443 -j ACCEPT
iptables -A INPUT  -i eth0 -p tcp --dport 443 -j ACCEPT
 
# Ouverture pour le serveur web
iptables -A OUTPUT -o eth0 -p tcp --sport 80 -j ACCEPT
iptables -A INPUT  -i eth0 -p tcp --dport 80 -j ACCEPT
 
# Fin du fichier
 
qu'est ce qui merde docteur ??


Message édité par symbiosis le 04-02-2005 à 12:00:03
Reply

Marsh Posté le 02-02-2005 à 08:00:25   

Reply

Marsh Posté le 02-02-2005 à 09:04:25    

ben ton script est un peu foireux maintenant. Avant avec ton modem usb tu avais une interface ppp0 de monter, mais là avec la freebox tu es en dhcp. Ce qui implique donc que toutes tes machines récupères une adresse privé.
 
Dans ton script tu effectue un net qui n'a plus lieu d'être et tu exécutes des commandes très incongrues :  
iptables -A FORWARD -i eth0 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT  
 
Voila :hello:


Message édité par Klaimant le 02-02-2005 à 09:04:34

---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 02-02-2005 à 09:58:52    

merci pour ta reponce mais malheureusement pour l'instant les regles iptables sont bien obscures pour moi.
si je supprime les lignes :  
- On accepte toutes les liaisons LAN-Internet
- On accepte les liaisons Internet-LAN deja etablies  
ca peut fonctionné ?
 
sinon la freebox fait bien dhcp mais j'ai mis ma debian en ip fixe (192.168.0.10) ca ne pose pas de pb ?
 
est ce que quelqu'un qui utilise la meme configuration que moi pourrai me donné son iptables-save.


Message édité par symbiosis le 02-02-2005 à 10:00:12
Reply

Marsh Posté le 02-02-2005 à 10:05:18    

En fait le problème c'est que tu n'as qu'une interface réseau alors qu'avant tu en avais deux : ton interface réseau local (eth0) et une interface internet (ppp0).
 
Maintenant, c'est ta freebox qui a l'interface internet (ppp0) et tu n'as plus que la connexion locale et donc tes commandes iptables ne sont plus valables dans ton cas.
 
Tu vois ce que je veux dire ?


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 02-02-2005 à 10:12:46    

donc il n'y a qu'un iptables -F a faire ?
ou l'arret d'iptables ?


Message édité par symbiosis le 02-02-2005 à 10:13:32
Reply

Marsh Posté le 02-02-2005 à 10:15:21    

Enlève ton firewall il sert à rien.

Reply

Marsh Posté le 02-02-2005 à 10:15:42    

symbiosis a écrit :

ou l'arret d'iptables ?


Voila

Reply

Marsh Posté le 02-02-2005 à 12:10:53    

AirbaT a écrit :

Enlève ton firewall il sert à rien.


 :jap:


---------------
Bitcoin, Magical Thinking, and Political Ideology
Reply

Marsh Posté le 02-02-2005 à 20:19:40    

j'ai essayé mais sans iptables j'ai plus de connexion  :??:

Reply

Marsh Posté le 02-02-2005 à 20:49:42    

tu trouveras un exemple de script iptables pour freebox en ethernet sur une passerelle ADSL debian, tout expliqué :
 
http://ceyquem.free.fr/articles
 
bon courage

Reply

Marsh Posté le 02-02-2005 à 20:49:42   

Reply

Marsh Posté le 03-02-2005 à 12:31:36    

alors, je me suis inspiré du script iptables sur le site :
 
#!/bin/sh
# Script "iptables.sh"
# Fichier contenant les règles de filtrage "iptables"
# Debian GNU/Linux
         
 
# REMISE à ZERO des règles de filtrage
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
 
# DEBUT des règles de FIREWALLING
# DEBUT des politiques par défaut
# Je veux que les connexions entrantes soient bloquées par défaut
# Je veux que les connexions destinées à être forwardées soient acceptées par défaut
# Je veux que les connexions sortantes soient acceptées par défaut
# FIN des politiques par défaut
 
# J'accepte les packets entrants relatifs à des connexions déjà établies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur les ports 20 et 21
# (pour que mon serveur FTP soit joignable de l'extérieur)
# iptables -A INPUT -p tcp --dport 20 -j ACCEPT
# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur le port 22
# (pour que mon serveur SSH soit joignable de l'extérieur)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur le port 25
# (pour que mon serveur de mail soit joignable de l'extérieur)
# iptables -A INPUT -p tcp --dport 25 -j ACCEPT
 
# connexion au port 4662 et 2000 pour E-Mule
iptables -A INPUT -p tcp --dport 4662 -j ACCEPT
iptables -A INPUT -p tcp --dport 2000 -j ACCEPT
 
# connexion au port 2222 et 8888 pour httptunnel
iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
iptables -A INPUT -p tcp --dport 8888 -j ACCEPT
 
# J'autorise les connexions TCP et UDP entrantes sur le port 53
# (pour que mon serveur DNS soit joignable de l'extérieur)
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur le port 80
# (pour que mon serveur HTTP soit joignable de l'extérieur)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur le port 443
# (pour que mon serveur WEBMIN soit joignable de l'extérieur)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
 
# J'autorise les connexions TCP et UDP entrantes sur le port 139
# mais uniquement sur l'interface "eth1"
# (pour que mon serveur Samba soit joignable depuis mon LAN seulement)
iptables -A INPUT -p tcp --dport 139 -i eth0 -j ACCEPT
iptables -A INPUT -p udp --dport 139 -i eth0 -j ACCEPT
 
# J'autorise les connexions UDP entrantes sur le port 177
# (pour que des clients puissent se connecter à mon système par XDMCP)
# iptables -A INPUT -p udp --dport 177 -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur le port 6001
# (pour que je puisse me connecter par XDMCP à une machine distante)
# iptables -A INPUT -p tcp --dport 6001 -j ACCEPT
 
# J'autorise les connexions TCP entrantes sur le port 2401
# (pour permettre l'accès au CVS à des utilisateurs qui n'ont
# pas de compte sur le système via le "pserver" )
# iptables -A INPUT -p tcp --dport 2401 -j ACCEPT
 
# J'autorise les flux UDP entrants sur le port 1234
# (pour pourvoir reçevoir les flux VideoLAN)
# iptables -A INPUT -p udp --dport 1234 -j ACCEPT
 
# J'autorise les flux UDP envoyés sur l'adresse multicast 224.2.127.254
# et dont le port destination est 9875 (pour reçevoir les annonces SAP)
# iptables -A INPUT -p udp -d 224.2.127.254 --dport 9875 -j ACCEPT
 
# J'autorise les flux TCP et UDP entrants nécessaires au fonctionnement de 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
 
# 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
 
# Pas de filtrage sur l'interface de "loopback"
iptables -A INPUT -i lo -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 FIREWALLING  
 
 
mais lorsque je le lance j'ai les messages suivants :
 
> sh test_iptables.sh
test_iptables.sh: line 5:  
: command not found
test_iptables.sh: line 6:  
: command not found
iptables: No chain/target/match by that name
iptables: Table does not exist (do you need to insmod?)
iptables: No chain/target/match by that name
iptables: Table does not exist (do you need to insmod?)
iptables: Bad policy name
iptables: Bad policy name
iptables: Bad policy name
test_iptables.sh: line 15:  
: command not found
test_iptables.sh: line 22:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 25:  
: command not found
test_iptables.sh: line 30:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 34:  
: command not found
test_iptables.sh: line 38:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 42:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 46:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 51:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 55:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 59:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 65:  
: command not found
test_iptables.sh: line 69:  
: command not found
test_iptables.sh: line 73:  
: command not found
test_iptables.sh: line 78:  
: command not found
test_iptables.sh: line 82:  
: command not found
test_iptables.sh: line 86:  
: command not found
test_iptables.sh: line 91:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 94:  
: command not found
test_iptables.sh: line 97:  
: command not found
iptables v1.2.11: Invalid target name `ACCEPT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 100:  
: command not found
iptables v1.2.11: Invalid target name `REJECT
'
Try `iptables -h' or 'iptables --help' for more information.
test_iptables.sh: line 104:  
: command not found
 

Reply

Marsh Posté le 03-02-2005 à 12:48:09    

si tu les lance pas en root, faut ajouter /sbin à ton PATH

Reply

Marsh Posté le 03-02-2005 à 14:29:13    

T'as essayé avec juste iptables -F et iptables -X ? Si ça se trouve t'avais des règles gardées en mémoire.

Reply

Marsh Posté le 04-02-2005 à 07:46:02    

arghbis a écrit :

si tu les lance pas en root, faut ajouter /sbin à ton PATH


 
j'ete bien en root pourtant
 

Goon a écrit :

T'as essayé avec juste iptables -F et iptables -X ? Si ça se trouve t'avais des règles gardées en mémoire.


 
j'ai reessaye et rien de mieux

Reply

Marsh Posté le 04-02-2005 à 08:36:59    

Problèmes de path.
 
Fais : echo $PATH et tu nous copies la réponse ;)


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 04-02-2005 à 09:42:27    

avec un ancien script iptables j'ai recuperer ma connexion webmin donc je peut faire des verifs dans la journée  :)  
 
mon echo £PATH :
 
> echo $PATH
/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin


Message édité par symbiosis le 04-02-2005 à 09:42:48
Reply

Marsh Posté le 04-02-2005 à 09:50:05    

Le path est bon pourtant.
 
iptables --help ca te donne quoi ?


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 04-02-2005 à 09:57:23    

> iptables --help
iptables v1.2.11
 
Usage: iptables -[AD] chain rule-specification [options]
       iptables -[RI] chain rulenum rule-specification [options]
       iptables -D chain rulenum [options]
       iptables -[LFZ] [chain] [options]
       iptables -[NX] chain
       iptables -E old-chain-name new-chain-name
       iptables -P chain target [options]
       iptables -h (print this help information)
 
Commands:
Either long or short options are allowed.
  --append  -A chain  Append to chain
  --delete  -D chain  Delete matching rule from chain
  --delete  -D chain rulenum
    Delete rule rulenum (1 = first) from chain
  --insert  -I chain [rulenum]
    Insert in chain as rulenum (default 1=first)
  --replace -R chain rulenum
    Replace rule rulenum (1 = first) in chain
  --list    -L [chain]  List the rules in a chain or all chains
  --flush   -F [chain]  Delete all rules in  chain or all chains
  --zero    -Z [chain]  Zero counters in chain or all chains
  --new     -N chain  Create a new user-defined chain
  --delete-chain
            -X [chain]  Delete a user-defined chain
  --policy  -P chain target
    Change policy on chain to target
  --rename-chain
            -E old-chain new-chain
    Change chain name, (moving any references)
Options:
  --proto -p [!] proto protocol: by number or name, eg. `tcp'
  --source -s [!] address[/mask]
    source specification
  --destination -d [!] address[/mask]
    destination specification
  --in-interface -i [!] input name[+]
    network interface name ([+] for wildcard)
  --jump -j target
    target for rule (may load target extension)
  --match -m match
    extended match (may load extension)
  --numeric -n  numeric output of addresses and ports
  --out-interface -o [!] output name[+]
    network interface name ([+] for wildcard)
  --table -t table table to manipulate (default: `filter')
  --verbose -v  verbose mode
  --line-numbers  print line numbers when listing
  --exact -x  expand numbers (display exact values)
[!] --fragment -f  match second or further fragments only
  --modprobe=<command>  try to insert modules using this command
  --set-counters PKTS BYTES set the counter during insert/append
[!] --version -V  print package version.
 

Reply

Marsh Posté le 04-02-2005 à 09:59:08    

Donc iptables fonctionne
 
Tu l'as édité avec quoi ton script ??


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 04-02-2005 à 10:14:04    

heuu.... notepad  :ange:  
j'ai créé le fichier sous notepad et envoyé sur le poste via webmin.

Reply

Marsh Posté le 04-02-2005 à 10:20:44    

symbiosis a écrit :

heuu.... notepad  :ange:  
j'ai créé le fichier sous notepad et envoyé sur le poste via webmin.


C'est bon cherche pas plus loin.
Ouvre le sur le poste Linux tu vas rire  :lol:

Reply

Marsh Posté le 04-02-2005 à 10:26:56    

Voila ou je voulais en venir :)


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 04-02-2005 à 11:05:01    

j'ai recréé le script iptables sous le gestionnaire de fichier de webmin.
et je l'ai lancé, c'est bon signe puisque j'ai tj la connexion a webmin

Reply

Marsh Posté le 04-02-2005 à 11:06:25    

:)


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le 04-02-2005 à 11:35:56    

le webmin et l'apache fonctionne correctement mais je n'ai pas de connexion ssh via httptunnel.
 
mon iptables actuel :
 
> iptables-save
# Generated by iptables-save v1.2.11 on Fri Feb  4 11:19:39 2005
*nat
:PREROUTING ACCEPT [1147:61454]
:POSTROUTING ACCEPT [7423:386382]
:OUTPUT ACCEPT [0:0]
COMMIT
# Completed on Fri Feb  4 11:19:39 2005
# Generated by iptables-save v1.2.11 on Fri Feb  4 11:19:39 2005
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [20673:11393599]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 4662 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 2000 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 8888 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT  
-A INPUT -p udp -m udp --dport 53 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT  
-A INPUT -i eth0 -p tcp -m tcp --dport 139 -j ACCEPT  
-A INPUT -i eth0 -p udp -m udp --dport 139 -j ACCEPT  
-A INPUT -p icmp -j ACCEPT  
-A INPUT -i lo -j ACCEPT  
-A INPUT -j REJECT --reject-with icmp-port-unreachable  
COMMIT
# Completed on Fri Feb  4 11:19:39 2005
 
 
connexion httptunnel :
 
% htc -F 2222 -P proxy.exemple.org:80 nom_DNS_du_serveur:8888
% ssh -p 2222 login@localhost
 
 
je sais je suis chiant j'ai tj un truc qui va pas, mais ce qui est bizar c'est qu'avant d'avoir installé ma freebox tout fonctionné correctement


Message édité par symbiosis le 04-02-2005 à 11:41:06
Reply

Marsh Posté le 04-02-2005 à 11:53:22    

j'ai trouvé !!
j'ai ouvert le port 2222 et 8888 sur la freebox
maintenant tout va bien dans le meilleur des mondes
 
merci Klaimant, AirbaT, farib, arghbis, Goon pour vos reponces

Reply

Marsh Posté le 04-02-2005 à 11:55:55    

de rien


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed