La question est simple.
Quel serait le script que je devrais utiliser pour éteindre un ordinateur de mon réseau via ssh.
Normalement, j'irais en ligne de commande et:
ssh desktop
delik@desktop's password:
delik@desktop:~$ Sudo shutdown -P 0
Pour mettre sous tension, j'ai créé un fichier et écrit:
wakeonlan xx:xx:xx:xx:xx:xx
Et lui a donné le bit exécutable
Cette façon de l'allumer ne nécessite qu'un double clic. Serais-je capable de faire la même chose à l'arrêt?
En supposant que l'utilisateur que vous allez utiliser dans remote.Host est identique à celui que vous utilisez en local.Host
Pour ce faire, vous devez d'abord autoriser votre hôte local.Host à se connecter à votre distant.Hôte sans mot de passe.
Pour faire cela, vous devez: (comme décrit ici)
Sudo apt-get install ssh
Sur votre hôte local, entrez cette commande:
ssh-keygen
Vous devez enregistrer la clé générée dans:
/home/yourusername/.ssh/id_rsa
Appuyez deux fois sur Entrée pour laisser la phrase secrète vide.
Your identification has been saved in /home/yourusername/.ssh/id_rsa.
Your public key has been saved in /home/yourusername/.ssh/id_rsa.pub.
The key fingerprint is:
XX:XX:XX:xX:XX:xX:XX:XX:XX:XX:XX:XX:XX:XX yourusername@local-Host
yourusername@local-Host$ ssh-copy-id -i ~/.ssh/id_rsa.pub remote-Host
yourusername@remote-Host's password:
Now try logging into the machine, with "ssh remote-Host", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
Remarque: ssh-copy-id ajoute les clés au /home/yourusername/.ssh/authorized_key de l’hôte distant.
ssh remote-Host
[email protected]:~$
Accès à l'hôte distant sans mot de passe. Succès!
Maintenant, vous devez être capable de exécuter l'arrêt Sudo -P 0 sans mot de passe .
De cette façon, l'utilisateur " votrenomutilisateur " peut exécuter la commande d'arrêt sans mot de passe demandé.
Connectez-vous à l'hôte distant.
ssh remote.Host
Courir:
Sudo visudo
En exécutant visudo, cela conduit à éditer/etc/sudoers.
Ajout de la ligne ci-dessous à ce fichier.
yourusername ALL = NOPASSWD: /sbin/shutdown
C'est fait, retournez chez votre hôte.Host
Créez un nouveau fichier vide et collez cette ligne en modifiant le nom de l'hôte distant.
ssh remote.Host Sudo shutdown -P 0
Sauvegardez-le et fermez-le, allez dans sa Propriétés dans les diapositives, puis cliquez sur le bouton , exécutez ce fichier en tant que programme