Besoin d'aide script connexion ssh

Bonjour à tous,

Je suis novice en script, et j’aurais besoin d’un peu d’aide (pour ceux qui le veulent bien) sur la création d’un script ou d’un code qui me permettrait de rebooter régulièrement ma caméra Yi. sans avoir à la brancher sur une prise connectée.

Avant tout, et surtout avant de me lancer dans cette commande sur jeedom, voici ce que je sais faire sous Windows :

  • Me connecter en ssh sur la caméra => ssh root@192.168.0.10
  • root@192.168.0.10’s password => Enter car il n’y a pas de mot de passe
  • Lancer la commande => reboot
    Si je fais ces manip à partir de mon pc, tout fonctionne.

Malheureusement, quand je lance la commande ssh root@192.168.0.10 'reboot’ , j’ai 2 problèmes :

  • On me demande le mot de passe. Or si je veux lancer en automatique, c’est pas cool.
  • J’ai le message d’erreur suivant : sh: reboot: not found

Sauriez-vous me dire ce que je fais mal ?
Merci d’avance.

depuis Jeedom fait sudo ssh

Bonjour,
pour te simplifier la tâche, tu peux utiliser le plug-in SSH Commander, qui fonctionne à merveille. Il permet de passer de manière très simple des commandes SSH, et de récupérer les retours. Il gère aussi de manière transparente les identifiants et mots de passe.

Quand tu dis « depuis jeedom », tu fais référence à quel accès ?

1 « J'aime »

Oui, j’ai vu ce plugin, mais avant de l’acheter, je souhaitais m’assurer que ça fonctionnerait. :blush:

Ok, je comprends ! Si tu y arrives depuis ton ordinateur, il n’y a pas de raisons que ça ne fonctionne pas. En tous cas, personnellement j’ai testé avec un script, j’ai galéré avec les histoires de mot de passe, et avec le plugin en 2 min c’était opérationnel :wink: .

Je crois que je vais te faire confiance :blush:
Merci pour ton aide.

Je t’en prie, n’hésite pas nous faire un retour.

Bonjour @lunarok ,
Avant d’acheter ton plugin SSH commander, je souhaiterais avoir ton avis sur son bon fonctionnement dans ma config.
J’ai testé ma commande via ton script ssh_command.sh , et ça ne fonctionne pas non plus, et j’ai peur que ce soit pareil avec le plugin.

Merci.

quand on envoie une commande, on fournit son path, pas juste la commande (/usr/sbin/reboot)

Merci @lunarok

Alors pour ma part, la commande est :
ssh root@192.168.0.10 /home/base/tools/reboot
Devrais-je retrouver comme ça toutes les commandes que je veux utiliser en utilisant ton plugin ?

De plus, par script, ça ne passe pas. Peut-être lié au MDP vide ?
Mais ce n’est pas bien grave si tu me confirmes qu’avec ton plugin je n’aurais pas le soucis.

La deuxième utilisation de ce plugin consisterait à récupérer les vidéos pour les copier sur mon PC Jeedom.
La difficulté est que le répertoire source des vidéos se trouve en amont du répertoire de connexion ssh. Cela ne posera pas de pb non plus ?
Merci.

Bonjour,
pour ma part j’avoue que je ne me suis même pas « embêté » à retrouver les chemins complets des commandes. J’ai juste mis leur nom, et le $path (variable qui déclare les dossiers dans lesquels le système doit rechercher les exécutables …) a fait le reste. Ce n’est peut-être pas très « propre », mais ça a fonctionné.
Effectivement je me souviens que la gestion des mots de passe ssh (que ce soit avec un script maison ou avec le script ssh_command) n’est pas évidente. C’est même pour cette raison que je suis passé au plugin, avec succès. Par contre, petite digression, en règle générale il est risqué de ne pas en mettre un.
Pour la copie des fichiers, il n’y a pas de raison que ça ne fonctionne pas, tant que tu connais leur chemin absolu (du type /media/videos …), le chemin absolu de la destination, et que les droits d’accès en lecture/écriture sont bien configurés (ce qui est simple à faire si nécessaire).
N’hésite pas à demander si tu as besoin d’aide pour rédiger tes commandes.

J’utilise aussi ce plugin, mais je n’arrive pas a voir ce que je veux, j’aimerai me connecter a mon switch cisco pour desactiver le POE sur certains ports. J’arrive bien a le faire a la main, mais avec le plugin ça ne fonctionne pas. En gros je dois me loguer, choisir un nom, et entrer 3 fonctions successives, et c’est la ou je bloque, je n’arrive pas a configurer cela.

Ok merci c’est vraiment sympa.

Le pb, c’est que cette caméra a été hackée pour pouvoir activer le rtsp, ftp, ssh, etc …
Et je ne suis pas certain que tout y est.
Pour le mot de passe, je suis conscient du risque, mais comme elle n’est accessible que par mon réseau local et que celui-ci est sécurisé, le risque est moins grand. Le truc con, c’est que je ne sais même pas en ajouter un :pensive:
Je viens du monde Windows, et linux est encore bien mystérieux pour moi.
La grande force de jeedom, c’est de pouvoir faire des milliards de choses. Mais malheureusement, pour des personnes comme moi, c’est aussi sa faiblesse. Car il y a tellement de possibilité pour faire 1 chose, qu’on s’y perd un peu des fois.
Prenons l’exemple de la copie de données.
Comme la caméra fait serveur FTP, je me suis naturellement dirigé vers cette solution pour transférer les vidéos. J’ai donc téléchargé le plugin « Data transfert » qui me semblait adapté. Mais, non finalement, car le transfert ne se fait pas dans le bon sens :yum:
Je n’en veux pas au dev de ce plugin, car son usage n’est tout simplement pas adapté à mon besoin. Pas grave, car celui-ci était gratuit. Mais s’il avait été payant, je l’aurais eu dans l’os :cry:
Il faudrait presque un système de délais de test des plugins. Style gratuit durant 24h.

Pourrais-tu donner un peu plus de détails ? Qu’appelles-tu « choisir un nom » ? Quelles sont les fonctions que tu souhaites entrer ?

Effectivement Linux est un autre monde, mais ça vaut le coup de s’y consacrer un peu :wink: . Entre autres ssh est d’une puissance formidable, et permet de tout faire pour peu qu’on l’utilise correctement.
Tu peux tenter un dernier test avec le script, avant de devoir passer au plugin (dont il faut relativiser le prix, après tout c’est 3 cafés, ou une bonne bière pression, ou moins de 30% du prix d’une prise commandée bas de gamme :slight_smile: ) : essaie de passer la commande « sudo reboot » à la place de « reboot ». Sudo permet de passer des commandes en tant qu’administrateur (=root en langage linux) et non en tant que simple utilisateur.
Pour ta copie de fichiers, peux-tu donner plus de détails ? Tu veux les copier vers où ?

non, avec sudo reboot, c’est pas mieux.
Je vais essayer de créer un autre user avec un MDP pour voir.

En ce qui concerne le prix du plugin, je suis d’accord avec toi. Et ce n’est pas vraiment ça qui me gêne. C’est plutôt l’idée d’acheter qq chose pour rien :wink:

Pour la copie des fichiers, le principe est simple : Les fichiers se trouvent sur la carte sd de la caméra. Je voudrais pouvoir les récupérer pour les sauvegarder ailleurs. Sur mon jeedom ou sur un autre support.

ok, donc si tu veux faire une copie par ssh, il faudra que tu commences par monter sur ta caméra (avec les droits lecture/écriture) le support de destination : en gros, tu l’attaches à ton arborescence, pour qu’il apparaisse comme un dossier normal de ta caméra. Il y a plusieurs façon assez simples de faire ça, ça se trouve aisément sur internet (commande sudo mount, modification du fstab). Ensuite, il n’y a plus qu’à faire la copie comme si c’était d’un dossier local de la caméra à un autre dossier local. Si tu as besoin d’exemples de commandes, n’hésite pas, j’ai aussi eu à en passer par ssh.

Des scripts avec login mot de passe en ssh ca marche pas
En ssh il faut faire un échange de clés ssh entre ton client et ton serveur pour justement dialoguer sans password

Sinon si tu ne peux pas il faut a mon sens utiliser expect
Qui est une commande qui est capable d envoyer des commandes séquentielle en simulant les appui sur entrée

Houlaa … je crois que j’ai mis le doigt dans qq chose qui va me dépasser :rofl:
Je vais étudier vos commentaires.

Encore merci pour votre aide.