Aller au contenu

Configurez votre serveur Ubuntu

Auto-hébergez votre serveur Ubuntu Auto-hébergez votre serveur Ubuntu

Vous pouvez installer un serveur Ubuntu pour héberger différents services, comme votre stockage en nuage, vos photos, vos contacts, calendriers et tâches ou vos films et séries TV. Apprenez à protéger votre serveur grâce à des mesures de sécurité de base et avancées, et à programmer des sauvegardes régulières.

Devrais-je héberger mon serveur à domicile ou louer un VPS ?

Les deux options présentent des avantages et des inconvénients. Il s'agit de trouver un compromis entre confidentialité, sécurité et confort d'usage. Bien que ce tutoriel explique comment héberger votre serveur à domicile, vous pouvez également louer un serveur dédié virtuel (en anglais, « virtual private server ou VPS ») auprès de fournisseurs tels que Hetzner, Digital Ocean, OVH, Contabo, Scaleway et d'autres.

Serveur à domicile Serveur dédié virtuel
Meilleure confidentialité
Coûts initiaux moins élevés
Coûts récurrents moins élevés
Plus facile à mettre en place
Plus facile à maintenir
Moins de risques de sécurité
Moins de risque de pertes de données
Moins de risque de temps d'arrêt
Moins de problèmes de latence
Moins de limitations de la bande passante

Quelle est la configuration minimale requise pour le matériel utilisé ?

Cela dépend de l'utilisation prévue. Combien d'utilisateurs ou de visites prévoyez-vous par jour ? Prévoyez-vous de diffuser des vidéos ou de stocker de grandes quantités de données ? Les spécifications minimales suivantes devraient être suffisantes pour une poignée de services/utilisateurs :

  • Un ou plusieurs processeurs de 2 GHz
  • 2 à 4 Go de mémoire vive
  • 10 à 25 Go de stockage (ou plus pour les grandes collections de fichiers)
  • Connexion Internet rapide

Voici une liste de mini PC, qui sont bien adaptés aux serveurs en raison de leur petit facteur de forme et de leur faible prix.

Comment puis-je modifier des fichiers dans le terminal ?

L'interaction avec le serveur nécessite une utilisation assez intensive du terminal. Les fichiers de configuration et les réglages doivent souvent être modifiés à l'aide d'un éditeur de texte. L'éditeur vi est couramment utilisé et peut être installé comme suit:

sudo apt install vim

vi dispose de trois modes :

Mode normal : vi démarre en mode normal, qui permet de parcourir les documents.

Mode insertion : en appuyant sur la touche i, vi passe en mode insertion, qui permet d'éditer et de modifier les documents.

Mode commande : en appuyant sur la touche deux-points :, vi passe en mode commande, qui permet par exemple d'enregistrer des modifications ou de rechercher du texte dans le document.

Les commandes suivantes devraient être suffisantes pour suivre toutes les instructions fournies sur notre site :

Commande Description
vi fichier.txt Ouvrez le document « fichier.txt » avec l'éditeur de texte vi.
i Passez en mode « insertion » et commencez à modifier le fichier.
ESC Quittez le mode « insertion » une fois les modifications terminées.
:w Enregistrez toutes les modifications apportées au fichier, tout en le gardant ouvert.
:wq ou :x Enregistrez toutes les modifications apportées au fichier, et quittez vi.
:q! Quittez vi, sans enregistrer les modifications apportées au fichier.
/trouverunmot Recherchez le mot « trouverunmot » (remplacez-le par le mot que vous recherchez).
n Après avoir lancé la recherche de « trouverunmot », repérez la prochaine occurrence de « trouverunmot » dans le fichier.

De nombreux tutoriels existent pour plonger plus profondément dans le monde de vi :


Serveur Ubuntu

Installer le serveur Ubuntu

Effectuez quelques vérifications préliminaires et suivez les instructions ci-dessous pour configurer votre serveur à domicile.

Contrôles préliminaires

Vérifications Description
Mon ordinateur est-il compatible avec Linux ? Testez Ubuntu en utilisant une clé USB « Live » ou VirtualBox
• Consultez la base de données de compatibilité
Demandez sur Internet
• Achetez un ordinateur compatible avec Linux, par exemple sur Linux Préinstallé ou Ministry of Freedom
Mon ordinateur répond-il aux exigences minimales ? • Processeur double cœur 2 GHz
• 4 Go de mémoire vive (RAM)
• 25 Go d'espace de stockage libre
Mon ordinateur est-il branché ? Si vous installez le serveur Ubuntu 24.04 sur un appareil mobile tel qu'un ordinateur portable, assurez-vous qu'il est bien branché.
Le support d'installation est-il accessible ? Vérifiez si votre ordinateur dispose d'un lecteur de DVD ou d'un port USB libre.
Mon ordinateur est-il connecté à l'Internet ? Vérifiez si la connexion Internet est opérationnelle.
Ai-je sauvegardé mes données ? Sauvegardez vos données : tout ce qui est stocké sur l'appareil sera effacé pendant le processus d'installation !
Ai-je téléchargé la dernière version d'« Ubuntu Server » ? Téléchargez la dernière version d'« Ubuntu Server » bénéficiant d'un support à long terme (en anglais, « long-term support ou LTS »), qui est pris en charge pendant 5 ans, y compris les mises à jour de sécurité et de maintenance. Au moment d'écrire ces lignes, la dernière version LTS était « Ubuntu Server » 24.04. Consultez le cycle de publication le plus récent pour plus d'informations.
Ai-je préparé un périphérique de démarrage ? Vous pouvez créer une clé USB « Live » à partir du fichier .iso téléchargé. Vous pouvez également utiliser un ordinateur Windows, macOS ou Ubuntu Linux pour graver le fichier .iso téléchargé sur un DVD.

Guide étape par étape

Instructions Description
Démarrage Insérez le DVD ou la clé USB « Live » dans l'ordinateur, puis redémarrez-le. La plupart des ordinateurs démarrent alors automatiquement depuis le DVD ou la clé USB. Si ce n'est pas le cas, essayez d'appuyer plusieurs fois sur F12, ESC, F2 ou F10 lorsque l'ordinateur démarre. Cela devrait vous donner accès au menu de démarrage, où vous pourrez alors sélectionner le DVD ou le lecteur USB comme périphérique de démarrage.
GRUB Sélectionnez Try or Install Ubuntu Server.
Bienvenue Sélectionnez une langue.
Mise à jour de l'installateur Cet écran peut apparaître si le serveur est déjà connecté à Internet. Sélectionnez Continuer sans mettre à jour.
Disposition du clavier Sélectionnez une disposition de clavier.
Type d'installation Sélectionnez l'option d'installation par défaut d'Ubuntu Server.
Connections réseau Assurez-vous de mettre en place une connexion Internet opérationnelle via Ethernet ou WiFi. C'est important pour la suite du processus. Sélectionnez Info pour en savoir plus sur un réseau donné.
Proxy Ces réglages sont facultatifs. Saisissez les informations requises si vous devez configurer des proxies réseau, sinon passez cette étape.
Dépôt Choisissez le dépôt Ubuntu. Les options par défaut devraient fonctionner correctement.
Partitionnement disque Choisissez comment partitionner votre disque. Dans ce tutoriel, nous utiliserons l'intégralité du disque
• Sélectionnez Configurer ce disque comme un groupe LVM
• Sélectionnez Chiffrer le groupe LVM avec LUKS pour chiffrer votre serveur
• Saisissez une clé de sécurité forte et unique et confirmez

Attention : Cette étape effacera toutes les données et formatera le disque dur ! Vérifiez soigneusement tous les paramètres ! Assurez-vous d'avoir sauvegardé vos données !
Configuration du profil Configurez le profil de l'utilisateur et du serveur. Pour ce tutoriel, nous choisirons la configuration suivante (à adapter en conséquence) :
• Votre nom (il s'agit du nom de l'utilisateur « root » du système): gofossroot
• Nom du serveur (il s'agit du nom de votre serveur): gofossserver
• Nom d'utilisateur (c'est le même que celui de l'utilisateur « root »): gofossroot
• Mot de passe: saisissez un mot de passe fort et unique et confirmez
Configuration SSH Ces réglages sont facultatifs. Laissez cette section vide et continuez.
Featured Server Snaps Ces réglages sont facultatifs. Laissez cette section vide et continuez.
Dernière étape Attendez que l'installation se termine. Une fois « Ubuntu Server » installé, retirez le support d'installation et appuyez sur ENTRÉE lorsque vous y êtes invité.


Architecture LAMP

Architecture LAMP

« LAMP », acronyme de Linux, Apache, MySQL et PHP/Perl/Python, désigne une configuration courante de serveur web. Après le redémarrage, connectez-vous à votre serveur Ubuntu. Déchiffrez la partition avec la clé de sécurité. Entrez ensuite les identifiants « root ». Suivez ensuite les instructions ci-dessous pour installer l'architecture LAMP.

Guide étape par étape

Mettez à jour les paquets système et installez l'architecture LAMP :

sudo apt update
sudo apt upgrade
sudo apt install lamp-server^

Faites attention à l'accent circonflexe en fin de commande : sudo apt install lamp-server^. Il indique que lamp-server est un méta-paquet, qui installe Apache, MySQL et PHP avec d'autres paquets et dépendances.

Vérifiez qu'Apache ait été correctement installé (le numéro de version devrait s'afficher), lancez automatiquement Apache après chaque redémarrage, et vérifiez le statut actuel d'Apache (qui devrait être Active) :

apachectl -V
sudo systemctl enable apache2
sudo systemctl start apache2
sudo systemctl status apache2

Même procédure pour MySQL :

mysql -V
sudo systemctl enable mysql
sudo systemctl start mysql
sudo systemctl status mysql

Vérifiez que PHP ait correctement été installé (un numéro de version devrait s'afficher) :

php -v

Et pour finir, un peu de ménage :

sudo apt autoremove && sudo apt clean


Adresse IP statique du serveur Ubuntu

Adresse IP statique

Le protocole DHCP attribue des adresses IP dynamiques aux appareils de votre réseau domestique, y compris à votre serveur. Évitez de reconfigurations fréquentes en lui attribuant une adresse IP statique. L’adresse exacte dépend de la configuration de votre réseau. Des plages courantes incluent 192.168.0.xx ou 192.168.1.xx. Modifiez les réglages du serveur comme indiqué ci-dessous. Veillez à bien adapter les commandes à l’adresse IP choisie.

Guide étape par étape

Interface réseau

Tout d'abord, découvrons le nom de l'interface réseau du serveur :

ip link show

Une liste de toutes les interfaces réseau devrait s'afficher:

  • La première entrée est probablement nommée lo, l'interface de bouclage
  • L'interface Ethernet devrait être nommée enpXsY, par exemple enp0s1 ou enp1s3
  • L'interface WiFi devrait être nommée wlpXsY, par exemple wlp0s1 ou wlp2s3

Dans le cadre de ce tutoriel, supposons que l'interface réseau du serveur soit nommée enp0s3 (ajustez en conséquence).

Passerelle par défaut

Il est temps de découvrir le nom de la passerelle par défaut (en anglais, « default gateway ») :

ip route show

Le terminal devrait afficher une ligne contenant l'adresse IP de la passerelle par défaut, du type default via 192.168.1.1 dev enp0s3 proto dhcp. Pour ce tutoriel, supposons que cette adresse est 192.168.1.1 (ajustez en conséquence).

Configuration réseau

Modifiez le fichier de configuration réseau :

sudo mv /etc/netplan/50-cloud-init.yaml /etc/netplan/01-netcfg.yaml
sudo vi /etc/netplan/01-netcfg.yaml

Remplacez son contenu, en faisant attention à l'indentation correcte de chaque ligne dans le fichier. Et assurez-vous d'ajuster tous les paramètres en fonction de votre propre configuration :

  • Spécifiez l'interface réseau correct. Dans notre exemple c'est enp0s3, mais votre interface Ethernet pourrait s'appeler enp0s1. Ou si vous utilisez une interface WiFi, disons wlp0s1, vous devez remplacer la ligne ethernets: par wifis et la ligne enp0s3 par wlp0s1.
  • Le champ dhcp4 : true nous indique que le serveur se voit attribuer une adresse IP statique. Dans notre exemple c'est 192.168.1.100, vous pouvez également choisir une autre adresse.
  • Spécifiez la passerelle par défaut. Dans notre exemple c'est 192.168.1.1, mais votre passerelle par défaut pourrait par exemple être nommée 192.168.0.1.
  • Sélectionnez un fournisseur DNS. Dans notre exemple DNS4EU, vous pouvez sélectionner le fournisseur DNS de votre choix.
network:
  version: 2
  ethernets:
    enp0s3:
      dhcp4: false
      addresses: [192.168.1.100/24]
      routes:
      - to: default
        via: 192.168.1.1
      nameservers:
         addresses: [86.54.11.1, 86.54.11.201]

Sauvegardez et fermez le fichier en appuyant sur ESC et en tapant :wq!.

Limitez les droits d'accès au fichier de configuration réseau :

sudo chmod 600 /etc/netplan/01-netcfg.yaml

Déactivez cloud-init pour éviter que votre configuration réseau ne soit réinitialisée lors du redémarrage du serveur :

sudo touch /etc/cloud/cloud-init.disabled

Enfin, appliquez tous les changements et redémarrez le serveur:

sudo netplan apply
sudo reboot

Vérifiez l'addresse IP:

ip add
Existe-t-il des fournisseurs de DNS respectueux de la vie privée ?

Fournisseurs DNS Pays DNS #1 DNS #2 Politique de confidentialité
DNS4EU Europe 86.54.11.1 86.54.11.201 Privacy Policy
Digitalcourage Allemagne 5.9.164.112 -- Politique de confidentialité
UncensoredDNS Danemark 89.233.43.71 91.239.100.100 Politique de confidentialité
Dismail Allemagne 116.203.32.217 159.69.114.157 Politique de confidentialité
DNS Watch Allemagne 84.200.69.80 84.200.70.40 --
FDN France 80.67.169.12 80.67.169.40 --
OpenNIC Divers Divers Divers Divers


Connexion à distance au serveur Ubuntu

Connexion à distance

Établissez un accès à distance à votre serveur depuis un autre ordinateur, appelé client. De cette façon, le serveur peut rester sans affichage (en anglais, « headless ») — il n'est pas nécessaire de le brancher à un écran, un clavier et une souris. La connexion à distance utilise le protocole « Secure Shell » (SSH) et garantit une authentification et un chiffrement robustes.

Guide étape par étape

Configuration du serveur

Commençons par le serveur. Exécutez les commandes suivantes pour installer OpenSSH :

sudo apt install openssh-server

Créez un compte administrateur avec des privilèges pour se connecter à distance au serveur. Dans le cadre de ce tutoriel, nous appellerons cet administrateur gofossadmin. Tout autre nom fera l'affaire, assurez-vous simplement d'ajuster les commandes en conséquence. Lorsque vous y êtes invité, saisissez un mot de passe fort et unique :

sudo adduser gofossadmin
sudo usermod -a -G sudo gofossadmin

Connectez-vous au nouveau compte administrateur et testez ses pouvoirs sudo en mettant à jour le système :

su - gofossadmin
sudo apt update

Configuration du client

Maintenant, configurons le client. Dans le cadre de ce tutoriel, nous supposons que l'ordinateur client tourne sous une distribution GNU/Linux, par exemple Ubuntu. Si votre client tourne sous Windows ou macOS, utilisez les outils système disponibles ou installez un client SSH tel que PuTTY.

Ouvrez un terminal sur votre ordinateur client Linux avec le raccourci CTRL + ALT + T, ou cliquez sur le bouton Activités en haut à gauche et cherchez Terminal. Créez maintenant le même compte administrateur gofossadmin que sur le serveur (ajustez le nom en fonction de votre propre configuration). Saisissez un mot de passe fort et unique lorsque vous y êtes invité :

sudo adduser gofossadmin

Connectez-vous au nouveau compte administrateur, créez un répertoire caché où seront stockées les clés SSL et attribuez lui les droits d'accès nécessaires :

su - gofossadmin
mkdir /home/gofossadmin/.ssh
chmod 755 /home/gofossadmin/.ssh

Générez une paire de clés publique/privée qui sécurisera la connexion à distance à votre serveur. Exécutez les commandes ci-dessous, suivez les instructions à l'écran et, lorsque vous y êtes invité, fournissez un mot de passe SSH fort et unique :

cd /home/gofossadmin/.ssh
ssh-keygen -t RSA -b 4096

Le résultat devrait ressembler à ceci :

Generating public/private RSA key pair.
Enter file in which to save the key (/home/gofossadmin/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): *******
Enter same passphrase again: ********
Your identification has been saved in /home/gofossadmin/.ssh/id_rsa.
Your public key has been saved in /home/gofossadmin/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:erdBxn9i/ORLIJ4596DvfUIIPOyfFnSMQ4SieLIbSuxI gofossadmin@gofossclient
The key's randomart image is:
+---[RSA 4096]----+
|   .+.+=     o   |
|       ..oo.+ o  |
| .S+..     %..   |
|         o+o. o  |
|        So*o o = |
|   ..oo.+     A +|
| ..+ooo       .oo|
|  .o...+  .E..   |
|         .. o==.%|
+----[SHA256]-----+

Transférez la clé publique du client vers le serveur. Veillez à remplacer le nom de l'administrateur et l'adresse IP en fonction de votre propre configuration. Lorsque vous y êtes invité, fournissez le mot de passe gofossadmin (et non pas le mot de passe SSH !) :

ssh-copy-id gofossadmin@192.168.1.100

Voilà, c'est fait ! À partir de maintenant, vous pouvez vous connecter à distance à votre serveur à partir de l'ordinateur client. Ouvrez simplement un terminal, basculez sur le compte administrateur et connectez-vous au serveur en utilisant le mot de passe SSH correct. N'oubliez pas d'ajuster le nom de l'administrateur et l'adresse IP selon vos besoins :

su - gofossadmin
ssh gofossadmin@192.168.1.100


Assistance pour le serveur Ubuntu

Assistance

Pour davantage de précisions ou en cas de questions, consultez la documentation, les tutoriels, le wiki ou la communauté d'Ubuntu.