Les Forums

Les Forums

Les forums sont fermés. Ils restent présent pour consultation et archivage.
Vous pouvez désormais poser vos questions directement dans les commentaires en bas de chaque page du site.
Alors n'hésitez pas à participer

IPTABLES et routage

Bonjour a tous,

Je n'arrive pas a faire sortir mes machines identifiés via adresse mac.

Mon réseau :

un serveur debian, deux interfaces :
192.168.0.254/24
10.3.2.254/24

Un routeur :
192.168.0.254
10.3.2.254

Le réseau 192... est un réseau filaire
Le réseau 10.... est un reseau wifi

Le serveur debian contient :
SQUID
SAMBA
UN SGBD
APACHE

Le but :
Avoir un iptables sur le serveur qui laisse un acces a tout pour les machines identifiées via leur adresse mac.
Pour les autres, passer par un proxy pour l'acces net et filtrer les acces aux autres services.

Malheureusement ceci ne fonctionne pas. Les adresses mac sont bien reconnues, mais je ne sort pas vers le net.


#on libere tout :
iptables -F
iptables -X

#VARIABLES POUR LES REGLES
MAC_ADRESSE="00:12:F0:18:1A:E6 00:1A:73:86:AB:93 00:0F:B5:A6:7D:63"

# on ferme d'abord tout en entrée
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Nous faisons de même avec toutes les autres tables,
# à savoir "nat" et "mangle", mais en les faisant pointer
# par défaut sur ACCEPT. Ca ne pose pas de problèmes
# puisque tout est bloqué au niveau "filter"

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
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
iptables -t mangle -P POSTROUTING ACCEPT


#on accept les interfaces lo eth0 et eth1
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A OUTPUT -o eth1 -j ACCEPT

# on active le routage
echo 1 >/proc/sys/net/ipv4/ip_forward


#Translation d'adresse pour tout ce qui traverse la passerelle.
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.3.2.0/24 -o eth1 -j MASQUERADE

# Toutes les connexions qui sortent du LAN vers la passerelle
#ou du LAN vers le LAN
# sont acceptées
iptables -A FORWARD -i eth0 -o eth1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Seules les connexions déjà établies ou en relation avec
# des connexions établies sont acceptées venant de la passerelle vers le LAN
iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

#Se protéger des scan de port
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT

#Se protéger contre le ping flood
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

#Requete ICMP passent :
iptables -A INPUT -p icmp -m state --state RELATED -j ACCEPT

# Autorisation des requêtes DNS locales pour la mise a jour du serveur dns
iptables -A OUTPUT -o eth1 -p udp --sport 1024: --dport 53 -m state --state ! INVALID -j ACCEPT
iptables -A INPUT -i eth1 -p udp --sport 53 --dport 1024: -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth1 -p tcp --sport 1024: --dport 53 -m state --state ! INVALID -j ACCEPT
iptables -A INPUT -i eth1 -p tcp --sport 53 --dport 1024: -m state --state RELATED,ESTABLISHED -j ACCEPT


#ARRET DES REQUETE DE MSN ET LIVE MESSAGER
iptables -A FORWARD -p TCP --dport 1863 -j DROP
iptables -A FORWARD -o eth0 -d login.passport.net
iptables -A FORWARD -o eth0 -d loginnet.passport.com -j DROP
iptables -A FORWARD -o eth0 -d http://www.hotmail.com -j DROP


## TEST MACHINES QUI ECHAPPENT A LA REGLE PROXY:
# Traitement de la liste des adresses mac autorisée
for adr_mac in $MAC_ADRESSE ; do
iptables -t nat -A PREROUTING -i eth1 -m mac --mac-source $adr_mac -p tcp -m multiport --dport 80,110,25,20,21,443 -j ACCEPT
echo $adr_mac;
done

#Requete des routeurs WiFi :
iptables -t nat -A PREROUTING -i eth1 -s 10.3.2.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth1 -s 10.3.2.0/24 -p tcp --dport 443 -j REDIRECT --to-port 3128

#FireBird INFOLOG
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p TCP --dport 3050 -j ACCEPT

#samba
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p TCP --dport 137:139 -j ACCEPT
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p UDP --dport 137:139 -j ACCEPT
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p TCP --dport 445 -j ACCEPT
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p UDP --dport 445 -j ACCEPT

#squid
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p TCP --dport 3128 -j ACCEPT
iptables -A INPUT -m state --state ! INVALID -s 192.168.0.0/255.255.255.0 -p UDP --dport 3128 -j ACCEPT

#ssh
#iptables -A INPUT -m state --state NEW -p TCP --dport 22 -j ACCEPT

# 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 eth0 -j MASQUERADE
#iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source x.x.x.x


#Puis on rejette tout.
iptables -A INPUT -j DROP
[code:1:2aa986deb4]un serveur debian, deux interfaces :
192.168.0.254/24
10.3.2.254/24

Un routeur :
192.168.0.254
10.3.2.254 [/code:1:2aa986deb4]

tu as un doublon d'adresse IP 10.3.2.25 et un autre doublon 192.168.0.254

avant de mettre iptable, il faut être sûr que cela fonctionne sans

nono
Merci pour ta reponse :
javascript:emoticon(':oops:')Pardon, une erreur importante !

un serveur debian, deux interfaces :
192.168.0.254/24
10.3.2.254/24

Un routeur :
192.168.0.1
10.3.2.1

Oui cela fonctionne bien sans IPTABLES.
Je pensais a un probleme de route alors j'ai fait cela :

Serveur :
192.168.0.254
10.3.2.254
10.254.254.254 (en route par defaut)

Routeur :
192.168.0.1
10.254.254.1

😳 😳