Configuration initiale du serveur avec Debian 9

introduction

Lorsque vous créez un nouveau serveur Debian 9, vous devez suivre quelques étapes de configuration lors de la configuration de base. Cela augmentera la sécurité et la convivialité de votre serveur et vous donnera une base solide pour les actions suivantes.

Première étape - Connexion en tant que racine

Pour vous connecter à votre serveur, vous devez connaître l’adresse IP publique de votre * serveur *. Vous aurez également besoin du mot de passe ou, si vous avez installé une clé SSH pour l’authentification, de la clé privée pour le compte de l’utilisateur * root *. Si vous n’êtes pas déjà connecté à votre serveur, vous pouvez suivre notre guide sur how to connectez-vous à votre Droplet avec SSH, qui couvre ce processus en détail.

Si vous n’êtes pas déjà connecté à votre serveur, continuez et connectez-vous en tant qu’utilisateur * root * à l’aide de la commande suivante (remplacez la partie en surbrillance de la commande par l’adresse IP publique de votre serveur):

ssh root@

Acceptez l’avertissement concernant l’authenticité de l’hôte s’il apparaît. Si vous utilisez une authentification par mot de passe, entrez votre mot de passe * root * pour vous connecter. Si vous utilisez une clé SSH protégée par une phrase secrète, vous pouvez être invité à saisir la phrase secrète lors de la première utilisation de la clé à chaque session. Si vous vous connectez pour la première fois au serveur avec un mot de passe, vous pouvez également être invité à modifier le mot de passe * root *.

À propos de la racine

L’utilisateur * root * est l’utilisateur administratif dans un environnement Linux doté de privilèges très étendus. En raison des privilèges élevés du compte * root *, vous êtes déconseillé de l’utiliser régulièrement. En effet, une partie du pouvoir inhérent au compte * root * réside dans sa capacité à effectuer des modifications très destructrices, même par accident.

L’étape suivante consiste à configurer un compte d’utilisateur alternatif avec une influence réduite pour le travail quotidien. Nous allons vous apprendre à obtenir des privilèges plus importants lorsque vous en avez besoin.

Deuxième étape - Créer un nouvel utilisateur

Une fois que vous êtes connecté en tant que * root *, nous sommes prêts à ajouter le nouveau compte utilisateur que nous utiliserons désormais pour vous connecter.

Cet exemple crée un nouvel utilisateur appelé * sammy *, mais vous devez le remplacer par un nom d’utilisateur que vous aimez:

adduser

On vous posera quelques questions, en commençant par le mot de passe du compte.

Entrez un mot de passe fort et, éventuellement, renseignez les informations supplémentaires si vous le souhaitez. Ce n’est pas obligatoire et vous pouvez simplement appuyer sur + ENTER + dans n’importe quel champ que vous souhaitez ignorer.

Troisième étape - Octroi de privilèges administratifs

Nous avons maintenant un nouveau compte utilisateur avec des privilèges de compte réguliers. Cependant, nous pouvons parfois avoir besoin de tâches administratives.

Pour éviter de devoir vous déconnecter de notre utilisateur normal et vous reconnecter en tant que compte * root *, nous pouvons configurer ce que nous appelons les privilèges «superutilisateur» ou * root * pour notre compte normal. Cela permettra à notre utilisateur normal d’exécuter des commandes avec des privilèges d’administrateur en plaçant le mot + sudo + avant chaque commande.

Pour ajouter ces privilèges à notre nouvel utilisateur, nous devons ajouter le nouvel utilisateur au groupe * sudo *. Par défaut, sous Debian 9, les utilisateurs appartenant au groupe * sudo * sont autorisés à utiliser la commande + sudo +.

En tant que * root *, exécutez cette commande pour ajouter votre nouvel utilisateur au groupe * sudo * (remplacez le mot en surbrillance par votre nouvel utilisateur):

usermod -aG sudo

Maintenant, lorsque vous êtes connecté en tant qu’utilisateur régulier, vous pouvez taper + sudo + before pour exécuter des actions avec les privilèges de superutilisateur.

Quatrième étape - Configuration d’un pare-feu de base

Les serveurs Debian peuvent utiliser des pare-feu pour s’assurer que seules les connexions à certains services sont autorisées. Bien que le pare-feu + iptables + soit installé par défaut, Debian déconseille fortement l’utilisation d’un pare-feu spécifique. Dans ce guide, nous allons installer et utiliser le pare-feu UFW pour aider à définir des stratégies et à gérer des exceptions.

Nous pouvons utiliser le gestionnaire de paquets + apt + pour installer UFW. Mettez à jour l’index local pour récupérer les informations les plus récentes sur les packages disponibles, puis installez le pare-feu en tapant:

apt update
apt install ufw

Les profils de pare-feu permettent à UFW de gérer des ensembles de règles de pare-feu pour les applications par nom. Les profils de certains logiciels courants sont associés par défaut à UFW et les packages peuvent enregistrer des profils supplémentaires avec UFW pendant le processus d’installation. OpenSSH, le service qui nous permet maintenant de nous connecter à notre serveur, a un profil de pare-feu que nous pouvons utiliser.

Vous pouvez le voir en tapant:

ufw app list
OutputAvailable applications:
 . . .
 OpenSSH
 . . .

Nous devons nous assurer que le pare-feu autorise les connexions SSH afin que nous puissions nous reconnecter la prochaine fois. Nous pouvons permettre ces connexions en tapant:

ufw allow OpenSSH

Ensuite, nous pouvons activer le pare-feu en tapant:

ufw enable

Tapez “` + a + ” et appuyez sur `+ ENTER pour continuer. Vous pouvez voir que les connexions SSH sont toujours autorisées en tapant:

ufw status
OutputStatus: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

Étant donné que * le pare-feu bloque actuellement toutes les connexions, à l’exception de SSH *, si vous installez et configurez des services supplémentaires, vous devrez ajuster les paramètres de pare-feu pour autoriser un trafic acceptable. Vous pouvez apprendre certaines opérations UFW courantes dans this guide.

Cinquième étape - Activation de l’accès externe pour votre utilisateur régulier

Maintenant que nous avons un utilisateur régulier pour une utilisation quotidienne, nous devons nous assurer que nous pouvons directement SSH dans le compte.

Le processus de configuration de l’accès SSH pour votre nouvel utilisateur varie selon que le compte * racine * de votre serveur utilise un mot de passe ou des clés SSH pour l’authentification.

Si le compte racine utilise l’authentification par mot de passe

Si vous vous êtes connecté à votre compte * root * en utilisant un mot de passe_, l’authentification par mot de passe est activée pour SSH. Vous pouvez SSH sur votre nouveau compte utilisateur en ouvrant une nouvelle session de terminal et en utilisant SSH avec votre nouveau nom d’utilisateur:

ssh @

Après avoir entré le mot de passe de votre utilisateur habituel, vous serez connecté. N’oubliez pas que si vous devez exécuter une commande avec des privilèges d’administrateur, tapez + sudo avant comme ceci:

sudo

Votre mot de passe utilisateur habituel vous sera demandé lors de la première utilisation de + sudo + à chaque session (et périodiquement par la suite).

Pour améliorer la sécurité de votre serveur *, nous vous recommandons vivement de configurer des clés SSH au lieu d’utiliser une authentification par mot de passe *. Suivez notre guide sur en configurant les clés SSH sur Debian 9 pour apprendre à configurer les clés l’authentification à base de.

Si le compte racine utilise l’authentification par clé SSH

Si vous vous êtes connecté à votre compte * root * à l’aide de clés SSH_, l’authentification par mot de passe est définie sur disabled pour SSH. Vous devrez ajouter une copie de votre clé publique locale au fichier + ~ / .ssh / registered_keys du nouvel utilisateur pour vous connecter avec succès.

Étant donné que votre clé publique se trouve déjà dans le fichier + ~ / .ssh / registered_keys + du compte * root *, nous pouvons copier ce fichier et cette structure de répertoires dans notre nouveau compte d’utilisateur dans notre session existante à l’aide de la commande + cp + . Ensuite, nous pouvons ajuster la propriété des fichiers à l’aide de la commande + chown +.

Assurez-vous de modifier les parties en surbrillance de la commande ci-dessous pour qu’elles correspondent au nom de votre utilisateur habituel:

cp -r ~/.ssh /home/
chown -R : /home//.ssh

Maintenant, ouvrez une nouvelle session de terminal et utilisez SSH avec votre nouveau nom d’utilisateur:

ssh @

Vous devez être connecté au nouveau compte d’utilisateur sans utiliser de mot de passe. Souvenez-vous que si vous avez besoin d’exécuter une commande avec des privilèges d’administrateur, tapez + sudo + comme suit:

sudo

Votre mot de passe utilisateur habituel vous sera demandé lors de la première utilisation de + sudo + à chaque session (et périodiquement par la suite).

Étape six - Fin de la configuration facultative

Maintenant que la configuration de base est solide, nous pouvons envisager quelques étapes facultatives pour rendre le système plus accessible. Les sections suivantes couvrent quelques modifications supplémentaires axées sur la convivialité.

Installation de pages man

Debian fournit des manuels détaillés pour la plupart des logiciels sous la forme de pages "+ man ". Cependant, la commande ` man +` n’est pas toujours incluse par défaut pour les installations minimales.

Installez le paquet + man-db + pour installer la commande + man + et les bases de données manuelles:

sudo apt install man-db

Maintenant, pour afficher le manuel d’un composant, vous pouvez taper:

man

Par exemple, pour afficher le manuel de la commande + top +, tapez:

man top

La plupart des paquets dans les référentiels Debian incluent des pages de manuel dans le cadre de leur installation.

Changer l’éditeur par défaut

Debian propose une grande variété d’éditeurs de texte, dont certains sont inclus dans le système de base. Les commandes prenant en charge l’éditeur intégré, telles que + visudo et` + systemctl edit`, transmettent le texte à la commande + editor, qui est mappée à l’éditeur par défaut du système. La définition de l’éditeur par défaut en fonction de vos préférences peut vous aider à configurer votre système plus facilement et à éviter les frustrations.

Si votre éditeur préféré n’est pas installé par défaut, utilisez d’abord + apt +:

sudo apt install

Ensuite, vous pouvez afficher la valeur par défaut actuelle et modifier la sélection à l’aide de la commande + update-alternatives +:

sudo update-alternatives --config editor

La commande affiche un tableau des éditeurs connus avec une invite à changer le nom par défaut:

OutputThere are 8 choices for the alternative editor (providing /usr/bin/editor).

 Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/joe         70        auto mode
 1            /bin/nano            40        manual mode
 2            /usr/bin/jmacs       50        manual mode
 3            /usr/bin/joe         70        manual mode
 4            /usr/bin/jpico       50        manual mode
 5            /usr/bin/jstar       50        manual mode
 6            /usr/bin/rjoe        25        manual mode
 7            /usr/bin/vim.basic   30        manual mode
 8            /usr/bin/vim.tiny    15        manual mode

Press <enter> to keep the current choice[*], or type selection number:

L’astérisque dans la colonne la plus à gauche indique la sélection en cours. Pour changer la valeur par défaut, tapez le numéro «Sélection» de votre éditeur préféré et appuyez sur + Entrée +. Par exemple, pour utiliser + nano + comme éditeur par défaut étant donné le tableau ci-dessus, nous choisirions + 1 +:

OutputPress <enter> to keep the current choice[*], or type selection number:
update-alternatives: using /bin/nano to provide /usr/bin/editor (editor) in manual mode

À partir de maintenant, votre éditeur préféré sera utilisé par des commandes telles que + visudo + et + systemctl edit +, ou lorsque la commande + editor + est appelée.

Où aller en partant d’ici?

À ce stade, votre serveur repose sur une base solide. Vous pouvez maintenant installer n’importe quel logiciel dont vous avez besoin sur votre serveur.