Recherche sur le site Web

Configuration initiale du serveur avec Ubuntu


Introduction

Lorsque vous créez un nouveau serveur Ubuntu, vous devriez effectuer certaines étapes de configuration importantes dans le cadre de la configuration initiale. Ces étapes amélioreront la sécurité et la convivialité de votre serveur et vous fourniront une base solide pour les actions ultérieures.

Ce tutoriel a été validé sur Ubuntu 22.04 LTS, 24.04 LTS et 24.10. Les commandes utilisent des paquets par défaut qui restent stables à travers les versions intermédiaires actuelles et les prochaines versions 25.x qui incluent par défaut apt, OpenSSH et UFW.

Points clés

  • Connectez-vous en tant que root : Apprenez comment accéder en toute sécurité à votre serveur Ubuntu pour la première fois.
  • Créer un utilisateur non-root : Ajoutez un compte utilisateur normal avec des privilèges sudo afin de réduire les risques de sécurité liés à l'utilisation quotidienne du compte root.
  • Configurer l'authentification par clé SSH : Configurez des clés SSH pour des connexions sécurisées sans mot de passe, et copiez votre clé publique vers le nouvel utilisateur.
  • Configurer le pare-feu avec UFW : Activez et testez le pare-feu simple (UFW) pour restreindre l'accès, en vous assurant de garder SSH ouvert pour éviter de vous verrouiller vous-même.
  • Valider l'accès avant de quitter le compte root : Assurez-vous que votre nouvel utilisateur peut utiliser sudo et se connecter via SSH avant de fermer la session root pour éviter de vous retrouver bloqué.
  • Les meilleures pratiques s'appliquent à plusieurs environnements : Ces étapes initiales s'appliquent aux machines virtuelles cloud, aux Droplets, aux VPS et aux serveurs physiques.

Déployez vos applications depuis GitHub en utilisant la plateforme d'applications Linux-Console.net. Laissez Linux-Console.net se charger de la mise à l'échelle de votre application.

Configuration initiale du serveur avec Ubuntu

  1. Connexion en tant que root
  2. Créer un nouvel utilisateur
  3. Accorder des privilèges administratifs
  4. Configuration d’un pare-feu
  5. Activer l’accès externe pour votre utilisateur régulier

Étape 1 - Se connecter en tant que root

Pour vous connecter à votre serveur, vous devrez connaître l’adresse IP publique de votre serveur. Vous aurez également besoin du mot de passe ou de la clé privée du compte utilisateur root si vous avez installé une clé SSH pour l’authentification. Si vous ne vous êtes pas encore connecté à votre serveur, vous voudrez peut-être suivre notre guide sur la façon de se connecter aux Droplets avec SSH, qui explique ce processus en détail.

Si vous n'êtes pas actuellement connecté à votre serveur, connectez-vous en tant qu'utilisateur root en utilisant la commande suivante. Remplacez la portion mise en évidence your_server_ip de la commande par l'adresse IP publique de votre serveur :

ssh root@your_server_ip

Acceptez l’avertissement concernant l’authenticité de l’hôte s’il apparaît. Si votre serveur utilise l’authentification par mot de passe, fournissez votre mot de passe root pour vous connecter. Si vous utilisez une clé SSH protégée par une phrase de passe, vous devrez peut-être entrer cette phrase de passe la première fois que vous utilisez la clé à chaque session. Si c’est la première fois que vous vous connectez au serveur avec un mot de passe, vous devrez peut-être également changer le mot de passe root. Suivez les instructions pour changer le mot de passe si vous recevez une invite.

À propos de la racine

L'utilisateur root est l'utilisateur administratif dans un environnement Linux avec des privilèges élevés. En raison des privilèges accrus du compte root, il est découragé de l'utiliser régulièrement. Le compte root peut effectuer des modifications très destructrices, même par accident.

L'étape suivante consiste à créer un nouveau compte utilisateur avec des privilèges réduits pour un usage quotidien. Plus tard, nous vous montrerons comment obtenir temporairement des privilèges accrus lorsqu'ils seront nécessaires.

Étape 2 - Création d'un nouvel utilisateur

Une fois que vous vous connecterez en tant que root, vous pourrez ajouter le nouveau compte utilisateur. À l'avenir, nous nous connecterons avec ce nouveau compte au lieu de root.

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

adduser sammy

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

Entrez un mot de passe fort et, au besoin, remplissez toute information supplémentaire que vous souhaitez. Ces informations ne sont pas obligatoires, et vous pouvez appuyer sur ENTRÉE dans n’importe quel champ que vous souhaitez ignorer.

Étape 3 - Accorder des privilèges administratifs

Vous avez maintenant un nouveau compte utilisateur avec des privilèges de compte standard. Cependant, il vous arrivera parfois d'effectuer des tâches administratives en tant qu'utilisateur root.

Pour éviter de vous déconnecter de votre utilisateur habituel et de vous reconnecter en tant que compte root, vous pouvez configurer ce qu’on appelle les privilèges de superutilisateur ou de root pour le compte régulier de votre utilisateur. Ces privilèges permettront à votre utilisateur normal d’exécuter des commandes avec des droits d’administration en mettant le mot sudo avant la commande.

Pour ajouter ces privilèges à votre nouvel utilisateur, vous devrez ajouter l'utilisateur au groupe système sudo. Par défaut sur Ubuntu, les utilisateurs qui sont membres du 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 nom d’utilisateur sammy en surbrillance par votre nouvel utilisateur) :

usermod -aG sudo sammy

Vous pouvez maintenant taper sudo avant les commandes pour les exécuter avec les privilèges superutilisateur lorsque vous êtes connecté en tant qu'utilisateur régulier.

Étape 4 - Configuration d’un pare-feu

Les serveurs Ubuntu peuvent utiliser le pare-feu UFW pour s'assurer que seules les connexions à certains services sont autorisées. Vous pouvez configurer un pare-feu de base en utilisant cette application.

Remarque : Si vos serveurs fonctionnent sur Linux-Console.net, vous pouvez éventuellement utiliser les pare-feux Cloud de Linux-Console.net au lieu du pare-feu UFW. Nous recommandons d'utiliser un seul pare-feu à la fois afin d'éviter des règles conflictuelles qui pourraient être difficiles à déboguer.

Les applications peuvent enregistrer leurs profils auprès de UFW lors de l'installation. Ces profils permettent à UFW de gérer ces applications par leur nom. OpenSSH, le service qui vous permet de vous connecter à votre serveur, a un profil enregistré auprès de UFW.

Vous pouvez consulter la liste des profils UFW installés en tapant :

ufw app list
Available applications:
  OpenSSH

Vous devrez vous assurer que le pare-feu permet les connexions SSH afin de pouvoir vous connecter à votre serveur la prochaine fois. Autorisez ces connexions en tapant :

ufw allow OpenSSH

Maintenant, activez le pare-feu en tapant :

ufw enable

Tapez y et appuyez sur ENTRÉE pour continuer. Vous pouvez voir que les connexions SSH sont toujours autorisées en tapant :

ufw status
Status: active

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

Le pare-feu bloque actuellement toutes les connexions sauf pour SSH. Si vous installez et configurez des services supplémentaires, vous devrez ajuster les paramètres du pare-feu pour permettre au nouveau trafic d'accéder à votre serveur. Vous pouvez apprendre quelques opérations courantes avec UFW dans notre guide UFW Essentials.

Pour ajouter l'accès HTTP plus tard, ne permettez que les services dont vous avez besoin :

ufw allow 80/tcp

ufw allow 443/tcp

Consultez Comment configurer un pare-feu avec UFW sur Ubuntu pour des modèles courants comme la limitation du débit et les règles spécifiques aux services.

Étape 5 - Activer l'accès externe pour votre utilisateur régulier

Maintenant que vous avez un utilisateur régulier pour un usage quotidien, vous devrez vous assurer de pouvoir vous connecter au compte directement via SSH.

Remarque : Jusqu'à ce que vous ayez vérifié que vous pouvez vous connecter et utiliser sudo avec votre nouvel utilisateur, nous vous recommandons de rester connecté en tant que root. Si vous rencontrez des problèmes de connexion, vous pouvez dépanner et apporter les modifications nécessaires en tant que root. Si vous utilisez un Droplet Linux-Console.net et que vous rencontrez des problèmes avec votre connexion SSH root, vous pouvez récupérer l'accès aux Droplets en utilisant la Console de récupération.

La configuration de l'accès SSH pour votre nouvel utilisateur dépend de savoir si le compte root de votre serveur utilise un mot de passe ou des clés SSH pour l'authentification.

Si le compte root utilise l'authentification par mot de passe

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

ssh sammy@your_server_ip

Après avoir saisi le mot de passe de votre utilisateur régulier, vous serez connecté. N'oubliez pas que si vous devez exécuter une commande avec des privilèges administratifs, tapez sudo devant comme ceci :

sudo command_to_run

Vous recevrez une invite pour le mot de passe de votre utilisateur habituel lorsque vous utiliserez sudo pour la première fois à chaque session (et périodiquement par la suite).

Pour améliorer la sécurité de votre serveur, nous recommandons fortement de configurer des clés SSH plutôt que d’utiliser l’authentification par mot de passe. Suivez notre guide sur la configuration des clés SSH sur Ubuntu pour apprendre comment configurer l’authentification par clé.

Si le compte root utilise l'authentification par clé SSH

Si vous vous êtes connecté à votre compte root en utilisant des clés SSH, alors l'authentification par mot de passe est désactivée pour SSH. Pour vous connecter en tant qu'utilisateur régulier avec une clé SSH, vous devez ajouter une copie de votre clé publique locale au fichier ~/.ssh/authorized_keys de votre nouvel utilisateur.

Puisque votre clé publique est déjà dans le fichier ~/.ssh/authorized_keys du compte root sur le serveur, vous pouvez copier ce fichier et la structure du répertoire dans votre nouveau compte utilisateur en utilisant votre session actuelle.

Le moyen le plus simple de copier les fichiers avec la propriété et les permissions correctes est d’utiliser la commande rsync. Cette commande copiera le répertoire .ssh de l’utilisateur root, préservera les permissions et modifiera les propriétaires des fichiers, le tout en une seule commande. Assurez-vous de changer les parties surlignées de la commande ci-dessous pour correspondre au nom de votre utilisateur régulier :

Remarque : La commande rsync traite différemment les sources et destinations qui se terminent par un slash final de celles qui n'en ont pas. Lors de l'utilisation de rsync ci-dessous, assurez-vous que le répertoire source (~/.ssh) n'inclut pas de slash final (vérifiez que vous n'utilisez pas ~/.ssh/).

Si vous ajoutez accidentellement une barre oblique à la fin de la commande, rsync copiera le contenu du répertoire ~/.ssh du compte root vers le répertoire personnel de l’utilisateur sudo au lieu de copier toute la structure du répertoire ~/.ssh. Les fichiers se retrouveront au mauvais endroit et SSH ne pourra pas les trouver ni les utiliser.

rsync --archive --chown=sammy:sammy ~/.ssh /home/sammy

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

ssh sammy@your_server_ip

Vous devriez être connecté à votre serveur avec le nouveau compte utilisateur sans utiliser de mot de passe. N'oubliez pas que si vous devez exécuter une commande avec des privilèges administratifs, tapez sudo avant la commande comme ceci :

sudo command_to_run

On vous demandera le mot de passe de votre utilisateur habituel lorsque vous utiliserez sudo pour la première fois à chaque session (et périodiquement par la suite).

FAQ

1. Ubuntu peut-il être utilisé comme serveur ?

Absolument. Ubuntu est l'un des systèmes d'exploitation les plus populaires pour les serveurs dans le monde entier et est conçu pour une grande variété de scénarios, allant des instances VPS légères aux clusters de niveau entreprise.

Avantages clés d'Ubuntu Server :

FonctionnalitéDescription
Open-source et gratuitAucun frais de licence requis.
Support LTSLes versions à support à long terme reçoivent 5 ans de mises à jour.
Prêt pour le cloudImages optimisées pour les principaux clouds (Linux-Console.net, AWS, GCP).
Compatible avec DevOpsLivré avec OpenSSH, apt et systemd.
Large prise en charge du matérielFonctionne sur x86, ARM, PPC et plus encore.

Exemples de tâches serveur qu’Ubuntu gère bien :

  • Hébergement Web (Apache, Nginx)
  • Bases de données (PostgreSQL, MySQL, MongoDB)
  • Serveurs d'applications (Node.js, Python, Java)
  • Orchestration de conteneurs (Docker, Kubernetes)
  • Stockage de fichiers et sauvegardes

Exemple : Pour vérifier votre version d’Ubuntu :

lsb_release -a
# OR
cat /etc/os-release

Pour en savoir plus sur SSH et la gestion des paquets, voir : Guide des clés OpenSSH.

2. Est-ce qu'Ubuntu Server est gratuit ?

Oui. Ubuntu Server est entièrement gratuit à télécharger, à installer et à utiliser à toutes fins, qu’elles soient personnelles, éducatives ou commerciales. Il n’y a aucuns frais de licence ni frais d’abonnement.

Si vous cherchez un moyen simple et fiable de commencer, envisagez de déployer un Droplet Ubuntu sur Linux-Console.net. Linux-Console.net fournit des images de serveur Ubuntu préconfigurées afin que vous puissiez lancer des serveurs sécurisés et prêts pour la production en seulement quelques clics—idéal pour les débutants comme pour les experts.

Remarque : Vous n'avez besoin d'Ubuntu Pro que si vous exigez une maintenance de sécurité étendue, des fonctionnalités de conformité ou un support entreprise. Pour la plupart des utilisateurs et des charges de travail typiques, la version gratuite d'Ubuntu Server est amplement suffisante.

3. Quelle version d'Ubuntu devrais-je choisir pour un nouveau serveur ?

Recommandation :
Utilisez une version à support à long terme (LTS). Les versions LTS sont prêtes pour la production et reçoivent des mises à jour pendant cinq ans.

Versions LTS populaires :

LibérationDate de sortieFin du supportNotes
Ubuntu 24.04 LTSAvril 2024Avril 2029Dernière version; recommandée pour les nouvelles installations
Ubuntu 22.04 LTSAvril 2022Avril 2027Largement utilisé; très stable

Vérifiez votre version actuelle :

lsb_release -cs   # Shows the codename (e.g., 'jammy' for 22.04)

Ce guide et ses commandes sont valides pour les versions 24.04 LTS et 22.04 LTS.

4. Devrais-je désactiver l'authentification par mot de passe pour SSH ?

Oui, pour une sécurité renforcée.
Une fois que vous avez configuré l’authentification par clé SSH et confirmé que vous pouvez vous connecter, désactiver l’authentification par mot de passe pour SSH réduit l’exposition de votre serveur aux attaques par force brute.

Étapes :

  1. Ouvrez la configuration SSH :

    sudo nano /etc/ssh/sshd_config
  2. Trouver et définir :

    PasswordAuthentication no
  3. Redémarrer SSH :

    sudo systemctl reload sshd

Important : Gardez toujours un autre moyen d’accéder au serveur, comme la console Droplet de Linux-Console.net ou un accès de secours, avant d’apporter ce changement.

5. Dois-je changer le port SSH par défaut ?

Changer le port SSH de 22 est optionnel et ne remplace pas une authentification SSH correcte par clé ou la configuration d'un pare-feu.

Avantages et inconvénients :

Changer le port 22Effets
Réduit légèrement les scansLes bots automatisés peuvent contourner les ports non 22
Pas un substitut à la sécuritéLes attaquants peuvent toujours trouver des ports ouverts
Nécessite une mise à jour du pare-feuLes règles UFW ou firewalld doivent être modifiées

Si vous changez le port :

  1. Modifiez /etc/ssh/sshd_config :

    Port 2277   # Example port; use a port >1024 that's not in use
  2. Mettre à jour les règles UFW :

    sudo ufw allow 2277/tcp
  3. Se connecter avec :

    ssh -p 2277 user@your_server_ip
  4. Documentez votre nouveau port pour éviter le verrouillage.

Utilisez-le comme une étape supplémentaire, pas comme votre principale défense.

Conclusion

Félicitations ! Vous avez terminé le processus essentiel de configuration initiale du serveur avec Ubuntu. En suivant ces étapes, vous avez considérablement amélioré la sécurité de votre serveur et préparé le terrain pour les configurations futures. Vous disposez maintenant d’un compte utilisateur non root avec des privilèges sudo pour une administration quotidienne plus sécurisée, d’un pare-feu (UFW) configuré pour restreindre tout le trafic sauf ce que vous autorisez explicitement, et d’une authentification SSH par clé sécurisée, réduisant ainsi de manière significative le risque d’accès non autorisé.

Avec ces meilleures pratiques en place, votre serveur Ubuntu est prêt pour l'hébergement web et le déploiement d'applications, ainsi que pour toute personnalisation supplémentaire dont vous pourriez avoir besoin. La configuration réalisée dans ce tutoriel constitue une exigence de base pour presque tous les projets de serveur Linux, et comprendre ces fondamentaux vous aidera à gérer l'infrastructure avec confiance, que ce soit dans le cloud ou sur site.

N'oubliez pas de garder une trace de vos nouvelles informations d'identification, de maintenir des mises à jour régulières et de continuer à apprendre pour garder vos systèmes sécurisés et faciles à gérer.

Prochaines étapes

À ce stade, vous avez une base solide pour votre serveur. Vous pouvez maintenant installer tous les logiciels dont vous avez besoin sur votre serveur.

Si vous souhaitez vous familiariser davantage avec les commandes Linux, vous pouvez consulter notre guide d'initiation à la ligne de commande Linux.

Vous cherchez les prochaines étapes pour le renforcement de SSH et du pare-feu ? Consultez SSH Essentials : Travailler avec les serveurs, clients et clés SSH, Comment utiliser SSH pour se connecter à un serveur distant, et Comprendre le processus de chiffrement et de connexion SSH.

Essayez ceci ensuite : Créez un Droplet Linux-Console.net avec Ubuntu 24.04 LTS, appliquez ces étapes, puis ajoutez une base de données gérée ou déployez via App Platform. Consultez la page de distribution Ubuntu de Linux-Console.net pour les images actuelles et les notes de version.

Merci de apprendre avec la communauté Linux-Console.net.