probleme de nat avec iptables (impossible de faire

Forum sur la sécurité des réseaux, la configuration des firewalls, la mise en place de protections contre les attaques, de DMZ, de systèmes anti-intrusion ...

Modérateur: modos Ixus

Messagepar Maeda » 29 Août 2003 22:34

Impossible de faire du nat avec iptables. <BR>J'essaye depuit mon pc qui dispose de ma connexion internet de rediriger tout ce qui est a destination du port 80, sur une autre machine disposant du serveur web. <BR> <BR>Quand je log m paquet refuser je retrouve les adresse ip des ordinateurs qui essayent atteindre mon serveur web . <BR>Je montre mon script en entier tout les commentaires pour ameliorer ou si je me suis carement planter sur certaine regles sont les biens venues. <BR>Merci d avance de votre aident. <BR> <BR> <BR>Voici le script que j'ai f : <BR>#!/bin/sh <BR> <BR>## on charge les modules pour les translation adresse irc et ftp <BR>/sbin/modprobe ip_tables <BR>/sbin/modprobe iptable_nat <BR>/sbin/modprobe ip_nat_irc <BR>/sbin/modprobe iptable_filter <BR>/sbin/modprobe ip_conntrack_ftp <BR>/sbin/modprobe ip_conntrack_irc <BR>/sbin/modprobe ip_conntrack <BR>/sbin/modprobe ip_nat_ftp <BR> <BR>## on interdit tout ce qui passe <BR>iptables -P INPUT DROP && echo OK input drop || echo NOP input drop <BR>iptables -P OUTPUT DROP && echo OK output drop || echo NOP output drop <BR>iptables -P FORWARD DROP && echo OK forward drop || echo NOP forward drop <BR>iptables -t nat -P PREROUTING ACCEPT && echo OK PREROUTING ACCEPT || echo NOP PREROUTING ACCEPT <BR>iptables -t nat -P POSTROUTING ACCEPT && echo OK POSTROUTING ACCEPT || echo NOP POSTROUTING ACCEPT <BR>iptables -t nat -P OUTPUT ACCEPT && echo OK OUTPUT NAT || echo NOP OUTPUT NAT <BR>iptables -t mangle -P PREROUTING ACCEPT && echo OK mangle_nat_pre || echo NOP mangle_nat_pre <BR>iptables -t mangle -P POSTROUTING ACCEPT && echo OK mangle_nat_post || echo NOP mangle_nat_post <BR>iptables -t mangle -P INPUT ACCEPT && echo OK mangle_in || echo NOP mangle_in <BR>iptables -t mangle -P FORWARD ACCEPT && echo OK mangle_forward || echo NOP mangle_forward <BR> <BR>## on autorise ce qui passe par le loopback <BR>iptables -A INPUT -i lo -j ACCEPT && echo OK loopback input || echo NOP loopback input <BR>iptables -A OUTPUT -o lo -j ACCEPT && echo OK loopback output || echo NOP loopback output <BR>iptables -A INPUT -i eth0 -j ACCEPT && echo OK eth0_in || echo NOP eth0_in <BR>iptables -A OUTPUT -o eth0 -j ACCEPT && echo OK eth0_out || echo NOP eth0_out <BR> <BR>##autoris les connexion du lan vers le net <BR>iptables -A FORWARD -i eth0 -o ppp0 -j ACCEPT && echo OK forward eth0-->ppp0 || echo NOP eth0-->ppp0 <BR>iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT && echo OK forward ppp0-->eth0 || echo NOP ppp0-->eth0 <BR>iptables -A FORWARD -i ppp0 -o eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT && echo ok || echo nop <BR>iptables -A FORWARD -i ppp0 -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT && echo ok || echo NOP <BR> <BR>## on active le partage de connexion <BR>echo "1" >/proc/sys/net/ipv4/ip_forward <BR>echo -e Mise en place du partage de la connexion internet <BR>iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE && echo OK partage || echo NOP partage <BR> <BR>###################################################### <BR>###################################################### <BR>#### NAT que je n arrive pas a faire sur le port 80 de ma machine 192.168.0.250 <BR>##redirige le serveur web <BR>iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 80 -j DNAT --to-destination 192.168.0.250:80 <BR> <BR>#################################################### <BR> <BR>## on contre le spoofing <BR>if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ] <BR> then <BR> for filtre in /proc/sys/net/ipv4/conf/*/rp_filter <BR> do <BR> echo 1 > $filtre <BR> done <BR>fi <BR>##pas de synflood <BR>if [ -e /proc/sys/net/ipv4/tcp_syncookies ] ; then <BR> echo 1 /proc/sys/net/ipv4/tcp_syncookies <BR>fi <BR>## autorise le ping <BR>iptables -A INPUT -p icmp -j ACCEPT <BR>iptables -A OUTPUT -p icmp -j ACCEPT <BR> <BR>## on accepte le DNS <BR>iptables -A INPUT -p udp --sport domain -j ACCEPT && echo "OK dns tcp in" || echo "NOP dns tcp in" <BR>iptables -A OUTPUT -p udp --dport domain -j ACCEPT && echo "OK dns tcp out" || echo "NOP dns tcp out" <BR>iptables -A INPUT -p tcp --sport domain -j ACCEPT && echo "OK dns udp in"|| echo "NOP dns udp in" <BR>iptables -A OUTPUT -p tcp --dport domain -j ACCEPT && echo "OK dns udp out"|| echo "NOP dns udp out" <BR> <BR>## on accepte irc <BR>iptables -A INPUT -i ppp0 -p tcp --sport 6667:7000 -j ACCEPT && echo "OK irc in"|| echo "NOP irc in" <BR>iptables -A OUTPUT -o ppp0 -p tcp --dport 6667:7000 -j ACCEPT && echo "OK irc out" || echo "NOP irc out" <BR> <BR>## on accepte le net <BR>iptables -A INPUT -p tcp --sport 80 -i ppp0 -j ACCEPT <BR>iptables -A OUTPUT -p tcp --dport 80 -o ppp0 -j ACCEPT <BR>## on accpete mail <BR>iptables -A INPUT -p tcp --sport 25 -j ACCEPT && echo "OK in smtp"|| echo "NOP in smtp" <BR>iptables -A INPUT -p tcp --sport 110 -j ACCEPT && echo "OK in 110 "|| echo "NOP in 110" <BR>iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT && echo "OK out smtp"|| echo "NOP out smtp" <BR>iptables -A OUTPUT -p tcp --dport 110 -j ACCEPT && echo "OK out 110" || echo "NOP out 110" <BR> <BR>## on accepte le DHCP <BR>iptables -A INPUT -i ppp0 -p udp --dport 67 -j ACCEPT && echo "OK in dhcp tcp" || echo "NOP in dhcp tcp" <BR>iptables -A OUTPUT -o ppp0 -p udp --sport 67 -j ACCEPT && echo "OK out dhcp tcp" || echo "NOP in dhcp tcp" <BR> <BR>##port actif <BR>iptables -A INPUT -i ppp0 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT <BR>iptables -A OUTPUT -o ppp0 -p tcp --dport 1024:65535 --sport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
Avatar de l’utilisateur
Maeda
Matelot
Matelot
 
Messages: 2
Inscrit le: 29 Août 2003 00:00

Messagepar Maeda » 29 Août 2003 22:35

J'utilise une suse linux 8.2 et iptables vertion 1.2.7a.
Avatar de l’utilisateur
Maeda
Matelot
Matelot
 
Messages: 2
Inscrit le: 29 Août 2003 00:00

Messagepar tomtom » 01 Sep 2003 21:48

Il faut accepter les forward depuis le net . <BR> <BR>ex : <BR> <BR>iptables -A FORWARD -i ppp0 -p tcp --dport 80 -j ACCEPT <BR> <BR>Sinon, ton paquet est bien dnaté mais bloqué pendant le transfert ! <BR> <BR>T.
One hundred thousand lemmings can't be wrong...
Avatar de l’utilisateur
tomtom
Amiral
Amiral
 
Messages: 6035
Inscrit le: 26 Avr 2002 00:00
Localisation: Paris


Retour vers Sécurité et réseaux

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité