10.9. Préparation de sécurité (avant de vous connecter)

OK, vous avez vérifié tout votre système, et estimé qu'il était aussi sûr que possible, et vous êtes prêt à le mettre en ligne. Il y a quelques petites choses que vous devriez faire maintenant pour vous préparer à une intrusion, de sorte que vous puissiez rapidement déjouer l'intrus, récupérer le système et sa bonne marche.

10.9.1. Faites une sauvegarde complète de votre machine

Discuter des méthodes de sauvegarde et de stockage est hors de la portée de ce chapitre mais voici quelques mots au sujet des sauvegardes et de la sécurité :

Si vous avez moins de 650Mo de données sur une partition, une copie sur CD-R de vos données est un bon moyen (difficile à modifier ensuite, et, si stocké correctement, peut durer longtemps). Bandes et autres médias réinscriptibles devraient être protégés contre l'écriture dès que la sauvegarde est complète, puis vérifiés pour empêcher la modification. Assurez vous de stocker vos sauvegardes dans un endroit sûr hors ligne. Une bonne sauvegarde vous fournira un bon point de départ pour restaurer votre système.

10.9.2. Choisir un bon planning de sauvegardes

Un cycle à six bandes est facile à gérer. Il comprends quatre bandes pour la semaine, une pour chaque vendredi pair, et une dernière pour les vendredis impairs. Faites une sauvegarde incrémentale chaque jour, et une sauvegarde complète sur la bande du vendredi appropriée. Si vous faites un changement particulièrement important ou ajoutez des données importantes à votre système, une sauvegarde complète est recommandée.

10.9.3. Tester vos sauvegardes

Vous devriez faire des tests périodiques de vos copies de sauvegarde pour vous assurer qu'elles fonctionnent correctement. Les restaurations de fichiers et leur vérification auprès des données réelles, la taille et le listage des copies, et la lecture de vieilles copies de sauvegarde devraient être faites sur une base régulière.

10.9.4. Sauvegardez votre base de données RPM

Dans l'éventualité d'une intrusion, vous pouvez utiliser votre base de données RPM comme vous utiliseriez tripwire, mais uniquement si vous pouvez être sûr qu'elle n'a pas été modifiée elle non plus. Vous devriez copier votre base de données RPM sur une disquette, et garder tout le temps cette dernière hors-ligne.

Les fichiers /var/lib/rpm/fileindex.rpm et /var/lib/rpm/packages.rpm ne tiendront sans doute pas sur une seule disquette. Mais compressés, ils devraient tenir chacun sur une.

Maintenant, si votre système est corrompu, vous pouvez utiliser la commande :

			root#  rpm -Va
pour vérifier tous les fichiers du système. Consultez la page de man de rpm, car il y a quelques autres options qui peuvent être inclues pour le rendre moins verbeux. Gardez à l'esprit que vous devez aussi être sûr que votre binaire RPM n'a pas lui aussi été corrompu.

Cela signifie que chaque fois qu'un nouveau RPM est ajouté au système, la base de données RPM devra être archivée à nouveau. Vous devrez peser les avantages et les inconvénients.

10.9.5. Gardez trace des données de journalisation du système

Il est très important que l'information générée par syslog ne soit pas corrompue. Rendre les fichiers de /var/log en lecture et écriture par un seul petit nombre d'utilisateurs est un bon début.

Assurez vous de garder un œil sur ce qui y est écrit, spécialement sous la rubrique auth. Des échecs de connexion répétés par exemple, peuvent révéler une tentative de viol.

Vous pourrez regarder dans /var/log et consulter messages, mail.log, et d'autres.

Vous voudrez aussi configurer votre script de rotation des logs pour les garder plus longtemps de sorte que vous ayez le temps de les examiner. Jetez un coup d'œil à la commande logrotate et sa page de man.

Si vos fichiers de logs ont été corrompus, essayez de déterminer à partir de quand commence la corruption, et quelles choses semblent être corrompues. Y a-t-il de longues périodes sans logs? Regarder dans les sauvegardes les fichiers de logs originels est une bonne idée.

Les intrus modifient généralement les fichiers de logs pour effacer leurs traces, mais on devrait néanmoins y chercher des événements inhabituels. Vous pourriez remarquer l'intrus en train d'essayer d'obtenir l'accès, ou exploiter un programme pour obtenir le compte root. Vous devriez voir des entrées de log avant que l'intrus n'ait eu le temps de les modifier.

Vous devriez aussi vous assurer de bien séparer les entrées auth des autres données de log, y inclus les tentatives de changer d'utilisateur en utilisant su, tentatives de connexion, et autres informations des comptes utilisateurs.

Si possible, configurez syslog pour envoyer une copie des données les plus importantes vers un système sûr. Cela empêchera un intrus d'effacer ses traces en effaçant ses tentatives de login/su/ftp/etc. Voir la page de man de syslog.conf, et consulter l'option @.

Il y a plusieurs programmes syslogd plus évolués. Consultez http://www.core-sdi.com/ssyslog/ pour Secure Syslog. Secure Syslog vous permet de crypter vos entrées syslog et vous assure que personne ne les a modifiées.

Un autre syslogd avec plus de fonctions est syslog-ng. Il permet beaucoup plus de flexibilité dans la journalisation et peut crypter vos flots syslog distants pour empêcher leur corruption.

Enfin, les fichiers de log sont encore plus inutiles lorsque personne ne les lit. Prenez un peu de temps régulièrement pour parcourir vos fichiers de log, et imprégnez vous de ce à quoi ils ressemblent les jours normaux. Cela peut vous aider à repérer les choses anormales.

10.9.6. Appliquez toutes les nouvelles mises à jour système.

A cause du rythme rapide des correctifs de sécurité, de nouveaux programmes (corrigés) sont sans arrêt publiés. Avant de connecter votre machine au réseau, c'est une bonne idée de lancer MandrakeUpdate (sur une autre machine connectées à Internet bien sûr) et installer tous les paquetages mis à jour depuis que vous avez reçu vos CD-ROM. Souvent, ces paquetages contiennent d'importants correctifs de sécurité, c'est donc une bonne idée de les installer.