logo

blog

My little blog can’t be this cute! git clone https://hacktivis.me/git/blog.git
commit: 4668b4746828c835be646148929a71c6f0b7bf2e
parent 1b31407d3764997d7821dfb420c3a5f1e07928cb
Author: Haelwenn Monnier <lanodan.delta@free.fr>
Date:   Wed,  1 Jul 2015 18:01:23 +0200

Réponse à « Mise [alpha] en place d’un firewall sous debian »

Diffstat:

Aarticles/Réponse à « Mise en place d’un firewall sous debian ».html21+++++++++++++++++++++
1 file changed, 21 insertions(+), 0 deletions(-)

diff --git a/articles/Réponse à « Mise en place d’un firewall sous debian ».html b/articles/Réponse à « Mise en place d’un firewall sous debian ».html @@ -0,0 +1,21 @@ +<h1>Réponse à « Mise en place d’un firewall sous debian »</h1> +<p>C’est peut-être du à l’anciennetée du <a href="http://www.creativeo.net/mise-en-place-dun-firewall-sous-debian/">billet</a>(7 novembre 2011) mais <code>sudo apt-get update</code> met à jour la liste des paquets, et <code>install</code>, installe des pauets, pour mettre à jour c’est <code>upgrade</code>. Mettre pare-feu (open-office ;3) serait mieux que firewall.</p> +<p>Bon ensuite je ne sais pas si c’est à cause de ton moteur de blog, mais il n’y à pas de majuscules en début de commande. Et un fichier texte aurait été bien mieux qu’une image pour donner un script. Surtout que le paquet <a href="https://packages.debian.org/search?keywords=iptables-persistent">iptables-persistent</a> existe pour cette fonctionalitée. Et dire au lecteur·trice d’utiliser un éditeur de texte plutôt que d’utiliser touch et nano. Ensuite je ne recommande pas l’utilisation d’un DMZ(machine·s où tout les ports sont ouvert dessus).</p> +<h2>Règles IPtables</h2> +<p>Vut qu’il n’y a aucune explication, pour faire du NAT c’est avec l’option masquerade(exemple : <code>iptables -t nat -A POSTROUTING -s 192.168.0.0/22 -o wlan0 -j MASQUERADE</code> ou le /24 est un block de 256 IPs qui commence à 192.168.0.0) qui évite de s’emmerder a configurer l’IP de sortie/remplacement/publique/… utile quand il y a plusieurs sorties ou une addresse de sortie non-fixe (cf. <a href="https://wiki.archlinux.fr/Partage_de_connexion#Mise_en_place">Partage de connexion - ArchwikiFR</a>).</p> +<p>Ensuite il manque la redirection des paquets pour une autre destination. <code>echo 1 &gt; /proc/sys/net/ipv4/ip_forward</code> Ah et y’a pas que le web donc <code>iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT</code> permet de pouvoir établir une connexion.<br/> +<code>iptables -A INPUT -p icmp -j ACCEPT</code> active les paquets icmp, ne pas activer car permet de passer par un chemin détourné au niveau du pare-feu..<br\> +<code>iptables -A INPUT -p tcp -m tcp --dport 631 -j ACCEPT</code> <span class="warn">Ne rendez pas CUPS accessible, tout le monde pourrait imprimer !</span></p> +<p>Ensuite fail2ban, n’est <em>pas</em> un pare-feu, c’est un anti-spam (bloque au bout d’un certain quota), utile contre les attaques type bruteforce. Il ne permet pas d’empècher les attaques lentes et les services non-sécurisé ou mal-configuré(id : admin, mpd : admin), par exemple le CUPS public. Je vous conseille de sécuriser avant vos services et éventuellement de l’utiliser ensuite(pour un réseau difficile à surveiller, avec beaucoup de personnes dedans et/ou un service merdique).</p> +<p>En gros pour faire un pare-feu c’est :</p> +<ul> + <li>Activer le “routage” de paquets : <ul> + <li>Temporairement : <code>echo 1 &gt; /proc/sys/net/ipv4/ip_forward</code></li> + <li>Au démarrage : Changez/ajoutez <code>IPTABLES_FORWARD</code> à 1</li> + </ul></li> + <li>Faire une passerelle NAT(pour avoir un réseau local) : <code>iptables -t nat -A POSTROUTING -s 192.168.0.0/22 -o wlan + 0 -j MASQUERADE</code> ou le préfixe /24 indique un block de 256 IPs qui commence à 192.168.0.0, ce block est pour votre réseau local.</li> + <li>Si vous voulez ouvrir des ports(serveur web, skype apparement ;/, jeu, …) : <code>iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT</code> et remplacez 80 par le port en question ou le service(la liste est dans <code>/etc/services<code>), et tcp par le protocole(tcp, udp, udplite, icmp, icmpv6,esp, ah, sctp, mh, … une liste est disponible dans <code>/etc/protocols</code>) ou all pour tout les protocoles(utile pour Minecraft® par exemple).</li> + <li>Pour vérifier vos règles iptables : <code>iptables -L</code>. +</ul> +<date>2015-07-01</date>