Bonjour,
je viens vous donner des nouvelles, mon probleme n'est toujours pas resolu : pas de
net depuis le poste bureautique, pourtant je me suis bagaree ce we !
pour rafraichir les memoires :
modem(192.168.30.1)-----eth1(192.168.30.10)UBUNTU(192.168.0.1)eth0-----(192.168.0.10)BUR0TIC
j'ai mis une @IP statique sur BUR0TIC, je n'utilise donc pas le serveur DHCP de UBUNTU
le modem fait office de serveur DHCP pour UBUNTU.
voici ipconfig sur le poste BUR0TIC :
quelle @IP dois je mettre en Passerelle ?
Description . . . . . . . . . . . : SiS190 100/10 Ethernet Device
Adresse physique . . . . . . . . .: 00-13-D4-29-E9-0C
DHCP activé. . . . . . . . . . . : Non
Adresse IP. . . . . . . . . . . . : 192.168.0.10
Masque de sous-réseau . . . . . . : 255.255.255.0
Passerelle par défaut . . . . . . : 192.168.30.10 <------------------
le script iptables se lance tres bien :
iptables -v -L -n
Chain INPUT (policy ACCEPT 137 packets, 45744 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
28 2944 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- eth0 eth1 192.168.0.10 192.168.30.1 0 state RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT 33 packets, 4648 bytes)
pkts bytes target prot opt in out source destination
Voici mon script, j'ai fais des essais, je dois avoir des doublons. Je n'arrive toujours
pas a pinguer le modem depuis le poste bureautique.
Merci de votre aide :
#! /bin/sh
#
# Description: configuration de firewall netfilter/iptables
#
# Initialization de la table FILTER : assurer le filtrage des paquets
# 3 chaines : INPUT, FORWARD et OUTPUT
#
iptables -F # Flush : supprime toutes les chaines predefinies de la table Filter
iptables -X # eXclude : suppime toutes les chaines utilisateur
iptables -P INPUT ACCEPT #DROP # Policy : supprime par defaut toutes les trames dans la chaine INPUT
iptables -P OUTPUT ACCEPT #DROP # idem
iptables -P FORWARD ACCEPT #DROP # les 3 cmd = debranchement des cables
########################################################################################################
# Initialisation de la table NAT : Alors que dans la table FILTER, la chaine FORWARD permet de definir
# quels sont les paquets autores a etre NATe, la table NAT sera chargee de la moddification des paquets,
# afin qu'ils soient correctement utilisable sur l'interface de destination.
# 3 chaines: PREROUTING, POSTROUTING et OUTPUT
#
iptables -t nat -F # -t pour table, indique sur quelle table nous voulons travailler
iptables -t nat -X
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
#######################################################################################################
#
# Initialisation de la table MANGLE : modification des paquets en leur ajoutant ou supprimant certaines info
# 5 chaines: PREROUTING, INPUT, FORWARD, OUTPUT et POSTROUTING
#
iptables -t mangle -F
iptables -t mangle -X
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT
#####################################################################################################
ADD_IP_INTRANET="192.168.0.1"
ADD_IP_INTERNET="192.168.30.10"
ADD_IP_LOCAL="0.0.0.0/0"
ADD_IP_BUROTIK="192.168.0.10"
INTERFACE_INTRANET="eth0"
INTERFACE_INTERNET="eth1"
################################# interface lo ##########################################################
# -A pour Append : ajoute une regle a une chaine predefinie ou utilisateur
# -i pour input : critere sur l'interface reseau dont provient la paquet
# -s : @IP ou reseau : critere sur l'@ IP source du paquet
# -d : @IP ou reseau : critere sur l'@ IP de destination du paquet
# -j : jump cible : defini l'action si un paquet correspond aux criteres de cette regle.
# on accepte le paquet venant de l'interface locale ayant pr @ IP : 0.0.0.0 et pour destination cette meme
# @ IP. Utile pour des softs qui utilisent cette @ pour fonctionner.
#iptables -A INPUT -i lo -s $ADD_IP_LOCAL -d $ADD_IP_LOCAL -j ACCEPT
# idem de l'autre cote, les paquets ont le droit de sortir.
#iptables -A OUTPUT -o lo -s $ADD_IP_LOCAL -d $ADD_IP_LOCAL -j ACCEPT
#pas de filtrage sur l'interface loopback
iptables -A INPUT -i lo -j ACCEPT
################################## Autoriser le ping ####################################################
iptables -A INPUT -p icmp -j ACCEPT
################################## Autoriser le multicast ###############################################
#iptables -A INPUT -p igmp -j ACCEPT
################################## Autoriser des entrees sur les cnx etablies par Burotik ###############
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
################################## Autoriser le ssh #####################################################
iptables -A INPUT -p tcp --dport 22 -j accept
#on rejete toutes les autres entrees
#iptables -A INPUT -j REJECT
################################## table FILTER #########################################################
# chaine INPUT
# -m : demande d'utiliser un module state dans notre cas.
# ajout d'une regle : le paquet arrive (INPUT) par l'interface reseau eth0 et ce meme paquet qui est
# destine ADD_IP_ETH0 filtre les paquets de connexions deja etanblies via une handshake, la regle est d'accepter
# ses cnx
# ESTABLISHED signifie grossierement que la cnx analysee par le fw a ete vue dans l'autre sens precedement : jenvoie
# une requete sur google, le fw a vu passer la requete partant de chez moi pour aller chez google. Ce dernier m'envoie
# une reponse. Ici, le fw constatera que c'est moi qui ait commence cette cnx, il considera alors cette cnx comme
# ESTABLISHED. RELATED concerne de nouvelle cnx ms qui ont ete initialisee par une cnx deja existante et etablie.
##iptables -A INPUT -i $INTERFACE_INTRANET -d $ADD_IP_ETH0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# chaine FORWARD
# ajout d'une regle : transiter les paquets de eth0 a eth1 avec comme @IP source : 0.0.0.0 et comme @IP de
# destination l@IP de la machine bureautique connectee sur le LAN
iptables -A FORWARD -i $INTERFACE_INTRANET -o $INTERFACE_INTERNET -s $ADD_IP_BUROTIK -d $ADD_IP_INTERNET -m state --state RE$
# chaine OUTPUT
# ajout d"une chaine qui consiste a autoriser la sortie des paquets venant de eth0 qui ont un etat handsahke different de IN$
##iptables -A OUTPUT -o $INTERFACE_INTRANET -m state --state ! INVALID -j ACCEPT
# idem sur eth1
##iptables -A OUTPUT -o $INTERFACE_INTERNET -m state --state ! INVALID -j ACCEPT
#################################### table NAT ##########################################################
# autoriser la translation d'@ en fin de traitement sur le paquet provenant de eth0 avec comme @IP celle de ma machine burot$
# et dire qu'elle vient en fait de l'@IP intranet
##iptables -t nat -A POSTROUTING -o $INTERFACE_INTRANET -s $ADD_IP_BUROTIK -j SNAT --to-source $INTERFACE_INTRANET