Configurer un pare-feu

Dans notre optique de se faire un serveur web, on va se configurer un pare-feu avec iptables qui permet d’interdire ou d’autoriser tout se qui entre et sort de notre machine. Pour l’instant on n’utilise pas grand chose donc on va en interdire beaucoup puis au fur et à mesure qu’on installera des programmes on reviendra configurer notre pare-feu.

Règles

Pour commencer créons notre fichier de règles, ce script sera lancé à chaque démarrage d’où sa place dans le dossier init.d :

nano /etc/init.d/firewall

Pour résumer, on commence par tout effacer, puis on interdit tout sauf notre connexion en cours, puis on autorise le passage de quelques services, ce qui donne comme fichier firewall :

#!/bin/sh

# Purge de tables
iptables -t filter -F

# Purge des regles
iptables -t filter -X

# Bloque tout ce qui entre ou sort
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

# Garde les connexions en cours
iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state –state RELATED,ESTABLISHED -j ACCEPT

# Loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT

# ICMP
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT

# SSH
iptables -t filter -A INPUT -p tcp –dport 2222 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp –dport 2222 -j ACCEPT

# DNS
iptables -t filter -A OUTPUT -p tcp –dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp –dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp –dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp –dport 53 -j ACCEPT

# NTP
iptables -t filter -A OUTPUT -p udp –dport 123 -j ACCEPT

# SMTP (uniquement mail sortant pour les alertes)
iptables -t filter -A OUTPUT -p tcp –dport 25 -j ACCEPT

Attention, ne pas oublier de modifier le port de SSH pour correspondre à celui qu’on a mis lorsqu’on a sécuriser SSH. En cas d’erreur on ne pourra plus se connecter à note machine, ça serait dommage !

Exécution

Maintenant il faut rendre le fichier exécutable :

chmod +x /etc/init.d/firewall
  • TIPS : chmod permet de modifier les droits d’un utilisateur ou d’un groupe sur un fichier ou répertoire. On peut l’utiliser soit avec les lettres o,x,w,r, soit avec des chiffres de 0 à 7. On peut connaitre le mode des fichiers avec la commande ls -l Pour plus de détail, voir les sources en bas de page.

Avant d’aller plus loin on va le tester en l’exécutant :

/etc/init.d/firewall

Puis en tentant de se reconnecter à la console… Si on n’arrive plus à se connecter à notre machine, c’est qu’on à fait une erreur, il faut alors rebooter la machine depuis le gestionnaire de notre fournisseur. Si on arrive encore à se connecter à notre machine, cela veut dire qu’on ne s’est pas trop trompé, on peut alors lui dire de se lancer à chaque démarrage :

update-rc.d firewall defaults

Au suivant

Voila notre pare-feu est en place, on pourra le modifier au fil de nos besoins. Prochaine étape, se protèger des rootkit.

Sources

1 doma par “Configurer un pare-feu”

Atbildēt

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti kā *