Recherche de site Web

Configuration initiale du serveur avec Ubuntu


Introduction

Lorsque vous créez pour la première fois 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 sont livrées avec les paramètres par défaut de apt, OpenSSH et UFW.

Points clés

  • Connectez-vous en tant que root : Découvrez 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 classique avec des privilèges sudo pour minimiser 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 sur le nouvel utilisateur.
  • Configurez le pare-feu avec UFW : Activez et testez le pare-feu simplifié (UFW) pour restreindre l'accès, en veillant à laisser SSH ouvert afin d'éviter de vous bloquer.
  • 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 afin d'éviter de vous retrouver bloqué.
  • Les meilleures pratiques s'appliquent à plusieurs environnements : Ces étapes initiales s'appliquent aux VM cloud, aux Droplets, aux VPS et aux serveurs bare metal.

Déployez vos applications depuis GitHub en utilisant la plateforme App de 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. Configurer 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 de l’utilisateur root si vous avez installé une clé SSH pour l’authentification. Si vous ne vous êtes pas encore connecté à votre serveur, vous pouvez suivre notre guide sur la façon de se connecter aux Droplets via 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 partie 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 la phrase de passe lors de la première utilisation de 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 demande.

À 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 répandu de ne pas l'utiliser régulièrement. Le compte root peut effectuer des changements très destructeurs, même par accident.

L'étape suivante consiste à créer un nouveau compte utilisateur avec des privilèges réduits pour une utilisation quotidienne. Plus tard, nous vous montrerons comment obtenir temporairement des privilèges accrus lorsque vous en aurez besoin.

É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 sécurisé et, éventuellement, 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 les 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 que l'on appelle les privilèges de superutilisateur ou de root pour le compte utilisateur normal. Ces privilèges permettront à votre utilisateur normal d'exécuter des commandes avec des privilèges administratifs en mettant le mot sudo devant 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 mis en évidence 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épanner.

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 examiner la liste des profils UFW installés en tapant :

ufw app list
Available applications:
  OpenSSH

Vous devrez vous assurer que le pare-feu autorise 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'entrer sur votre serveur. Vous pouvez apprendre quelques opérations courantes de UFW dans notre guide UFW Essentials.

Pour ajouter l'accès HTTP plus tard, autorisez uniquement 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 tels que la limitation de débit et les règles spécifiques aux services.

Étape 5 - Activation de 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 que vous pouvez 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 rencontrez des problèmes avec votre connexion SSH root, vous pouvez regagner 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 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 habituel, vous serez connecté. N'oubliez pas que si vous devez exécuter une commande avec des privilèges administratifs, tapez sudo avant elle comme ceci :

sudo command_to_run

Vous recevrez une invite pour le mot de passe de votre utilisateur régulier 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 vous recommandons vivement de configurer des clés SSH au lieu d'utiliser l'authentification par mot de passe. Suivez notre guide sur la configuration des clés SSH sur Ubuntu pour apprendre à 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.

Comme votre clé publique se trouve déjà dans le fichier ~/.ssh/authorized_keys du compte root sur le serveur, vous pouvez copier ce fichier et cette structure de répertoires vers votre nouveau compte utilisateur en utilisant votre session actuelle.

La façon la plus simple de copier les fichiers avec la bonne propriété et les bonnes permissions 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 mises en évidence de la commande ci-dessous pour qu’elles correspondent au nom de votre utilisateur habituel :

Remarque : La commande rsync traite différemment les sources et les destinations qui se terminent par une barre oblique par rapport à 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 barre oblique finale (vérifiez que vous n'utilisez pas ~/.ssh/).

Si vous ajoutez par accident un slash final à 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 de 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

Vous serez invité à saisir le mot de passe de votre utilisateur habituel lorsque vous utiliserez sudo pour la première fois à chaque session (et périodiquement ensuite).

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 et est conçu pour une large gamme de scénarios, des instances VPS légères aux clusters de niveau entreprise.

Principaux avantages 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 DevOpsFourni avec OpenSSH, apt et systemd.
Large compatibilité matérielleFonctionne sur x86, ARM, PPC et plus encore.

Exemples de tâches serveur que 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. Le serveur Ubuntu est-il gratuit ?

Oui. Ubuntu Server est entièrement gratuit à télécharger, installer et utiliser à toutes fins—personnelles, éducatives ou commerciales. Il n'y a aucun coût de licence ni frais d'abonnement.

Si vous cherchez un moyen simple et fiable de commencer, pensez à déployer un Droplet Ubuntu sur Linux-Console.net. Linux-Console.net fournit des images de serveur Ubuntu préconfigurées, ce qui vous permet de lancer des serveurs sécurisés et prêts pour la production en seulement quelques clics, parfait pour les débutants comme pour les experts.

Remarque : Vous n'avez besoin d'Ubuntu Pro que si vous nécessitez une maintenance de sécurité prolongée, des fonctionnalités de conformité ou un support pour les entreprises. Pour la plupart des utilisateurs et les charges de travail typiques, la version gratuite d'Ubuntu Server est largement 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 bénéficient de mises à jour pendant cinq ans.

Versions LTS populaires :

LibérerDate de sortieFin du supportNotes
Ubuntu 24.04 LTSAvril 2024Avril 2029Dernier ; recommandé 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 validés 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'effectuer cette modification.

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

Changer le port SSH depuis le 22 est facultatif et ne remplace pas une authentification SSH correcte par clé ni une configuration de pare-feu appropriée.

Avantages et inconvénients :

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

Si vous modifiez 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. Connectez-vous en utilisant :

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

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 posé les bases pour une configuration future. Vous disposez maintenant d'un compte utilisateur non root avec des privilèges sudo pour une administration quotidienne plus sûre, d'un pare-feu (UFW) configuré pour restreindre tout le trafic sauf ce que vous autorisez explicitement, et d'une authentification sécurisée par clé SSH en place—réduisant ainsi considérablement 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 dans le cloud ou sur site en toute confiance.

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 assurer la sécurité et la maintenabilité de vos systèmes.

Prochaines étapes

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

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 renforcer SSH et le 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. Explorez la page de distribution Ubuntu de Linux-Console.net pour les images actuelles et les notes de version.

Merci d'apprendre avec la communauté Linux-Console.net.