
Guide : Configurer un VPS pour déployer une application Symfony (partie 2)
Découvre mon guide complet pour configurer facilement un VPS : installation, sécurité, PHP, serveur web, SSL. Déploye sereinement ton application Symfony (même le vendredi) !
Ce guide fait partie d’une série d’articles où je te présente comment configurer un VPS pour déployer une application Symfony simplement et surtout en comprenant tout ce que tu vas faire. Le but est de démystifier la gestion d’un serveur en ligne de commande, pour te permettre de gagner en autonomie et de mieux comprendre comment fonctionne le niveau en dessous de ton application web.
1. Récap
Dans la partie 1, on a vu :
- Comment faire la première connexion SSH à un VPS de chez Hostinger
- On a vu le fonctionnement des utilisateurs système dans Linux
- On a parlé de la spécificité de l’utilisateur
root
- On a modifié le mot de passe d’un utilisateur système
- On s’est connecté en utilisant une clé SSH
- On a modifié le port d’écoute par défaut du protocole SSH
Dans cet article, on va explorer en détail l’arborescence et le fonctionnement du système de dossiers et fichiers, puis installer nos premiers paquets.
Zéééé partis, let’s go !

2. Arborescence des répertoires dans Debian
Si tu te places à la racine de ton serveur web et que tu tapes la commande ls
, tu vas obtenir ce résultat :
. .. bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
Oui, ça fait flipper la première fois, mais rassure-toi, pour notre usage, on va utiliser qu’une infime partie de ces répertoires. Je ne vais pas tous les passer en revue, mais voici les détails pour les plus importants.
- bin (binaries) : Ce dossier regroupe des excécutables essentiels au système et utilisables par tous les utilisateurs (
ssh
,pwd
,ls
, …) - boot : Répertoire qui regroupe tout les fichiers qui permettent à Linux de démarrer. Inutile de te préciser qu’ici c’est pas touche !
- etc (editing text config) : Répertoire qui contient tout les fichiers de configuration du système et des services. On a déjà utilisé ce répertoire pour modifier la configuration de SSH et on va continuer à beaucoup l’utiliser.
- home : C’est ici que chaque utilisateur a son petit jardin secret à son nom. Quand tu crées un nouvel utilisateur, par défaut, un répertoire à son nom sera créé ici (ex: /home/debian).
- root : Répertoire personnel de l’utilisateur
root
- usr (unix system resources) : Répertoire un peu fourre-tout, on peut noter que c’est là qu’on va retrouver certains excécutables comme PHP
/usr/bin/php
. - var (variable) : Répertoire qui contient les données qui vont varier en fonction de l’utilisation du système. C’est ici qu’on va placer notre application Symfony ou qu’on va pouvoir consulter les fichiers de logs.
Voilà, maintenant tu connais la secret sauce qui se cache derrière chaque système Linux !
3. Réglage de la timezone
C’est quelque chose qu’on a tendance à oublier, mais il est très important de configurer la timezone de ton serveur. Ça va te permettre d’avoir une meilleure visibilité sur tes journaux de logs et pour configurer des tâches planifiées (cron jobs
).
On va se placer sur le meilleur fuseau horaire du monde, je parle bien entendu de celui de Bruxelles 🇧🇪!
$ sudo timedatectl set-timezone Europe/Brussels
Pour vérifier la configuration de ton serveur, entre la commande suivante :
$ timedatectl
Output :
Local time: Fri 2025-03-21 11:06:22 CET
Universal time: Fri 2025-03-21 10:06:22 UTC
RTC time: Fri 2025-03-21 10:06:22
Time zone: Europe/Brussels (CET, +0100)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
Et si tu ne veux pas t’installer chez nous 🇧🇪, tu peux entrer la commande suivante pour avoir la liste des fuseaux horaires disponibles :
$ timedatectl list-timezones
4. Comment installer des programmes dans Debian ?
Avant d’installer quoi que ce soit, il faut impérativement mettre le système à jour en entrant les deux commandes suivantes :
$ sudo apt update
$ sudo apt upgrade
- La première commande
apt update
va mettre à jour la liste des paquets disponibles et leurs versions depuis les dépôts officiels. Elle ne modifie pas encore les logiciels installés sur le serveur. - La deuxième commande
apt upgrade
va réellement appliquer les mises à jour sur ton système.
C’est important de travailler avec un système à jour pour profiter des versions stables et sans bugs des logiciels présents sur ton système.
C’est parfait, notre système est à jour et à l’heure, on va pouvoir installer notre premier logiciel.
On va commencer en douceur avec un un utilitaire qui ne demande aucune configuration et qui est très pratique ! Cet utilitaire s’appelle htop
, et ça permet d’ouvrir une interface de monitoring de ton VPS. Alors certes, l’interface d’Hostinger offre déjà pas mal d’informations, tu n’auras pas toujours accès à ce type d’interface.

Pour installer htop
, entre la commande suivante :
$ sudo apt install htop
Quand tout sera installé, je t’invite à entrer la commande suivante pour ouvrir l’utilitaire :
$ htop
A la place de ton terminal, tu vas maintenant voir apparaître une interface qui va te permettre de surveiller l’état de ton VPS.

Dans cette interface, tu vas retrouver plein d’informations très utiles :
- Le uptime du serveur
- La charge du CPU
- L’utilisation de la mémoire
- Les processus en fonctionnement
Anecdote : C’est grâce à cette commande que j’ai choisi d’apprendre à gérer un serveur uniquement avec la CLI. Avant j’utilisait un panel et grâce à htop
, j’ai détecté qu’un processus du panel utilisais la totalité de la mémoire disponible (16 Go 🫠)
5. Comprendre les permissions dans un système Linux
On va attaquer un gros morceau, mais je te promets que quand tu l’auras assimilé, tu auras toutes les bases nécessaires pour être à l’aise sur Linux.
Connecte-toi à ton utilisateur debian
et entre les commandes suivantes :
$ sudo mkdir root-directory # Création d'un répertoire
$ touch test.txt # Création d'un fichier texte
Ensuite entre la commande suivante pour lister ce qui se trouve dans le répertoire courant :
$ ls -l
Output :
drwxr-xr-x 2 root root 4096 Mar 21 11:39 root-directory
-rw-r--r-- 1 debian debian 0 Mar 21 11:39 test.txt
Le paramètre -l
de la commande nous permet de faire apparaître les permissions et les propriétaires de chaque fichier ou répertoire. On va analyser tout ça en détail.
- Le premier caractère indique si c’est un fichier
-
ou un répertoired
. - Les 9 caractères suivants sont les permissions groupées par 3.
d | rwx | r-x | r-x
- --- --- ---
| | | |
| | | └──> permissions pour "autres utilisateurs"
| | └────────> permissions pour le "groupe"
| └──────────────> permissions pour le "propriétaire"
└───────────────────> type (d: répertoire, -: fichier)
Voici un tableau qui te permettre de comprendre la signification de chaque notation pour les fichiers et dossiers.
Permission | Signification (Fichier) | Signification (Répertoire) |
---|---|---|
r-- | Lecture uniquement | Voir uniquement le contenu |
rw- | Lecture + Modification | Afficher + ajouter/supprimer fichiers |
r-x | Lecture + Exécution | Voir le contenu + pouvoir entrer dans le répertoire |
rwx | Lecture + Écriture + Exécution | Tous les droits |
--- | Aucun droit | Aucun accès |
Chaque permission possède une valeur qui, en la combinant, permet de représenter les permissions sous formes numériques.
Permission | Valeur |
---|---|
r (lecture) | 4 |
w (écriture) | 2 |
x (exécution) | 1 |
La combinaison se fait par addition, ainsi on peut représenter les permissions comme ceci :
rwx -> 4 + 2 + 1 = 7
r-x -> 4 + 0 + 1 = 5
Alors, tu dois te demander pourquoi je te raconte tout ça ?
Et bien, on va utiliser cette notation numérique pour faciliter la modification des permissions avec la commande chmod
!
On va imaginer que notre fichier test.txt
contienne des informations perso et je ne veux pas que les autres utilisateurs de la machine puissent le lire.
Permission sur le fichier test.txt
-rw-r--r-- 1 debian debian 0 Mar 21 11:39 test.txt
Entre la commande suivante pour modifier les permissions:
$ chmod 600 test.txt
Résultat :
-rw------- 1 debian debian 0 Mar 21 11:39 test.txt
Comme beaucoup de développeurs, je suis un énorme fainéant, du coup je ne calcule jamais les permissions de tête, j’utilise un site qui le fait pour moi : Chmod calculator
Dernière petite chose, tu vois qu’après la notation des permissions, on voit apparaître debian debian
ou root root
.
Cette notation représente le propriétaire et le groupe du fichier. Dans Linux, un groupe permet de rassembler plusieurs utilisateurs afin de leur attribuer plus facilement les mêmes droits et permissions.
Dans notre exemple précédent, nous avions créé un dossier en utilisant le mot-clé sudo
. De ce fait, nous avons créé le dossier en utilisant les droits du super administrateur et c’est donc lui qui hérite des permissions. D’ailleurs si tu te rends dans le dossier root-directory
et que tu tentes de créer un fichier tu verras apparaitre une erreur car tu n’as pas les droits nécessaires.
$ cd root-directory
$ touch test.txt
Output :
touch: cannot touch 'test.txt': Permission denied
Pour modifier le propriétaire et le groupe d’un fichier ou d’un dossier, on va utiliser la commande chown
.
$ sudo chown debian:debian /home/debian/root-directory
En vérifiant à nouveau la propriété, on voit qu’elle a bien été modifiée et on peut à présent créer un fichier dans le dossier root-directory
.
drwxr-xr-x 2 debian debian 4096 Mar 21 11:39 root-directory
$ cd root-directory
$ touch test.txt
C’est parfait, on a passé en revue les bases de ce qu’il y a à savoir pour survivre sur Linux en utilisant uniquement la ligne de commande 💪!
La semaine prochaine, on va enfin s’attaquer à la configuration de notre serveur web et de PHP. Tu seras en mesure d’héberger ta première application Symfony !