Sommaire
Guide détaillé
Étape 1
Dessiner les flux avant les règles
Listez qui parle à qui, sur quel port, et pourquoi. Une règle réseau écrite sans cartographie finit souvent trop ouverte.
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.
Tester l’isolation réseau
On teste la passerelle autorisée, puis une cible LAN qui doit rester bloquée. Remplacez les IP par votre plan réseau.
ip route
ping -c 3 10.31.254.254
ping -c 3 192.168.4.8
curl -m 3 http://192.168.4.8:8006
sudo nft list ruleset
Ce que font les commandes
- `ip route` montre la passerelle utilisée et les routes connues.
- `ping -c 3 10.31.254.254` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `ping -c 3 192.168.4.8` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `curl` teste une URL depuis la machine elle-même.
- `nft list ruleset` affiche les règles nftables réellement chargées.
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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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
Séparer administration et exposition publique
Le trafic utilisateur, la supervision et l’administration ne méritent pas le même niveau de confiance. Isolez-les dès la conception.
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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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
Bloquer les chemins latéraux
Un conteneur exposé ne doit pas voir tout le LAN par défaut. Bloquez les plages internes inutiles, puis rouvrez seulement les flux nécessaires.
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 ce conteneur LXC, 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' "Bloquer les chemins latéraux" > ~/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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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
Tester dans les deux sens
Un test depuis le conteneur ne suffit pas. Vérifiez aussi depuis une machine externe et depuis les services internes autorisés.
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 ce conteneur LXC, 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' "Tester dans les deux sens" > ~/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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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
Préparer les traces de diagnostic
Quand une règle bloque trop, il faut savoir où regarder : pare-feu hôte, pont réseau, route, DNS ou service cible.
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.
Conserver les traces avant correction
En incident, collectez avant de nettoyer. Ces fichiers servent ensuite à comprendre la cause et vérifier la portée.
sudo mkdir -p /root/incident-$(date +%F-%H%M)
sudo ss -tulpn > /root/incident-$(date +%F-%H%M)/sockets.txt
sudo ps auxf > /root/incident-$(date +%F-%H%M)/processes.txt
sudo journalctl --since '24 hours ago' > /root/incident-$(date +%F-%H%M)/journal.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `ss -tulpn` liste les ports ouverts et les processus qui écoutent.
- `ps` affiche les processus pour repérer ceux qui consomment le plus.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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
Relire après évolution
Un nouveau service ou une nouvelle IP peut rendre les anciennes règles incohérentes. Planifiez une revue réseau 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 ce conteneur LXC, 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' "Relire après évolution" > ~/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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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 7
Nommer les exceptions temporaires
Une ouverture provisoire doit avoir une date de fin et un responsable, sinon elle deviendra permanente par oubli.
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.
Repérer ce qui consomme le disque
Cette étape sépare le système, les données applicatives et les logs pour éviter les disques pleins surprises.
df -h
du -xh /var /srv /tmp 2>/dev/null | sort -h | tail -30
sudo find /var/log -type f -size +50M -ls
sudo journalctl --disk-usage
Ce que font les commandes
- `df -h` indique l’espace disque libre par point de montage.
- `du -xh` mesure l’espace consommé par dossier en restant sur le même système de fichiers.
- `find` recherche des fichiers selon des critères comme taille ou date de modification.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
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 LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- 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
- Flux listés
- LAN bloqués
- Tests sortants faits