date: 07 Oct 2009 title: Home serveur : premiers réglages tags: grub, auto-hébergement, planet-libre, sudo xrefs: home-serveur-tri-du-courrier-avec-sieve.txt, home-serveur-installation-du-serveur-web.txt, home-serveur-configuration-du-serveur-imap-dovecot.txt, home-serveur-proteger-son-serveur-configuration-du-pare-feu.txt, home-serveur-proteger-son-serveur-configuration-de-fail2ban.txt, home-serveur-recuperer-ses-mail-avec-fetchmail.txt, home-serveur-installation.txt, home-serveur-quelques-astuces-bien-utiles.txt, home-serveur-configuration-du-serveur-de-mail-postfix.txt, home-serveur-utilisation-de-cles-pour-ssh.txt, home-serveur-openssh.txt, home-serveur-sauvegarde-des-maildirs.txt Dans cette article, on ne vas pas encore installer de service, juste quelques réglages par ci par là dans le système. Avant de vous lancer dans la configuration de votre serveur, vous devez tenir à jour un fichier dans lequel vous inscrivez tous ce que vous faite (installation de paquets, modification d'un fichier de config, ...). Je sais par expérience que c'est très dur à garder à jour, mais c'est aussi très efficace pour savoir ce qu'on a fait dessus (surtout 1 an plus tard) et pour mieux trouver une source d'erreur. C'est en quelque sorte un fichier log de nous même (de nos actions sur le serveur), comme un service tournant sur le serveur tient à jour un fichier de log qui lui est propre. ## Sudo Par défaut, Debian n'installe pas sudo. C'est donc la première chose que nous allons faire, pour éviter ainsi de se connecter sur le compte root du serveur. Donc connectez vous en root (profitez en bien, se sera la première et la dernière fois ;) ), puis installez le paquet sudo : apt-get install sudo Ensuite on va créer un nouveau groupe sur le serveur : sysadmin. Les membres de se groupe auront le droit d'utiliser sudo (et donc d'exécuter des commande d'administration). C'est pratique si vous êtes plusieurs administrateurs, vous n'aurez qu'à ajouter votre login au groupe sysadmin. addgroup sysadmin adduser romain sysadmin Répétez la dernière commande si vous voulez ajouter d'autres administrateurs. À présent, il va falloir attribuer les droits de sudo au groupe sysadmin. On va donc éditer la configuration de sudo visudo Vous êtes en face du fichier /etc/sudoers. Repérez la ligne root ALL=(ALL) ALL et recopiez la juste en dessous en changeant root par %sysadmin %sysadmin ALL=(ALL) ALL Enregistrez et quittez (Ctrl+X), puis déconnectez vous du compte root (Ctrl+D) Et voila, maintenant vous pouvez essayer d'exécuter une commande avec sudo, sous votre compte, par exemple sudo apt-get update ## Éditeur de texte Comme nous allons faire beaucoup de configuration dans les fichiers, il est impératif que vous soyez à l'aise avec au moins un éditeur de texte. Le mieux est de choisir un éditeur de texte avancé comme Vim ou Emacs, mais si vous ne vous en êtes jamais servi, mieux vaut choisir Nano, beaucoup plus simple. Personnellement, je vais utiliser Vim, car je le connaît bien. Vous aurez peut-être remarqué que la commande vim est déjà présente sur le système. Mais c'est un vim limité (entre vi et le vrai vim) qui est fourni par le paquet vim-tiny. Nous, nous allons installer le vrai :) sudo apt-get remove vim-tiny sudo apt-get install vim Ensuite, de la customisation ! Je ne vais pas vous détailler le fichier de configuration de Vim, ce n'est pas le sujet, et de plus c'est à adapter à vos habitudes. Je met le mien en [exemple](http://univers-libre.net/atelecharger/vimrc), au menu : coloration syntaxique, numérotation des lignes, indentation, ... Pour le télecharger : wget http://billux13.servhome.org/atelecharger/vimrc ## Bash Vous pouvez configurer bash (ou même installer un autre interpréteur de commande, comme zsh) selon vos besoin également, je vous invite à voir deux de mes premiers articles sur le sujet ([configuration du prompt](http://billux13.servhome.org/?p=6) et [alias](http://billux13.servhome.org/?p=8)). Enfin n'oubliez pas de définir la variable d'environnement $EDITOR. Elle contient votre éditeur préféré et est utilisée par des programmes qui utilisent un éditeur de texte (comme visudo par exemple). Par défaut, et vous avez du le remarquer, c'est nano qui est appelé. Rajoutez donc cette ligne au .bashrc : EDITOR=vim puis, pour prendre en compte vos modification sans vous déconnectez : source .bashrc ## Grub Tout de suite, corrigeons une faille de sécurité dans grub : par défaut, n'importe qui ayant accès à la machine peut booter en mode recovery et donc être connecté automatiquement sur le compte root. Avant tout, il faut simuler un clavier AZERTY dans grub pour ne pas avoir de surprise quand il s'agira de taper le mot de passe ;) Premièrement, téléchargez le fichier contenant le «mappage» du clavier pour grub (merci [la doc d'Ubuntu](http://doc.ubuntu-fr.org/grub#utiliser_un_clavier_azerty_dans_grub)): wget http://billux13.servhome.org/atelecharger/grub_azerty Passez en root (sudo ne permet pas de faire ce genre de manip) su Puis ajoutez le au fichier /boot/grub/menu.lst cat grub_azerty >> /boot/grub/menu.lst Ces lignes ont besoin d'être placées au début du fichier, donc déplacez les avec votre éditeur de texte. Déconnecter vous (Ctrl+D) puis supprimez le fichier qui n'est plus nécessaire rm grub_azerty Nous pouvons maintenant définir un mot de passe : sudo grub md5crypt grub vous donne l'empreinte de votre mot de passe, du style $1$gLhU0/$aW78kHKQzaVdP2b2znUoe/ Quittez grub quit Et retournez dans le fichier menu.lst, pour y rajouter password --md5 empreinte_du_mot_de_passe Enfin recherchez la ligne lockalternative=false pour remplacer false par true pour protéger tous les noyaux en mode recovery (y compris les futurs qui s'ajouterons). N'oubliez pas de mettre à jour grub sudo update-grub Ouf c'est terminé ! Faite quand même un essai, pour voir. Dans le prochain article, nous verrons la configuration d'OpenSSH.