#1 Le 25/03/2014, à 23:47
- Xavier::T
SSH, exécuter commande à la connection / déconnexion d'un client
Voilà, déjà bonjour, c'est mon premier post dans le forum, j'ai fini par m'inscrire parceque je ne trouvais pas l'ombre d'un pet de réponse pour cette question. On trouve beaucoup de scripts pour se connecter en ssh, mais moi ce qui m'interesse, c'est de lancer un script quand un client se connecte ou se déconnecte.
Je m'explique: J'ai un raspberry que je veux utiliser en serveur, donc branché à un HDD alimenté en externe qui fait un bordel pas possible quand il est alimenté. Or, je ne m'en sers pas souvent, uniquement quand je fais des syncros ou des connections ssh. L'idée ça serait donc de quand je n'ai personne de connecté, se servir des pins du raspberry pour éteindre un relais qui me coupe l'alimentation du disque, et que quand un client se connecte, il allume le disque, le décrypte et le monte. Une idée toute bête mais j'ai rien vu permettant de lancer un script en fonction de l'état du serveur ssh. Peut-être en surveillant le fichier de log? Le truc qui serait encore mieux, c'est qu'il mette en standby le client le temps que le disque soit monté et après le client peut accéder au contenu.
Sinon j'ai pensé faire un système mesurant les accès au DOSSIER dans lequel le disque est monté, mais pareil, aucune info trouvée, et puis ça serait moins bien en plus...
Enfin toutes les propositions sont les bienvenues.
Hors ligne
#2 Le 26/03/2014, à 13:26
- tiramiseb
Re : SSH, exécuter commande à la connection / déconnexion d'un client
Peut-être en surveillant le fichier de log?
Oui éventuellement /var/log/auth.log.
Par contre il faut attendre après la connexion en SSH, le temps que le disque se mette en branle.
L'autre possibilité, c'est que l'utilisateur qui se connecte le fasse manuellement, ou alors si c'est un truc automatique, que le truc automatique exécute la commande avant de se servir du disque (et l'arrête au moment où il se déconnecte).
j'ai pensé faire un système mesurant les accès au DOSSIER dans lequel le disque est monté
Oublie, car ce serait trop tard : il faut que le disque soit prêt AVANT qu'on essaie d'y accéder.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#3 Le 26/03/2014, à 13:28
- nesthib
Re : SSH, exécuter commande à la connection / déconnexion d'un client
Tu as plusieurs solutions. Par exemple tu peux ajouter dans ton /etc/ssh/sshd_config :
Match User utilisateur1
ForceCommand /emplacement/vers/la/commande_ou_script
L'idéal étant d'utiliser un script de la sorte :
#!/bin/bash
# on lance les commandes voulues
commande1
commande2
# on lance le shell si on veut une session interactive
/bin/bash
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#4 Le 26/03/2014, à 13:42
- bruno
Re : SSH, exécuter commande à la connection / déconnexion d'un client
Oui regarde la première réponse ici : http://askubuntu.com/questions/10294/ru … -or-logout
#5 Le 26/03/2014, à 13:50
- Xavier::T
Re : SSH, exécuter commande à la connection / déconnexion d'un client
Whoa. Parfait. Nickel ça marche sans problème et c'est exactement ce que je cherchais. Ben merci beaucoup. Problème résolu.
Hors ligne
#6 Le 26/03/2014, à 14:27
- nesthib
Re : SSH, exécuter commande à la connection / déconnexion d'un client
@bruno : en gros c'est ma solution
@Xavier::T : si ton problème est résolu, modifie ton premier message pour ajouter [résolu] au début du titre
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne