Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/07/2014, à 19:24

duff4

Configuration iptables de domu Xen en nat -- debian --

Je suis débutant et j'ai un problème avec mon firewall iptables car je n'arrive pas à le configurer. J'ai activé le mode Nat de Xen, créé un DomU d'ip 10.10.10.1. Mon objectif est de fermer TOUS les ports du firewall puis de les ouvrir un par un. Pour comprendre le principe, j'ai réussi à faire un apt-get update sur le Dom0 en ouvrant les chaines INPUT/OUTPUT des ports 80 (tcp) et 53 (tcp/udp) et ça marche! Mais Je n'arrive pas à configurer la table FILTER et NAT pour l'apt-get sur les DomU (et ouvrir et rediriger le port 80 vers le DomU d'ip 10.10.10.1).
Je voudrais procéder ainsi:
# Bloquage des ports
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
# ouverture des ports du Dom0
[...] <- ça marche
# ouverture des ports du DomU d'ip 10.10.10.1
iptables -A FORWARD -p tcp -d 10.10.10.1 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -d 10.10.10.1 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -d 10.10.10.1 --dport 53 -j ACCEPT
iptables -A PREROUTING -t nat -p tcp --dport 80 -j DNAT --to 10.10.10.1:80
iptables -A PREROUTING -t nat -p tcp --dport 53 -j DNAT --to 10.10.10.1:53
iptables -A PREROUTING -t nat -p udp --dport 53 -j DNAT --to 10.10.10.1:53
et... ça marche pas! (pas de apt-get ni possibilité d'acccéder au port 80 du DomU de l'extérieur...)
Pouvez-vous m'aider? Merci infiniement

Hors ligne

#2 Le 14/07/2014, à 21:42

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

ça ne marche toujours pas... J'avoue être perdu ^^"
Bon, je vous explique un peu mieux ce que je cherche à faire: j'ai mon serveur de virtualisation Xen en mode Nat. Il comporte un DomU d'ip 10.10.10.1. Je cherche à sécuriser les flux de données du Dom0 et de(s) DomU à l'aide d'iptables du Dom0.

!
! eth0
! 192.168.0.1
------------------
!Serveur Xen!
!__Dom0___!
------------------
!
!
! NAT
! 10.10.10.1
----------------
!Domaine_1!
!__DomU__!
----------------

Il faudrait permettre à tous les DomU de se connecter à internet (port 80 tcp) et au DNS (53 tcp/udp), mais que les ordinateurs à l'extérieur ne puissent accéder à ces DomU que par des ports spécifiques par exemple le port 80 pour le Domaine_1. Quand au Dom0, il devrait être capable également de se connecter à internet et au DNS. (internet et dns permettent entre autres de faire des (apt-get update/upgrade).

Le début du fichier marche pour l'autorisation des ports du Dom0:

#! /bin/bash

# Affichage du message d'accueil:
echo -e "\n\n---         SCRIPT DE PARAMÊTRAGE DU FIREWALL     ---\n"

# reinitialisation du firewall...
echo "reinitialisation du firewall"
sleep 1
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
echo "                                         [fait]"
# Bloquage des ports
echo "bloquage des ports..."
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
echo "                                         [fait]"


# Ouverture des ports Dom0:
echo "ouverture des ports Dom0..."
# autorisation des connexions établies
echo "   - aurositation des connexions établies..."
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
echo "                                         [fait]"
# Autorisation du loopback
echo "   - autorisation du loopback..."
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
echo "                                         [fait]"
# Autorisation HTTP
echo "   - autorisation HTTP..."
iptables -t filter -d 192.168.0.1 -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 80 -j ACCEPT
echo "                                         [fait]"
# Autorisation HTTPS
echo "   - autorisation HTTPS..."
iptables -t filter -d 192.168.0.1 -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -d 192.168.0.1 -A INPUT -p tcp --dport 8443 -j ACCEPT
echo "                                         [fait]"
# Autorisation SSH
echo "   - autorisation SSH..."
iptables -t filter -d 192.168.0.1 -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 22 -j ACCEPT
echo "                                         [fait]"
# Autorisation DNS
echo "   - autorisation DNS..."
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -s 192.168.0.1 -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -d 192.168.0.1 -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -d 192.168.0.1 -A INPUT -p udp --dport 53 -j ACCEPT
echo "                                         [fait]"

Mais je n'arrive pas à ouvrir les ports 80 (tcp) et 53 (tcp/udp) pour les requêtes des DomU vers l'exterieur et à faire la redirection du port 80 de l'extérieur vers le port 80 du DomU d'ip 10.10.10.1

Je sais que ma demande est un peu lourde, mais pourriez-vous m'aider à constituer les rêgles iptables afin de protéger au mieux mon futur serveur?

Je vous remercie beaucoup

Dernière modification par duff4 (Le 14/07/2014, à 21:43)

Hors ligne

#3 Le 15/07/2014, à 08:29

chefdelegion

Re : Configuration iptables de domu Xen en nat -- debian --

As tu bien modifié /etc/sysctl.conf puis reboot la machine ? normalement avec la commande sysctl -p /etc/sysctl.conf pas besoin de reboot.
Il faut déjà que le masquerade soit bien configuré :

iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -s 10.1.1.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -i dummy0 -s 10.1.1.0/24 -j ACCEPT
iptables -A OUTPUT -o dummy0 -d 10.1.1.0/24 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 j DNAT --to-destination 10.1.1.1:80

remplace donc bien dummy0 et les ip par l’interface déployer de xen.

Dernière modification par chefdelegion (Le 15/07/2014, à 08:30)


Xubuntu  14.04 LTS sur tous les postes.
Debian/FreeBSD pour les serveurs.
OMV/FreeNAS pour les serveurs NAS/SAN
New blog : http://aurelienh.shost.ca

Hors ligne

#4 Le 15/07/2014, à 11:19

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

Merci! Grace à votre aide, j'ai beaucoup avancé!
Voici mon script actuel:

#! /bin/bash

# Affichage du message d'accueil:
echo -e "\n\n---         SCRIPT DE PARAMÊTRAGE DU FIREWALL     ---\n"

# reinitialisation du firewall...
echo "reinitialisation du firewall"
sleep 1
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
echo "                                         [fait]"
# Bloquage des ports
echo "bloquage des ports..."
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
echo "                                         [fait]"


# Ouverture des ports Dom0:
echo "ouverture des ports Dom0..."
# autorisation des connexions établies
echo "   - aurositation des connexions établies..."
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
echo "                                         [fait]"
# Autorisation du loopback
echo "   - autorisation du loopback..."
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
echo "                                         [fait]"
# Autorisation HTTP
echo "   - autorisation HTTP..."
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 80 -j ACCEPT
echo "                                         [fait]"
# Autorisation HTTPS
echo "   - autorisation HTTPS..."
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 443 -j ACCEPT
echo "                                         [fait]"
# Autorisation SSH
echo "   - autorisation SSH..."
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 22 -j ACCEPT
echo "                                         [fait]"
# Autorisation DNS
echo "   - autorisation DNS..."
iptables -t filter -s 192.168.0.1 -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -s 192.168.0.1 -A OUTPUT -p udp --dport 53 -j ACCEPT
echo "                                         [fait]"

iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -s 10.10.10.1/24 -o eth0 -j MASQUERADE
iptables -A OUTPUT -o 192.168.0.1 -d 10.10.10.1/24 -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -o 192.168.0.1 -d 10.10.10.1/24 -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -o 192.168.0.1 -d 10.10.10.1/24 -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.1:80

Les principales modifications sont que j'ai enlevé toutes les lignes "IMPUT" qui ne servaint un peu à rien (ça ouvrait finalement des ports que j'avais pas besoin). J'ai aussi amélioré le filtrage pour que le firewall ne laisse passer pour les DomU que le port 80 (tcp) et 53 (tcp/udp).

Mais j'ai encore deux gros problèmes:
- n'est-ce pas un peu risqué de laisser le FORWARD sur la politique "accept"? n'y a t'il pas moyens de le filtrer un peu plus, par exemple avec ce type de commande

iptables -P FORWARD DROP
iptables -A FORWARD -o 192.168.0.1 -d 10.0.0.1/24 -j ACCEPT

(mais qui me bloque finalement toute la configuration précédente)
- je n'arrive pas à accéder au port 80 du domU d'ip 10.10.10.1 avec le dom0... Est-ce que c'est normal? que puis-je faire pour pouvoir y avoir accès?
j'ai essayé

iptables -t nat -A PREROUTING -s localhost  -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1:80

mais ça ne marche pas....

Hors ligne

#5 Le 15/07/2014, à 11:49

chefdelegion

Re : Configuration iptables de domu Xen en nat -- debian --

non car tu vas avoir des soucis de paquet par la suite qui est résolu en ipv6.

modifie ton script en reprennent le même schéma que le mien (juste a modifier) et dit nous ensuite si sa marche


Xubuntu  14.04 LTS sur tous les postes.
Debian/FreeBSD pour les serveurs.
OMV/FreeNAS pour les serveurs NAS/SAN
New blog : http://aurelienh.shost.ca

Hors ligne

#6 Le 15/07/2014, à 20:38

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

Non malheureusement, j'ai essayé et ça ne marche pas: le domU est accessible de l'extérieur mais pas du dom0

Hors ligne

#7 Le 15/07/2014, à 21:20

chefdelegion

Re : Configuration iptables de domu Xen en nat -- debian --

dans ce cas c'est pas un problème iptable du moins je pense ...
j'ai trouvé un tutoriel qui peut être t'aider dans certain paramètrage.

http://exaoctet.fr/index.php?option=com … Itemid=539


Xubuntu  14.04 LTS sur tous les postes.
Debian/FreeBSD pour les serveurs.
OMV/FreeNAS pour les serveurs NAS/SAN
New blog : http://aurelienh.shost.ca

Hors ligne

#8 Le 15/07/2014, à 23:31

pires57

Re : Configuration iptables de domu Xen en nat -- debian --

@chefdelegion, evites de donner des conseils sur iptables quand tu ne maîtrise pas le sujet, cf ton propre fil de discutions (entre autre) ou tu commente des choses alors que tu ne fait pas ce que tu mets en commentaire.
l'ip forwarding permet de router les paquets sur d'autre interfaces, il n'y a absolument rien a voir avec internet bien qu'il permet le routage de paquet vers ce réseau également
les regles

/sbin/iptables -t nat -X
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -X
/sbin/iptables -t mangle -F

ne donne aucune sécurité, elle supprime les chaines défini par les users et flush les tables concerné, c'est a dire les remet a zero.
Bref je vais pas te donner un cours sur iptables je n'en ai absolument pas le temps.

@duff4 expliques ton besoin exact, pourquoi est ce que tu veut mettre iptables?


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#9 Le 16/07/2014, à 10:25

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

Mon but est de créer un serveur Xen afin d'y héberger plusieurs services (note: le réseau est configuré en NAT). Par exemple, mettre mon service HTTP/Apache sur le domU d'ip 10.10.10.1. Cependant, afin de mieux sécuriser le serveur de virtualisation Xen et ses domaines virtualisés, je souhaiterai mettre en place le parefeu iptables afin de filtrer les connexions:
- d'une part pour le dom0 (hyperviseur Xen, d'ip 192.168.0.1 via t'interface eth0): lui permettre l'accès à internet (port 80 tcp) et au DNS (p 53 udp/tcp), et ouvrir son port ssh (actuellement port 22)
- d'autre part, pour tous les domU (machines virtuelles, d'ip 10.10.10.0/24 via les interfaces vifx.0): leur permettre d'accéder également à internet et au DNS, et en fonction des machines, leur rediriger l'accès depuis l'extérieur du dom0 les ports pour leurs services respectifs comme le port 80 pour le dom0 d'ip 10.10.10.1
- dernière chose: je souhaiterai que le dom0 ait accès aux domU par tous les ports (pas de filtrage entre le dom0 et les domU) et de même pour les domU entre eux

Merci de votre contribution! Je suis vraiment novice en réseau, votre aide m'est précieuse!

Hors ligne

#10 Le 16/07/2014, à 21:04

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

Bonsoir!

J'ai profité d'avoir du temps devant pour faire quelques petites bidouilles et j'ai trouvé une bonne piste!

Dans mon script, pour ouvrir les ports du dom0 en OUTPUT, j'ai bien précisé que la source de ces données devaient venir du dom0:

# Autorisation HTTP
echo "  - autorisation HTTP..."
iptables -t filter (ceci ->) -s 192.168.0.1 ( <- oui, ce truc là! )  -A OUTPUT -p tcp --dport 80 -j ACCEPT
echo "                     [fait]"

Or, j'ai remarqué que si j'enlevais cette directive, j'avais enfin accès au port 80 du domU...

Donc ma question: si je veut être enquiquiant et que je conserve -s 192.168.0.1 pour l'ouverture du port 80 vers l'exterieur... m'est-il possible de trouver une rêgle iptables pour autoriser cette fois les requêtes du dom0 (ip 192.168.0.1) du port 80 vers le domU (d'ip 10.10.10.1) ?

Dernière modification par duff4 (Le 16/07/2014, à 21:07)

Hors ligne

#11 Le 16/07/2014, à 21:44

pires57

Re : Configuration iptables de domu Xen en nat -- debian --

salut,

plusieurs choses:
- les echo ne servent a rien dans un script iptables, tu n'es pas censé renvoyé quoi que ce soit a l'écran
- tu peut aussi utiliser l'option -i pour spécifié une interface

Pourquoi vouloir utiliser iptables? shorewall serais bien plus simple a utiliser pour toi
mettre un firewall n'est pas indispensable, si le port n'est pas en écoute, personne ne passera, un point c'est tout.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#12 Le 16/07/2014, à 22:13

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

Alors...

- Pour les echo, je sais que cela n'as presque d’intérêt que point de vue cosmétique, c'est juste un choix personnel! (il y a pire: à la base j'avais mis des instructions afin d'afficher [OK] en vert pour chaque opération terminé... un peu comme ceux présents au boot de debian... c'était ni plus, ni moins que pour faire joli!) disons que dans le cas présent, c'est également pour m'aider en cas d'erreur sur une ligne, je vois tout de suite où elle s'est faite... Bref... ^^

- Pour ce qui est de la question du firewall, je souhaite le mettre en place afin de sécuriser les données placées sur ce serveur... De plus, je le fais également pour un objectif de culture personnelle: étant étudiant en informatique, je ne tarderai pas à toucher du doigt un firewall et notament iptables.

Je sais qu'il s'agît d'une question bête, mais... franchement, en tant qu'administrateur réseau, vous laisseriez un serveur qui sera en contact avec internet tous ports ouverts? Vous ne pensez pas que c'est un peu.... suicidaire? (sans vouloir être un maniaque de la sécurité... que je suis pourtant malheureusement!)

Dernière modification par duff4 (Le 16/07/2014, à 22:18)

Hors ligne

#13 Le 16/07/2014, à 22:21

pires57

Re : Configuration iptables de domu Xen en nat -- debian --

avant de te mettre a iptables, commence déja par comprendre les notions réseau parce qu'iptables c'est a classifié dans le réseau


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#14 Le 16/07/2014, à 22:55

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

J'ai déjà quelques bases en réseau... Cependant, je dois avouer que je suis un peu perdu sur les réseaux avancés, notement lorque l'on commence à parler de bridge, adresse de masque réseau, adresse broadcast, gateway etc.
Est-ce que vous pourriez me conseiller une bonne documentation (ou cours) qui me permette de mieux y comprendre? (plus c'est complet, avec des exemples et plus j'aime! Si vous l'avez en 200 pages, je suis aussi preneur!) Je vous en serait très reconnaissant !

Dernière modification par duff4 (Le 16/07/2014, à 23:09)

Hors ligne

#15 Le 17/07/2014, à 19:06

pires57

Re : Configuration iptables de domu Xen en nat -- debian --

salut, si tu veut acheter un livre oui j'en ai deux a te proposer:
Les réseaux, A.Tanenbaum
Les réseaux, G.Pujolle


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#16 Le 18/07/2014, à 21:10

duff4

Re : Configuration iptables de domu Xen en nat -- debian --

D'accord... Merci pour votre aide et vos conseils à tous les deux!

Hors ligne