Bonjour à toutes et à tous,
Chez moi, une passerelle debian fait le lien entre internet (eth1) et mon LAN (eth0).
J'ai actuellement comme règles IPTables (Entre autres):
[... Je flush toutes les tables ...]
# Ensuite je met tout à drop, sauf l'output que j'accepte:
iptables -P OUTPUT ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
# Normalement pas de prob ici non plus, vu que l'IN est à DROP précédemment.
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
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
# J'accepte tout vers / de localhost:
iptables -A INPUT -j ACCEPT -i lo
iptables -A OUTPUT -j ACCEPT -o lo
# Idem pour mon LAN:
iptables -A INPUT -j ACCEPT -i eth0
iptables -A OUTPUT -j ACCEPT -o eth0
# J'accepte tout ce qui sort vers eth1...
iptables -A OUTPUT -j ACCEPT -o eth1
# ... ainsi que les forwards (Pour le DNAT sur les serveurs de mon LAN):
iptables -A FORWARD -j ACCEPT
# Je masquerade eth0 derière eth1:
iptables -A POSTROUTING -j MASQUERADE -t nat -o eth1
[ ... A ce stade, un test de l'exterieur montre tous mes ports fermés, la passerelle peut accéder au net et le fonctionnement depuis mon LAN est parfait aussi ... ]
# J'ajoute ensuite divers serveurs qui tournent sur la passerelle:
iptables -A INPUT -j ACCEPT -i eth1 -p tcp -m multiport --dport 20,21,80,443 -m state --state NEW,ESTABLISHED,RELATED
# Pour finir, j'ajoute un petit DNAT pour pouvoir prendre la machine
# en local "192.168.2.1" port 5900 en VNC depuis l'exterieur en demandant
# "Mon_IP_PUblique:5901":
iptables -A PREROUTING -j DNAT -t nat -i eth1 -p tcp --dport 5901 --to-destination 192.168.2.1:5900
Bon jusque là tout va bien, maintenant j'aimerais que tout le reste des connexions entrantes soient DNATées vers l'ip 192.168.0.110 dans mon LAN, mais sans être obligé de faire un multiport en tapant à la main des ranges de ports compliqués.
Là ça donnerait:
iptables -A PREROUTING -j DNAT -t nat -i eth1 -p tcp -m multiport --dport 1:19,22:79,81:442,444:5900,5902:65535 --to-destination 192.168.0.110
Le problème, les exemples de ports que j'ai mis sur ce post sont très (très très très) simplifiés... J'ai quelque chose comme 25 ports ouverts, DNATés, etc, j'en ajoutte assez régulièrement, et je voudrais donc éviter d'avoir à chaque fois à me taper les range de ports pour le dernier DNAT vers 0.110... En gros, je voudrais faire un DMZ sur 0.110 sauf pour les ports de l'exemple.
Est il possible de faire ça?
Merci!
A bientot,
Pierre.
Poste le Thursday 19 October 2006 16:05:39