Une procédure est toujours utile étant donné qu'elle permet de voir les étapes du durcissement du système et permet une prise de décisions. Une approche possible d'une telle procédure pour Debian 2.2 GNU/Linux est présentée ci-dessous. Ceci est une procédure post-installation, avec une liste de mesures à prendre en compte, étape par étape, lors de la configuration voir Liste de contrôles des configuration., Annexe B. De même que, cette procédure est (pour le moment) plus orientée sur le renforcement des services réseaux.
dselect
et retirer les paquets non nécessaire
mais sélectionnés avant de faire [I]nstall. Laisser le strict minimum de
logiciels sur le serveur.
$ ps -aux $ netstat -pn -l -A inet # /usr/sbin/lsof -i | grep LISTEN
Vous devrez installer lsof-2.2
pour que la troisième commande
fonctionne (à lancer en root). Vous devriez faire attention car lsof peut
traduire le mot LISTEN dans vos paramètres.
dpkg
.
#!/bin/sh # FIXME: this is quick and dirty; replace with a more robust script snippet for i in `sudo lsof -i | grep LISTEN | cut -d " " -f 1 |sort -u` ; do pack=`dpkg -S $i |grep bin |cut -f 1 -d : | uniq` echo "Service $i is installed by $pack"; init=`dpkg -L $pack |grep init.d/ ` if [ ! -z "$init" ]; then echo "and is run by $init" fi done
dpkg --purge
) ou utiliser update-rc.d
(voir Désactivation de services daemon, Section
3.6.1) de façon à le retirer du système de démarrage.
$ grep -v "^#" /etc/inetd.conf | sort -u
et désactiver ceux qui ne sont pas nécessaire en commentant les lignes,
supprimant le paquet ou en utilisant update-inetd
/usr/sbin/tcpd
), vérifier que /etc/hosts.allow
et
/etc/hosts.deny
sont configurés d'après votre politique pour les
services.
$ init 1 (....) $ init 2
$ for i in `/usr/sbin/lsof -i |grep LISTEN |cut -d " " -f 1 |sort -u`; do user=`ps -ef |grep $i |grep -v grep |cut -f 1 -d " "` ; echo "Le service $i a été lancé en tant qu'utilisateur $user"; done
pensez à changer ces services pour un utilisateur/groupe donné et peut-être les
"chrooté" pour augmenter le niveau de sécurité. Vous pouvez procéder
en changeant les scripts de démarrage de services de /etc/init.d
.
La plupart des services dans la Debian utilisent start-stop-daemon
ainsi vous pouvez utiliser les options --change-uid et --chroot pour installer
ces services. "Chrooter" des services ne rentre pas dans le cadre de
ce document mais un petit avertissement est nécessaire : vous aurez peut-être
besoin de mettre tous les fichiers installés par le paquet service en utilisant
dpkg -L ainsi que les paquets dont il dépend dans l'environnement chroot.
nessus
) de façon à déterminer les vulnérabilités du système
(mauvaise configuration, services vieux ou indésirables).
snort
et logsentry
).
Pour le vrai paranoïaque, il faut prendre en considération ce qui suit :
FIXME: cette procédure considère le service harden mais pas le sytème harden au niveau utilisateur, incluant des informations à propos de la vérification des permissions utilisateurs, les fichiers setuid et le gel des changements dans le système en utilisant le système de fichier ext2.
Securing Debian Manual
2.8 14 febrero 2004Mon, 18 Nov 2002 23:13:42 +0100jfs@computer.org