Sommaire
Guide détaillé
Étape 1
Réduire la surface installée
Désinstallez ou désactivez ce qui ne sert pas. Chaque service actif est une responsabilité.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour cette machine virtuelle, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Réduire la surface installée" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Créer un accès administrateur et limiter le réseau
On crée un utilisateur, on prépare SSH, puis on ouvre seulement les ports nécessaires. Gardez votre session actuelle ouverte pendant le test.
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo nano /home/deploy/.ssh/authorized_keys
sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown deploy:deploy /home/deploy/.ssh/authorized_keys
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `install -d` crée le dossier avec les bons droits en une seule commande.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `chmod` fixe les permissions pour éviter un refus SSH ou une exposition inutile.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Pare-feu avec UFW
Sur Debian ou Ubuntu, UFW simplifie les règles courantes tout en gardant une lecture facile des ports ouverts.
sudo apt update
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En VM, vous contrôlez le système complet. Vous pouvez agir sur le noyau, le pare-feu et les volumes, mais vous êtes aussi responsable des mises à jour et de l’exposition réseau.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- Votre nouvelle session SSH doit fonctionner avant de fermer l’ancienne.
- Les ports ouverts doivent correspondre à la liste prévue, vérifiable avec `ss -tulpn`.
Étape 2
Verrouiller l’administration
Clés SSH, comptes nominatifs, IP autorisées et absence de mots de passe faibles forment la première ligne.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Créer un utilisateur d’administration
Le compte dédié évite d’utiliser root au quotidien. Testez toujours la nouvelle session avant de retirer un accès existant.
sudo adduser deploy
sudo usermod -aG sudo deploy
su - deploy
sudo whoami
exit
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `su - utilisateur` ouvre une session avec le compte ciblé pour tester son environnement.
- `whoami` confirme l’utilisateur actif, pratique après un test sudo.
- `exit` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Créer un accès administrateur et limiter le réseau
On crée un utilisateur, on prépare SSH, puis on ouvre seulement les ports nécessaires. Gardez votre session actuelle ouverte pendant le test.
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo nano /home/deploy/.ssh/authorized_keys
sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown deploy:deploy /home/deploy/.ssh/authorized_keys
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `install -d` crée le dossier avec les bons droits en une seule commande.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `chmod` fixe les permissions pour éviter un refus SSH ou une exposition inutile.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Pare-feu avec UFW
Sur Debian ou Ubuntu, UFW simplifie les règles courantes tout en gardant une lecture facile des ports ouverts.
sudo apt update
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En VM, vous contrôlez le système complet. Vous pouvez agir sur le noyau, le pare-feu et les volumes, mais vous êtes aussi responsable des mises à jour et de l’exposition réseau.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- Votre nouvelle session SSH doit fonctionner avant de fermer l’ancienne.
- Les ports ouverts doivent correspondre à la liste prévue, vérifiable avec `ss -tulpn`.
Étape 3
Suivre les mises à jour de sécurité
Une VM durcie puis jamais patchée redevient vulnérable. Définissez une procédure de correction régulière.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour cette machine virtuelle, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Suivre les mises à jour de sécurité" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Créer un accès administrateur et limiter le réseau
On crée un utilisateur, on prépare SSH, puis on ouvre seulement les ports nécessaires. Gardez votre session actuelle ouverte pendant le test.
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo nano /home/deploy/.ssh/authorized_keys
sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown deploy:deploy /home/deploy/.ssh/authorized_keys
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `install -d` crée le dossier avec les bons droits en une seule commande.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `chmod` fixe les permissions pour éviter un refus SSH ou une exposition inutile.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Pare-feu avec UFW
Sur Debian ou Ubuntu, UFW simplifie les règles courantes tout en gardant une lecture facile des ports ouverts.
sudo apt update
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En VM, vous contrôlez le système complet. Vous pouvez agir sur le noyau, le pare-feu et les volumes, mais vous êtes aussi responsable des mises à jour et de l’exposition réseau.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- Votre nouvelle session SSH doit fonctionner avant de fermer l’ancienne.
- Les ports ouverts doivent correspondre à la liste prévue, vérifiable avec `ss -tulpn`.
Étape 4
Journaliser les accès
Les connexions admin et changements sensibles doivent laisser des traces consultables.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Lister les ports et tester le réseau
On vérifie ce qui écoute réellement et on teste localement avant de chercher une erreur côté DNS ou routeur.
ip -br addr
ip route
sudo ss -tulpn
curl -I http://127.0.0.1
nc -vz 127.0.0.1 80
Ce que font les commandes
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `ss -tulpn` liste les ports ouverts et les processus qui écoutent.
- `curl` teste une URL depuis la machine elle-même.
- `nc -vz` teste si un port TCP répond sans envoyer de données applicatives.
Créer un accès administrateur et limiter le réseau
On crée un utilisateur, on prépare SSH, puis on ouvre seulement les ports nécessaires. Gardez votre session actuelle ouverte pendant le test.
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo nano /home/deploy/.ssh/authorized_keys
sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown deploy:deploy /home/deploy/.ssh/authorized_keys
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `install -d` crée le dossier avec les bons droits en une seule commande.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `chmod` fixe les permissions pour éviter un refus SSH ou une exposition inutile.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Pare-feu avec UFW
Sur Debian ou Ubuntu, UFW simplifie les règles courantes tout en gardant une lecture facile des ports ouverts.
sudo apt update
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En VM, vous contrôlez le système complet. Vous pouvez agir sur le noyau, le pare-feu et les volumes, mais vous êtes aussi responsable des mises à jour et de l’exposition réseau.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- Votre nouvelle session SSH doit fonctionner avant de fermer l’ancienne.
- Les ports ouverts doivent correspondre à la liste prévue, vérifiable avec `ss -tulpn`.
Étape 5
Contrôler après durcissement
Un durcissement réussi protège sans casser le service. Testez les usages attendus, pas seulement les règles.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour cette machine virtuelle, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Contrôler après durcissement" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Créer un accès administrateur et limiter le réseau
On crée un utilisateur, on prépare SSH, puis on ouvre seulement les ports nécessaires. Gardez votre session actuelle ouverte pendant le test.
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo nano /home/deploy/.ssh/authorized_keys
sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown deploy:deploy /home/deploy/.ssh/authorized_keys
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `install -d` crée le dossier avec les bons droits en une seule commande.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `chmod` fixe les permissions pour éviter un refus SSH ou une exposition inutile.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Pare-feu avec UFW
Sur Debian ou Ubuntu, UFW simplifie les règles courantes tout en gardant une lecture facile des ports ouverts.
sudo apt update
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En VM, vous contrôlez le système complet. Vous pouvez agir sur le noyau, le pare-feu et les volumes, mais vous êtes aussi responsable des mises à jour et de l’exposition réseau.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- Votre nouvelle session SSH doit fonctionner avant de fermer l’ancienne.
- Les ports ouverts doivent correspondre à la liste prévue, vérifiable avec `ss -tulpn`.
Étape 6
Réviser les exceptions
Une exception de sécurité accordée pour livrer vite doit être revue. Sans revue, elle devient la nouvelle faiblesse.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour cette machine virtuelle, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Réviser les exceptions" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Créer un accès administrateur et limiter le réseau
On crée un utilisateur, on prépare SSH, puis on ouvre seulement les ports nécessaires. Gardez votre session actuelle ouverte pendant le test.
sudo adduser deploy
sudo usermod -aG sudo deploy
sudo install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
sudo nano /home/deploy/.ssh/authorized_keys
sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown deploy:deploy /home/deploy/.ssh/authorized_keys
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `adduser` crée un compte utilisateur interactif.
- `usermod -aG sudo` ajoute l’utilisateur au groupe d’administration sudo.
- `install -d` crée le dossier avec les bons droits en une seule commande.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `chmod` fixe les permissions pour éviter un refus SSH ou une exposition inutile.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Pare-feu avec UFW
Sur Debian ou Ubuntu, UFW simplifie les règles courantes tout en gardant une lecture facile des ports ouverts.
sudo apt update
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw enable
sudo ufw status verbose
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
- `ufw` applique ou affiche les règles de pare-feu simples.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En VM, vous contrôlez le système complet. Vous pouvez agir sur le noyau, le pare-feu et les volumes, mais vous êtes aussi responsable des mises à jour et de l’exposition réseau.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- Votre nouvelle session SSH doit fonctionner avant de fermer l’ancienne.
- Les ports ouverts doivent correspondre à la liste prévue, vérifiable avec `ss -tulpn`.
Checklist finale
- Surface réduite
- SSH strict
- Patchs suivis