Procédure shorewall :
Voici une petite procédure afin de configurer shorewall pour filtrer les connexions entrantes, partager une connexion internet entre plusieurs pc et pour définir des règles afin d'ouvrir et de mapper des ports. Vous pouvez charger cette page ici Note, cette procédure est faite pour webmin qui lui s'utilise avec un navigateur web à l'adresse : https://localhost:10000
Tout d'abord il faut aller dans 'Networking', 'Network Configuration', 'Network Interfaces'. Ici on a les interfaces réseau qui sont montées :
On voit qu'il y'a eth0 qui correspond à l'adresse sur le LAN et ppp0 qui est la connexion à internet. Bon, on à récupéré le nom de nos interfaces, on va pouvoir continuer sur shorewall.
Pour ça il faut aller dans 'Networking' 'shorewall firewall Plus précisément pour commencer dans : 'Network Zones'
créer les deux zones, une locale et une internet. J'ai pris ici comme exemple : 'net' pour la zone internet et 'lan' pour le réseau local.
Ensuite il faut ratacher ces zones à des interfaces. Plus précisément pour commencer dans : 'Network interfaces'
On doit avoir ça à la fin... Cliquer sur 'add a new interface' pour créer les interfaces. Lors d'une création il faut donner le nom de l'interface réseau et la zone à laquelle sera rattachée cette carte. Ne pas toucher aux autres options.
Puis pour continuer il faut aller dans 'Default Policies' afin de spécifier les régles par défaut.
Voici une configuration standard. Pour y arriver complétez le petit formulaire il n'est pas compliqué à comprendre. Il faut simplement savoir que la 'source zone' veux dire zone depuis laquelle la connexion sera initialisé. C'est à dire depuis laquelle le client lancera sa requête. Et la destination zone est vers quelle zone la requête sera envoyé. La variable <Firewall> veux dire machine qui héberge shorewall. A vous de voir si vous voulez logger ou pas. A savoir que l'application des règles commence du haut vers le bas. Par conséquent il faut bien laisser la dernière règle à sa place. Sinon plus rien ne passera.
Voilà, à partir de ce moment vous pouvez déjà démarrer votre pare feu, il devrait simplement filtrer les paquets (c'est déjà pas mal).... Démarrez le afin de savoir si la config est bonne jusqu'à présent. S'il y'a une erreur vérifiez votre config... Ensuite on passe à la Translation NAT. La NAT sert à partager une ip unique sur internet pour plusieurs pc sur un lan privé. En fait tous vos clients (pc n'hébergeant pas la connexion) passerons par le routeur pour aller sur internet et de l'extérieur seule une ip sera visible, celle du routeur. De l'extérieur impossible de savoir qu'elle machine se connecte. On appel cela également l'ip masquerading car on masque l'ip des clients derrière l'ip du routeur. Pour configurer cette option il faut aller dans 'masquerading'
On spécifie l'interface de sortie, ici ppp0, l'adsl. Et le 'Network to masquerade' (réseau à masquer) et le subnet ou réseau sur l'interface 'eth0', notre lan. Vous pouvez spécifier des excéptions et des règles plus précise mais pour un partage de connexion ce n'est pas nécéssaire. Ce qui nous donne ça une fois finit :
Vous pouvez dès maintenant appliquer la configuration de shorewall afin de tester le partage. Pour ça cliquez sur 'appli configuration' dans l'index de shorewall. Pour tester la configuration du partage il faut également configurer le client. Le mieux est de passer tout le monde en ip fixe. Si votre routeur à pour ip : 192.168.0.1 / 255.255.255.0 il faut configurer votre client en 192.168.0.2 / 255.255.255.0 avec pour passerelle par défaut : 192.168.0.1 et en serveur dns : 193.252.19.3 et 193.252.19.4 . Une fois cette configuration faite vous devriez avoir un partage de connexion opérationnel. Votre pc client aura le net.
On peux désormais ajouter une configuration plus avancé afin d'ouvrir des ports si vous avez des applications qui doivent être disponible d'internet. En règle général l'ouverture de port sert pour les serveurs mais bcp s'en servent pour ces satané logiciel P2P qui polluent le net :) Enfin bref, pour configurer l'ouverture de port il faut aller dans 'rules'. Voici un exemple de configuration pour ouvrir le port 80 afin de faire serveur web. Ici on autorise les connexions sur le port 80 en provenance de la zone 'net' à destination du '<Firewall>'.
Créez autant de règle qu'il vous faudra pour vos règles.
Il se peux également que la machine qui héberge un service ne soit pas le routeur, dans ce cas il faut mapper le port concerné vers une autre machine. Pour cela autre exemple de configuration. :
Donc ici on map bien le port 80 sur la machine dans la zone 'lan' avec l'ip 192.168.0.2 pour toutes les connexions en provenance de la zone 'net'. Pour ma part je crée toujours l'enregistrement qui autorise un port, puis celui qui map ce port afin que cela fonctionne. Voici un exemple de configuration terminé :
Désormais c'est bon, il ne vous reste plus qu'à appliquer la configuration de shorewall et vous aurez un routeur / firewall opérationnel qui va filtrer les connexions entrantes, partager votre connexion pour les pcs clients et aussi autoriser et mapper les ports que vous désirez conserver ouvert. J'espère que cette petite notice vous sera utile. |