Éteindre un serveur à distance

Objectif : éteindre à distance les ordis en local, via une commande sur l'ordiphone. Ceci sans ouvrir de faille de sécurité.

Générer une clé ssh sous Android

Ici l'ordiphone sert de télécommande, il est moins éteint que les autres appareils.

Je tente avec l'application “Termux” (terminal ayant l'outil ssh), dispo sur fdroid.

Il faut y installer le paquet ssh suivant les instructions données dans ce terminal, puis

ssh-keygen -t ed25519

Copiez ensuite la clé publique à un endroit où on peut la récupérer pour la suite.

Compte "dodo" sur le serveur

Créer un user dont la seule fonction sera de pouvoir arrêter l'ordi

useradd dodo -m -U -s /bin/bash

Paramétrer l'user pour qu'il aie le droit d'éteindre

sudo -i
sudo visudo
#Ajouter la ligne suivante 
dodo    ALL= NOPASSWD: /sbin/shutdown

Mettre la clé ssh pour se connecter à son compte.

mkdir /home/dodo/.ssh
nano /home/dodo/.ssh/authorized_keys2

Ajouter la commande idoine au début de la ligne ssh : command=“shutdown -Ph now”, cela va forcer la mise à l'arrêt dès la connexion ssh de “dodo”.

command="sudo shutdown -Ph now" ssh-ed25519 AAAAC3... dodo@localhost

Puis mettre les droits proprement

chown -R dodo: /home/dodo/.ssh
chmod 0700 /home/dodo/.ssh/
chmod 0600 /home/dodo/.ssh/authorized_keys2

Dès la connexion ssh réussi de “dodo”, l'ordinateur s'éteindra.

 Ce texte est placé sous licence CC0

CC Attribution-Noncommercial-Share Alike 4.0 International Driven by DokuWiki
pratique/informatique/eteindre.txt · Dernière modification : 24/06/2021 12:53 de Zatalyz