Base de connaissances

Accéder quand le réseau est en panne

La console série et VNC atteint l’instance via un chemin qui ne dépend pas de votre configuration réseau, ce qui est précisément le moment où vous en avez besoin.

Ce que c’est

Un tunnel authentifié vers la ligne série et l’affichage virtuel de l’instance. Il est inclus dans chaque offre, il ne traverse pas la pile réseau de votre instance, et il continue de fonctionner quand sshd est mort, que le pare-feu est mal configuré, que la route par défaut est absente ou que le système de fichiers racine est passé en lecture seule. Les sessions s’ouvrent depuis le panneau. Chacune est un droit à usage unique, expire en minutes et exige le second facteur de votre compte.

Vérifiez la ligne série avant d’en avoir besoin

La plupart de nos images sont déjà correctes. Vérifiez :

cat /proc/cmdline
systemctl status [email protected]

Vous voulez console=ttyS0,115200n8 sur la ligne de commande et un getty actif. Sur Debian, ajoutez console=tty0 console=ttyS0,115200n8 à GRUB_CMDLINE_LINUX dans /etc/default/grub, puis :

update-grub
systemctl enable --now [email protected]

AlmaLinux 10 utilise des entrées de spécification de chargeur d’amorçage, modifiez-les donc avec grubby plutôt qu’à la main :

grubby --update-kernel=ALL --args="console=tty0 console=ttyS0,115200n8"
systemctl enable --now [email protected]

Obtenir un shell quand il n’y a pas de shell

Depuis la console, redémarrez et interrompez le chargeur d’amorçage. GRUB s’affiche pendant quelques secondes ; appuyez sur e sur l’entrée voulue et modifiez la ligne linux.

  • Services arrêtés, réseau coupé, racine montée : ajoutez systemd.unit=rescue.target, puis Ctrl-X.
  • Échec du mode de secours lui-même : systemd.unit=emergency.target.
  • Pas de mot de passe ni de clé : init=/bin/bash.
mount -o remount,rw /
passwd root
mount -o remount,ro /

Avec init=/bin/bash, il n’y a pas d’init pour arrêter quoi que ce soit, donc remontez en lecture seule et coupez l’alimentation depuis le panneau. Taper reboot à cette invite ne fait rien d’utile.

Le cas du pare-feu

Vous vous enfermer dehors avec nftables est la raison la plus courante pour laquelle une session console est ouverte. Le chemin du retour :

nft list ruleset
nft flush ruleset
systemctl restart sshd

Un jeu de règles vide signifie aucune filtration du tout, donc réparez le fichier et rechargez-le dans la même séance plutôt que de le laisser au lendemain. La prochaine fois, chargez un nouveau jeu de règles derrière un interrupteur à homme mort :

systemd-run --on-active=120 nft flush ruleset
nft -f /etc/nftables.conf

La première commande affiche l’unité transitoire qu’elle a créée. Si vous êtes toujours connecté deux minutes plus tard, arrêtez ce minuteur et gardez les règles. Sinon, il les annule sans vous.

Lire un démarrage qui a échoué

La console série transporte tout le démarrage, donc une panique ou un échec de montage se lit plutôt qu’il ne s’infère du silence. Une fois de retour, le démarrage précédent est encore dans le journal :

journalctl -b -1 -p err

Ce que ce n’est pas

Ce n’est pas un système de secours avec son propre système de fichiers racine. Pour cela, démarrez l’image de secours depuis le panneau : un petit environnement live, vos disques non montés, et les outils pour les réparer.

Ce n’est pas non plus un endroit où laisser une session ouverte. Le droit dure aussi longtemps que la session, donc fermez-la quand la machine est réparée.

Prêt quand vous l'êtes

Choisissez une ville. Choisissez une taille. Payez en crypto.

Aucun formulaire sur votre identité, pas d'attente d'approbation humaine, pas d'appel téléphonique pour vérifier quoi que ce soit. La facture est réglée et les identifiants arrivent dans votre boîte mail.