iptables : Accès au serveur interne via ip publique

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

iptables : Accès au serveur interne via ip publique

Messagepar maximstem » 21 Nov 2007 15:26

Bonjour à tous,

Je reviens vers vous afin de résoudre une problématique avec iptables :

J'ai une connexion internet avec 5 ip fixes (81.x.x.1, 81.x.x.2, 81.x.x.3, 81.x.x.4 et 81.x.x.5),
Une passerelle avec Firewall,
Un LAN en 192.168.0.0.
Le "Surf" se fait via l'ip 81.x.x.1.

J'aimerais deux choses :

1- Permettre à mon serveur mail (192.168.0.10:25,110) (en relai fermé) d'être joignable de l'extérieur, mais pas sur toutes les adresses ips publiques, une seulement.
2- Permettre à ma passerelle d'être joignable de l'extérieur en SSH, mais pas sur toutes les adresses ips publiques, une seulement.

J'ai donc ajouté les règles dans mon firewall, l'une fonctionne très bien, l'accès SSH sur une seule adresse IP publique :
Code: Tout sélectionner
       # ACCES SSH SUR .2
        iptables -A INPUT -j ACCEPT -p TCP -d 81.x.x.2 --sport $hports --dport 22


L'autre règle, accès POP et SMTP, ne fonctionne pas :
Code: Tout sélectionner
       # ACCES POP et SMTP SUR .10
        $ipt -A FORWARD -j ACCEPT -i $dev_inter -o $dev_intra -d 81.x.x.3 -p TCP --dport 25
        $ipt -t nat -A PREROUTING -j DNAT -i $dev_inter -p TCP --dport 25 -d 81.x.x.3 --to-destination 192.168.0.10:25


Elle ne fonctionne que si je la transforme en :
Code: Tout sélectionner
       # ACCES POP et SMTP SUR .10
        $ipt -A FORWARD -j ACCEPT -i $dev_inter -o $dev_intra -p TCP --dport 25
        $ipt -t nat -A PREROUTING -j DNAT -i $dev_inter -p TCP --dport 25 --to-destination 192.168.0.10:25

C'est à dire sans le -d 81.x.x.3, mais à ce moment là, l'accès est ouvert depuis toutes les adresses publiques, ce qui n'est pas le but.

Y a-t-il une solution à mon problème ?
Et surtout, est-il possible de filtrer d'une manière ou d'une autre l'adresse de destination dans le FORWARD ou le PREROUTING ?

Merci d'avance.
maximstem
Matelot
Matelot
 
Messages: 7
Inscrit le: 19 Nov 2007 11:25

Re: iptables : Accès au serveur interne via ip publique

Messagepar arapaho » 21 Nov 2007 18:49

maximstem a écrit:L'autre règle, accès POP et SMTP, ne fonctionne pas :
Code: Tout sélectionner
       # ACCES POP et SMTP SUR .10
        $ipt -A FORWARD -j ACCEPT -i $dev_inter -o $dev_intra -d 81.x.x.3 -p TCP --dport 25
        $ipt -t nat -A PREROUTING -j DNAT -i $dev_inter -p TCP --dport 25 -d 81.x.x.3 --to-destination 192.168.0.10:25
Complètement normal. Les paquets traversent la table NAT avant FILTER. Donc en effectuant un DNAT de 81.x.3 vers 192.x.10 dans la chaine PREROUTING, la table FILTER les verra comme étant à destination de 192.x.10.

maximstem a écrit:Et surtout, est-il possible de filtrer d'une manière ou d'une autre l'adresse de destination dans le FORWARD ou le PREROUTING ?
Si tu tiens absolument à utiliser un adressage privé pour tes serveurs, tu peux même aller jusqu'à faire du nat source par serveurs/adresse. Par exemple, un SNAT pour la source 192.x.1 en 81.x.1, un SNAT 192.x.2 en 81.x.2 etc ..

Ensuite, il te suffira de gérer dans la table FILTER, chaine FORWARD, les sources et les destinations en adressage privé.
Avatar de l’utilisateur
arapaho
Amiral
Amiral
 
Messages: 1119
Inscrit le: 18 Avr 2002 00:00
Localisation: Genève

Re: iptables : Accès au serveur interne via ip publique

Messagepar maximstem » 30 Nov 2007 19:42

arapaho a écrit:
maximstem a écrit:L'autre règle, accès POP et SMTP, ne fonctionne pas :
Code: Tout sélectionner
       # ACCES POP et SMTP SUR .10
        $ipt -A FORWARD -j ACCEPT -i $dev_inter -o $dev_intra -d 81.x.x.3 -p TCP --dport 25
        $ipt -t nat -A PREROUTING -j DNAT -i $dev_inter -p TCP --dport 25 -d 81.x.x.3 --to-destination 192.168.0.10:25
Complètement normal. Les paquets traversent la table NAT avant FILTER. Donc en effectuant un DNAT de 81.x.3 vers 192.x.10 dans la chaine PREROUTING, la table FILTER les verra comme étant à destination de 192.x.10.

Peut-on faire un DNAT ailleurs ou n'ai-je rien compris ?

Cdlt,
maximstem
Matelot
Matelot
 
Messages: 7
Inscrit le: 19 Nov 2007 11:25

Re: iptables : Accès au serveur interne via ip publique

Messagepar maximstem » 30 Nov 2007 20:16

maximstem
Matelot
Matelot
 
Messages: 7
Inscrit le: 19 Nov 2007 11:25


Retour vers Sécurité et réseaux

Qui est en ligne ?

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

cron