40. Appréhender les principes généraux pour sécuriser un système

40.1. Le Bios

Le Bios (Basic Input Output System) permet d'effectuer les opérations élémentaires lors de la mise sous-tension d'un ordinateur. Ainsi, par exemple, les Bios actuels permettent de choisir le périphérique principal sur lequel démarrer (disque dur, lecteur optique, le réseau, l'USB, etc.).

Figure 12. Exemple d'accès au Bios d'une carte mère Gigabyte

Il est important d'affecter un mot de passe qui bloque quiconque essaye d'accéder au Bios, de couper l'allumage à distance et de veillez à ce que ce soit toujours le disque principal qui soit amorcé. Dans le cas contraire, n'importe qui pourrait accéder aux partitions en chargeant un OS différent.

Petite interrogation : qu'en est-t-il de la sécurisation si l'on effectue un Clear CMOS ? Peut-être faut-il prendre en plus la précaution de cadenasser sa tour ;) ?

40.2. Le chargeur de démarrage

Que ce soit Lilo ou Grub, le chargeur de démarrage est le premier logiciel libre sensible d'un système. En effet, il permet de démarrer de manière normale, sur des anciennes versions, sur des modes privilégiés, voire sur d’autres systèmes exotiques qui ne nous intéressent pas vraiment ici. Afin que n’importe qui ne s’autorise pas à démarrer sur un système pour lequel il ne devrait pas avoir le choix, il est nécessaire d’instaurer un mot de passe que seul l’administrateur connaîtra et pourra utiliser en cas de problème. De ce fait, s’il est nécessaire de redémarrer en mode privilégié, seul ce dernier sera en mesure d’intervenir et de faire les modifications utiles.

40.2.1. Sécuriser son Grub

Pour ajouter une demande de saisie d'un mot de passe lors de l'amorçage d'un système à l'aide de Grub, il suffit de se servir de la directive "password".

Dans le grub shell :


# grub
grub> md5crypt

entrez votre mot de passe :
Password: **********
Encrypted: $ki47DRy2a1quIitvskl745sFRsm

Il suffit ensuite de rajouter cette ligne dans le fichier de configuration /boot/grub/menu.lst (sous la ligne title) :


password --md5 $ki47DRy2a1quIitvskl745sFRsm

[...]
title Ubuntu, kernel 2.6.17-10-generic
password --md5 $ki47DRy2a1quIitvskl745sFRsm
root (hd0,4)
kernel /boot/vmlinuz-2.6.17-10-generic root=/dev/sda5 ro quiet splash
initrd /boot/initrd.img-2.6.17-10-generic
quiet
boot
[...]

Il est cependant important de savoir que cela ne s'applique uniquement à l'ancienne version du Grub 0.97 (dit legacy). Dans la documentation officielle, on peut également trouver un tutoriel sur l'utilisation de la sécurisation de son Grub.

Pour les adeptes du Grub2 (1.99 plus exactement), la nouvelle procédure de sécurisation est également documentée et décrite ici.

40.2.2. Sécuriser son Lilo

Personnellement, je n'ai jamais utilisé ni testé Lilo. Ce petit tutorial sera l'occasion pour moi de le découvrir un peu plus en détail.

Il est très aisé de configurer Lilo pour y mettre un mot de passe avant l'amorçage d'un système d'exploitation. Pour cela, il convient d'ajouter la directive "password" avec le mot de passe en clair dans le fichier de configuration (/etc/lilo.conf).


password=<-_->"==<]M[>??

Étant donné que le mot de passe est en clair, il est important de changer les droits du fichier en effectuant un chown et chmod.

40.3. Les comptes

Lorsque l'on installe un système, un certain nombre d’utilisateurs système sont déclarés par défaut. Ainsi, les comptes systèmes ne doivent pas pouvoir se connecter avec un mot de passe, ni dans la plupart des cas avoir un shell de connexion.

En tant qu’administrateur système, il faut soit procéder à la suppression des comptes inutiles, soit éditer soi-même le fichier /etc/shadow et placer un ! ou une * dans le champ correspondant au mot de passe, ce qui aura pour effet d’annuler la possibilité de se logguer par mot de passe, et de changer dans le fichier /etc/passwd le dernier champ correspondant au shell de connexion, en général /bin/sh par /bin/nosh, si ce dernier est correctement déclaré dans le fichier /etc/shells.

Exercice : travaillez votre fichier de compte afin que personne à part vous et l’administrateur ne puisse se logguer par mot de passe. Notez que les comptes root, daemon et bin sont nécessaires au fonctionnement de votre système :

Voyons un peu l'état de mon fichier utilisateurs et comptes :


vanvincq@CP2L ~/Bureau/CPLL/JournalDeBord $ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
Debian-exim:x:101:103::/var/spool/exim4:/bin/false
statd:x:102:65534::/var/lib/nfs:/bin/false
messagebus:x:103:106::/var/run/dbus:/bin/false
avahi:x:104:107:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
usbmux:x:105:46:usbmux daemon,,,:/home/usbmux:/bin/false
saned:x:106:115::/home/saned:/bin/false
hplip:x:107:7:HPLIP system user,,,:/var/run/hplip:/bin/false
Debian-gdm:x:108:116:Gnome Display Manager:/var/lib/gdm3:/bin/false
avahi-autoipd:x:109:117:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
vanvincq:x:1000:1000:Vanvincq Clément,,,:/home/vanvincq:/bin/bash
cl-builder:x:110:118::/usr/share/common-lisp/:/bin/false
sshd:x:111:65534::/var/run/sshd:/usr/sbin/nologin
proftpd:x:112:65534::/var/run/proftpd:/bin/false
ftp:x:1010:1010:Accès ftp authentifié,,,,:/home/ftp:/bin/true
telnetd:x:114:119::/nonexistent:/bin/false
martymac:x:1011:513::/home/martymac:/bin/sh
openldap:x:113:121:OpenLDAP Server Account,,,:/var/lib/ldap:/bin/false

40.4. Le Système de gestion des fichiers

Le Système de gestion des fichiers est l’ensemble de répertoires et de fichiers qui constituent l’arborescence du système.

Petit rappel sur l'arborescence des systèmes type GNU/Linux Debian-like :

40.4.1. Les droits

Dans les systèmes GNU/Linux, un utilisateur appartient forcément à un ou plusieurs groupes (un utilisateur est membre de son propre groupe du même nom). Chaque fichier appartient à un utilisateur qui définit les droits qu’il s’approprie sur le fichier, les droits qu’il donne au groupe sur ce même fichier et pour finir, ce qu’il autorise comme droit aux étrangers (aussi appelé les autres).

Ces droits sont répartis en trois catégories :

  • la lecture (r), de représentation octale 4,

  • l’écriture (w), de représentation octale 2,

  • l’exécution (x), de représentation octale 1.

Et ce pour chacune des catégories d’usager. Ainsi, un fichier peut avoir les droits suivants :


vanvincq@CP2L ~/Bureau/CPLL/JournalDeBord $ ls -l JournalDeBord.xml
-rw------- 2 vanvincq vanvincq 474194 14 avril 21:59 JournalDeBord.xml

Le changement de droit s'effectue par le biais de la commande chmod. Pour cela, deux cas de figures s'offrent à nous. Utiliser la notation octale ou utiliser la notation classique (rwx).

La notation classique est toujours sous la forme [ugoa]*([-+=]([rwxXst]*|[ugo]))+. Ainsi, si l'on souhaite attribuer les droits de lecture et d'écriture à l'utilisateur principal, la lecture au groupe associé et aucun droit aux autres, on écrira :


vanvincq@CP2L ~ $ touch fichier
vanvincq@CP2L ~ $ ls -l fichier
-rw-r--r-- 1 vanvincq vanvincq 0 14 avril 22:07 fichier

vanvincq@CP2L ~ $ chmod u=rw,g=r,o= fichier
vanvincq@CP2L ~ $ ls -l fichier
-rw-r----- 1 vanvincq vanvincq 0 14 avril 22:07 fichier

La notation octale, quant-à elle, consiste en une série de trois chiffres (voire quatre pour les setuid, setgid et sticky). Comme on l'a vu précédemment, les droits de lecture, écriture et exécution valent respectivement 4, 2 et 1.

Tableau 5. Les droits sous GNU/Linux en résumé

OctalBinaireUnix
7111rwx
6110rw-
5101r-x
4100r--
3011-wx
2010-w-
1001--x
0000---

Exercice : créez un fichier et attribuez lui les 2^9 combinaisons de droits possibles :

Voici un exemple de script qui donne successivement à un fichier l'ensemble des droits possibles (hors droits spéciaux) :


#!/bin/bash

file=dump
touch $file

for ((i=0;i<=7;i=i+1)); do
	for ((j=0;j<=7;j=j+1)); do
		for ((k=0;k<=7;k=k+1)); do
			chmod $i$j$k $file
			ls -l $file
		done
	done
done

rm $file

vanvincq@CP2L ~/Bureau $ ./crazy_chmod | head -n 50
---------- 1 vanvincq vanvincq 0 14 avril 22:56 dump
---------x 1 vanvincq vanvincq 0 14 avril 22:56 dump
--------w- 1 vanvincq vanvincq 0 14 avril 22:56 dump
--------wx 1 vanvincq vanvincq 0 14 avril 22:56 dump
-------r-- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-------r-x 1 vanvincq vanvincq 0 14 avril 22:56 dump
-------rw- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-------rwx 1 vanvincq vanvincq 0 14 avril 22:56 dump
------x--- 1 vanvincq vanvincq 0 14 avril 22:56 dump
------x--x 1 vanvincq vanvincq 0 14 avril 22:56 dump
------x-w- 1 vanvincq vanvincq 0 14 avril 22:56 dump
------x-wx 1 vanvincq vanvincq 0 14 avril 22:56 dump
------xr-- 1 vanvincq vanvincq 0 14 avril 22:56 dump
------xr-x 1 vanvincq vanvincq 0 14 avril 22:56 dump
------xrw- 1 vanvincq vanvincq 0 14 avril 22:56 dump
------xrwx 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w---- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w---x 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w--w- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w--wx 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w-r-- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w-r-x 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w-rw- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----w-rwx 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wx--- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wx--x 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wx-w- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wx-wx 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wxr-- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wxr-x 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wxrw- 1 vanvincq vanvincq 0 14 avril 22:56 dump
-----wxrwx 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r----- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r----x 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r---w- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r---wx 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r--r-- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r--r-x 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r--rw- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r--rwx 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-x--- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-x--x 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-x-w- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-x-wx 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-xr-- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-xr-x 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-xrw- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----r-xrwx 1 vanvincq vanvincq 0 14 avril 22:56 dump
----rw---- 1 vanvincq vanvincq 0 14 avril 22:56 dump
----rw---x 1 vanvincq vanvincq 0 14 avril 22:56 dump

40.4.1.1. Les options particulières

Il existe trois autres options de gestion de droits :

  • l’option X permet d’affecter les répertoires sans toucher aux fichiers, sauf si ceux-ci sont au préalable exécutables,

  • l’option s utilise l’ID du propriétaire ou du groupe lors de son exécution,

  • l’option t, placée sur un répertoire, empêche quiconque autre que le propriétaire d’effacer un fichier dans ce répertoire.

Imaginons un instant que nous souhaitons mettre en place un partage commun accessible via FTP. Le problème majeur est que si le répertoire commun a un droit d'écriture, toute personne membre du même groupe sera succeptible de supprimer n'importe quel fichier s'y trouvant à l'intérieur. Ce qui est extrêmement dans notre situation.

Exemple concret de la situation :


vanvincq@CP2L /home/ftp $ ls -l
drwxrwx--- 2 ftp  ftp  4096 15 avril 11:02 tmp

Nous disposons ici d'un répertoire appartenant à l'utilisateur et au groupe ftp. Tout membre du groupe peut lire, écrite et exécuter. Toto et titi sont tous les deux membres du groupe ftp :


vanvincq@CP2L /home/ftp $ sudo -u toto id; sudo -u titi id
uid=1011(toto) gid=1011(toto) groupes=1011(toto),1010(ftp)
uid=1012(titi) gid=1012(titi) groupes=1012(titi),1010(ftp)

Toto crée son fichier toto_file :


$ pwd
/home/ftp/tmp
$ touch toto_file
$ ls -l
total 0
-rw-r--r-- 1 toto toto 0 15 avril 11:16 toto_file

Mais voilà, titi veut emmerder son monde en faisant un rm sur le fichier de toto :


$ pwd
/home/ftp/tmp
$ ls -l
total 0
-rw-r--r-- 1 toto toto 0 15 avril 11:19 toto_file
$ rm toto_file
rm : supprimer fichier vide (protégé en écriture) « toto_file » ? o
$ ls -l
total 0

Le fichier a bien été supprimé. La solution à ce problème consiste à employer le Sticky bit sur le dossier tmp. Ainsi, seul le propriétaire d'un fichier pourra supprimer son fichier. Les fichiers de Toto ne pourront plus être supprimés par Titi.


vanvincq@CP2L /home/ftp $ sudo chmod +t tmp/
vanvincq@CP2L /home/ftp $ ls -ld tmp/
drwxrwx--T 2 ftp ftp 4096 15 avril 11:25 tmp/

$ touch toto_file
$ ls -l
total 0
-rw-r--r-- 1 toto toto 0 15 avril 11:25 toto_file

$ rm toto_file
rm : supprimer fichier vide (protégé en écriture) « toto_file » ? o
rm: impossible de supprimer « toto_file »: Opération non permise

Concernant le setuid et setgid, il peut être intéressant de jeter un oeil sur les droits du fichier /usr/bin/passwd.


vanvincq@CP2L /home/ftp $ ls -l /usr/bin/passwd 
-rwsr-xr-x 1 root root 43280 15 févr.  2011 /usr/bin/passwd

Cela permet d'acquérir temporairement les droits du propriétaire (ici root) le temps de l'exécution de la commande. Ainsi, si un utilisateur souhaite changer de mot de passe, il pourra via cette commande mettre à jour le fichier /etc/passwd.

L'exécution spécial (X) n'est vraiment utile quand dans les cas récursifs.

Situation initiale :


vanvincq@CP2L /home $ ls -Rl aaa/
aaa/:
total 4
drwxr-xr-x 3 root root 4096 15 avril 11:50 bbb
-rw-r--r-- 1 root root    0 15 avril 11:50 file

aaa/bbb:
total 4
drwxr-xr-x 2 root root 4096 15 avril 11:49 ccc
-rw-r--r-- 1 root root    0 15 avril 11:50 fff

aaa/bbb/ccc:
total 0

Comparaison entre +x et +X :


vanvincq@CP2L /home $ sudo chmod -R a+rx aaa
vanvincq@CP2L /home $ ls -Rl aaa/
aaa/:
total 4
drwxr-xr-x 3 root root 4096 15 avril 11:50 bbb
-rwxr-xr-x 1 root root    0 15 avril 11:50 file

aaa/bbb:
total 4
drwxr-xr-x 2 root root 4096 15 avril 11:49 ccc
-rwxr-xr-x 1 root root    0 15 avril 11:50 fff

aaa/bbb/ccc:
total 0

vanvincq@CP2L /home $ sudo chmod -R a+rX aaa
vanvincq@CP2L /home $ ls -Rl aaa/
aaa/:
total 4
drwxr-xr-x 3 root root 4096 15 avril 11:52 bbb
-rw-r--r-- 1 root root    0 15 avril 11:52 file

aaa2/bbb:
total 4
drwxr-xr-x 2 root root 4096 15 avril 11:52 ccc
-rw-r--r-- 1 root root    0 15 avril 11:52 fff

aaa2/bbb/ccc:
total 0

Ainsi, l'exécution spéciale permet d'affecter le droit x sur les répertoires (peu importe leurs droits actuels) et sur les fichiers avec au moins 1 bit d'exécution (que ce soit sur u, g ou o).

40.4.2. Chiffrement du système de fichier

Lorsque l'on installe un système, ou que l'on apporte un média de stockage, on peut souhaiter que ces derniers ne soient pas accessibles à tous et les protéger. La solution se trouve dans cryptofs. Ce système intégré au noyau vous permet de chiffrer entièrement un fichier conteneur ou une partition. Il faut cependant rester prudent, car en cas de perte de mot de passe, vous pourriez perdre les informations contenues à l’intérieur.

Cet article explique comment employer cette technologie.

40.5. Les services

À l’installation de notre système préféré, de nombreux logiciels vont tenter de se glisser à notre insu dans les logiciels à installer. Par la suite, nous aurons peut être la surprise de découvrir que ces derniers sont en fait des services serveurs qui ouvrent des portes vers votre machine. Pour ce faire, ils utilisent le système de démarrage, en général init.d, qui lie les services dans les différents répertoires rcX.d.

Ce qu’il faut savoir, c’est que chaque lien indique au service de démarrer ou s’arrêter. Pour se faire, il commence par une lettre, S pour démarrer et K pour s’arrêter, un nombre qui définit son ordre de démarrage et le nom du service. Une manière de savoir quels services sont démarrés se trouve être la commande netstat. Avec les options adéquates, nous saurons tout de suite ce qui est à l’écoute sur votre système. Pour ce faire nous pouvons par exemple utiliser cet ensemble d’options en tant qu’administrateur :


vanvincq@CP2L ~ $ sudo netstat -tupanw
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Adresse locale          Adresse distante        Etat        PID/Program name
tcp        0      0 0.0.0.0:53101           0.0.0.0:*               LISTEN      1114/rpc.statd  
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1102/portmap    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2012/sshd       
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1649/cupsd      
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2043/exim4      
tcp        0      0 0.0.0.0:389             0.0.0.0:*               LISTEN      1801/slapd      
tcp6       0      0 :::139                  :::*                    LISTEN      2074/smbd       
tcp6       0      0 :::80                   :::*                    LISTEN      1447/apache2    
tcp6       0      0 :::22                   :::*                    LISTEN      2012/sshd       
tcp6       0      0 ::1:631                 :::*                    LISTEN      1649/cupsd      
tcp6       0      0 ::1:25                  :::*                    LISTEN      2043/exim4      
tcp6       0      0 :::445                  :::*                    LISTEN      2074/smbd       
tcp6       0      0 :::389                  :::*                    LISTEN      1801/slapd      
udp        0      0 0.0.0.0:68              0.0.0.0:*                           1364/dhclient   
udp        0      0 0.0.0.0:866             0.0.0.0:*                           1114/rpc.statd  
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           1570/avahi-daemon: 
udp        0      0 0.0.0.0:111             0.0.0.0:*                           1102/portmap    
udp        0      0 0.0.0.0:631             0.0.0.0:*                           1649/cupsd      
udp        0      0 192.168.0.255:137       0.0.0.0:*                           2071/nmbd       
udp        0      0 192.168.0.10:137        0.0.0.0:*                           2071/nmbd       
udp        0      0 0.0.0.0:137             0.0.0.0:*                           2071/nmbd       
udp        0      0 192.168.0.255:138       0.0.0.0:*                           2071/nmbd       
udp        0      0 192.168.0.10:138        0.0.0.0:*                           2071/nmbd       
udp        0      0 0.0.0.0:138             0.0.0.0:*                           2071/nmbd       
udp        0      0 0.0.0.0:48015           0.0.0.0:*                           1570/avahi-daemon: 
udp        0      0 0.0.0.0:35230           0.0.0.0:*                           1114/rpc.statd  
udp6       0      0 :::5353                 :::*                                1570/avahi-daemon: 
udp6       0      0 :::41471                :::*                                1570/avahi-daemon: 

Plutôt que de supprimer les liens à la main, il est préférable d'utiliser la commande rcconf (ou chkconfig, sysv-rc-conf, etc.) qui fera très bien le travail pour nous.

Exercice : identifiez les services intempestifs et arrêtez-les :

Un des exercices intéressant consiste à observer les services fonctionnant actuellement et de supprimer (ou stopper) ceux qui ne servent à rien. Cet exercice a déjà été réalisé dans une précédente partie. Je vous invite à suivre ce lien pour y accéder.

40.6. Le pare-feu

Si l'on ne compte pas installer un serveur ouvert à tout vent sur un poste de travail, on peut appliquer les règles suivantes comme une approche spécifique de la protection :


iptables -P INPUT DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

La première ligne interdit tout flux d’entrée par défaut, la deuxième n’autorise que ceux ayant déjà été autorisés par une connexion sortante. Si vous avez besoin de travailler sur des serveurs, privilégiez un fonc- tionnement en localhost et parlez-en à votre firewall.

40.7. Le serveur graphique

Vous avez deux grandes possibilités d’utiliser votre système d’exploitation. Soit par la ligne de commande, soit en mode graphique. Dans ce deuxième cas, vous pouvez soit le démarrer à partir de la ligne de commande après vous être loggué, soit utiliser un gestionnaire de démarrage du type de gdm. Si vous êtes dans le premier cas, veillez à ce que les touches de fermeture du serveur X (ctrl+alt+backspace) ne soit disponible qu’après avoir entré un mot de passe. Dans le cas contraire, n’importe qui pourra fermer votre session X et profiter de votre session shell pour s’installer à son aise. De plus, lorsque vous êtes en mode graphique, pensez à configurer votre écran de veille afin que celui-ci se déclenche au bout de quelques minutes d’inactivité de votre part, en protégeant le retour à la normale par un mot de passe. De ce fait, si vous devez vous absenter de votre poste de travail, personne n’aura le loisir de venir jouer avec votre session, d’autant plus si vous possédez une commande qu’il suffit de lancer dès que vous devez vous absenter.