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
par 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
-
Maeda
- Matelot
-
- Messages: 2
- Inscrit le: 29 Août 2003 00:00
par Maeda » 29 Août 2003 22:35
J'utilise une suse linux 8.2 et iptables vertion 1.2.7a.
-
Maeda
- Matelot
-
- Messages: 2
- Inscrit le: 29 Août 2003 00:00
par 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...
-
tomtom
- Amiral
-
- Messages: 6035
- Inscrit le: 26 Avr 2002 00:00
- Localisation: Paris
-
Retour vers Sécurité et réseaux
Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité