Bonjour,
Comme dit plus haut, le pare-feu de Windows le permet. Encore mieux si tu possède un contrôleur de domaine 2008 (physique ou en virtuel pour ton usage personnel), plus souple en terme de gestion.
Sinon, tu peux également déployer un firewall open-source. Les règles de filtrage à mettre en place sont très simples mais requiert de se renseigner sur la syntaxe. Une GUI pourrait te faciliter ces définitions d’accès.
A savoir : on gère ces autorisation hiérarchiquement, c-à-d on interdit tout, et on autorise petit à petit selon les besoins.
Par exemple :
# on interdit tout traffic.
IPTABLES -P INPUT DROP
# on test la bonne prise en compte de cette règle en effectuant un ping qulconque qui doit renvoyer : ping : sending : Operation not permitted
Par la suite pour faire tes tests, le mieux est d’utiliser un script pour éviter d’avoir des redondances ou des conflits, puisque tes règles entrées s’accumulent. Un exemple :
#!/bin/bash
#Vider la table nat
iptables -t nat -F POSTROUTING
iptables -t nat -F PREROUTING
#Vider la table de filtrage
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
###################################################
#Bloquer tous les accès avec des policy
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
###################################################
#Autorisation de la boucle locale en Entree/Sortie
iptables -I INPUT -i lo -j ACCEPT
iptables -I OUTPUT -o lo -j ACCEPT
###################################################
#Filtrage d'accès
###################################################
#Exemple d'une règle autorisant un sous-réseau 10.53.1.0/24 sur l'interface eth0 à contacter un serveur web local sur l'interface eth1 :
iptables -I FORWARD -i eth1 -o eth0 -p tcp -s 10.53.1.0/24 --sport 1023: -d 10.254.0.254/32 --dport 80 -j ACCEPT
################################################
#Exemple d'une règle autorisant le sous-réseau précédant à accéder à Internet. /!\ au préalable, il faut autoriser le trafic DNS avec une autre règle /!\ :
iptables -I FORWARD -i eth1 -o eth0 -p tcp -s 10.53.1.0/24 --sport 1023: --dport 80 -j ACCEPT
#On autorise les machines de se sous-réseau à poursuivre une connection initialisée à l'aide des attributs r[b]elated[/b]=initiée et [b]esthablished[/b]= établie. Ici, on autorise notre sous-réseau situé sur eth0 à poursuivre la connection avec le serveur WEB local situé sur eth1 :
iptables -I FORWARD -i eth0 -o eth1 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
Aussi, pour permettre une connectivité de ton site local vers l’extérieur, et pour rendre une machine (ici, serveur WEB local) accessible depuis l’extérieur, il faut mettre en uvre du NAT (translation dadresse) :
#NAT
#Sous-réseau 10.53.1.0/24 naté sur Internet :
iptables -t nat -I POSTROUTING -o eth0 -s 10.53.1.0/24 -j MASQUERADE
#Internet autorisé à contacter le serveur WEB local :
iptables -t nat -I PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to \ 10.53.2.2:80
En espérant que ces dfinitions puissent servir à quelqu’un
Leur mise en place n’est pas très compliquée, et la syntaxe se comprend facilement. Une machine Linux (base Debian par exemple) serait facile à prendre en main, et une commande man iptables te donnerait beaucoup d’informations sur les syntaxe détaillée ci-dessus. Tout est une question de logique : -i -> inpu t= interface d’entrée, -o -> outpout = interface de sortie, etc…
Bon courage!
Edité le 30/03/2011 à 11:45