Dix choses à faire après l’installation d’un serveur sous Debian
Après avoir installé, ou commandé, une machine sous debian, voici les dix actions supplémentaires que je trouve indispensables d’effectuer avant de commencer à utiliser sa machine.
1. Réglage des locales
J’ai eu la surprise, après la commande d’une dédibox, de voir les locales par défaut en français. J’aime bien cette langue, mais en informatique, l’anglais est de rigueur. Un petit dpkg-reconfigure locales
et le problème est réglé.
2. Configuration d’apt
Ensuite je configure apt pour qu’il ne m’installe pas automatiquement les paquets recommandés:
$ cat /etc/apt/apt.conf.d/00-recommend APT::Install-Recommends "false";
Apparemment je ne suis pas le seul à faire ainsi.
3. Installation de paquets supplémentaires
J’installe les paquets suivants, non fournis par défaut:
- screen
- sshfs
- git-core
- ethtool
- openssh-server
- less
- rsync
- iproute
- mtr-tiny
- bind9-host
- iputils-ping
- mlocate
- rsync
- etckeeper
- chrony
- tree
- emacs23-nox
4. Configuration etckeeper
Le logiciel etckeeper permet de garder un historique des modifications dans le répertoire /etc. C’est très pratique pour annuler des interventions, pour vérifier ce qu’on a fait, ou ce qu’un autre administrateur a fait. Mais par défaut le logiciel commit automatiquement les modifications présentes dans le répertoire, soit une fois par jour, soit à chaque appel d’aptitude (ou apt-get) qui installe ou supprime un logiciel. C’est pourquoi je dois le configurer pour empêcher ces commits automatiques.
AVOID_DAILY_AUTOCOMMITS=1 AVOID_COMMIT_BEFORE_INSTALL=1
5. Configuration du démon ssh - première partie
Je blinde ensuite le démon ssh. Voici les lignes que je modifie:
X11Forwarding no PermitRootLogin no PasswordAuthentication no AllowUsers admin etc…
En gros:
- je désactive l’envoi de session X11;
- je désactive l’authentification par mot de passe - seul la connexion par clé reste possible;
- j’explicite précisément les utilisateurs autorisés à se connecter.
6. Désactiver l’affichage des versions des logiciels
Bon, je sais, la sécurité par l’obscurité c’est pas bien. Mais mon côté parano me dit que cela ne peut pas faire de mal non plus. Ce n’est pas la peine de tendre le bâton pour être battu, même si une personne motivée trouvera un bâton de toute façon.
Apache
Dans le fichier conf.d/security j’active les balises suivantes:
ServerTokens Prod ServerSignature Off
Sshd: deuxième partie de la configuration du démon ssh
Les dernières version de ssh permettent d’éviter l’affichage de la version de debian par le démon ssh. Il suffit pour cela d’ajouter la directive suivante:
DebianBanner no
7. En vrac: configuration des logiciels
Ensuite je configure un certains nombres de logiciels dont la configuration par défaut ne me convient pas.
Par exemple screen:
$ cat /etc/screenrc escape ^Oo
Je choisis aussi emacs comme éditeur par défaut: update-alternatives --config editor
.
8. Desinstaller portmap
Qui utilise encore NFS? Pas moi.
9. S’inscrire à la liste de debian sécurité
Si cela n’est pas encore fait, c’est le moment de s’inscrire à la liste debian security announce.
S’inscrire aussi sur les listes de chaque logiciel installé manuellement, spécialement les logiciels web.
10. Vérification nmap
Dans le doute, on vérifie une nouvelle fois que la maison est bien fermée à clé:
nmap -sT my-server nmap -sU my-server