Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Problem mit simple-ssh zur synology

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Problem mit simple-ssh zur synology

    This topic has been deleted. Only users with topic management privileges can see it.
    • Glasfaser
      Glasfaser @alka last edited by

      @alka sagte in Problem mit simple-ssh zur synology:

      ach jetzt sehe ich, du selbst bist es der das script bereitgestellt hat

      ... aber das Script von dir ist anders

      new SSH2({
      port:'22',

      1 Reply Last reply Reply Quote 0
      • A
        alka @alka last edited by alka

        @alka

        stümmt 😉

        hatte ich verrbastelt als ich viele Variationen und ein anderes script probiert hatte, funktioniert aber leider mit SSH ohne 2 auch nicht und gibt nichts aus

        u.a. so:

                ssh.exec('echo "/usr/bin/synowebapi --exec api=SYNO.Docker.Container version=1 method=restart name=ct1"',{
                    err: (err) => {
                            log('SSH Error:', err);
                        },
                    exit: () => {
                        //cb && cb();
                        log('SSH  exit');
                    }
                }).start();
        
            } catch (e) {
                log('--- SSH Error ', e);
            } 
        });
        

        Nachtrag
        nun, da ich eine Weile das script nicht mehr gestartet hatte, die syno in Ruhe war und ich wieder von SSH2 auf SSH geändert und sicherheitshalber probiert habe, ist zumindest die syno Plattenerweiterung geweckt worden (was bedeutet dass irgendein Zugriff dort angekommen ist) - und vergessen: syno mit DSM 7.0.1

        Glasfaser 1 Reply Last reply Reply Quote 0
        • Glasfaser
          Glasfaser @alka last edited by Glasfaser

          @alka sagte in Problem mit simple-ssh zur synology:

          und vergessen: syno mit DSM 7.0.1

          Das macht nichts ...

          Melde in der Syn an als root

          dann den kompletten Befehl absenden :

          /usr/syno/bin/synowebapi --exec api=SYNO.Docker.Container version=1 method=restart name=ct1
          

          danach kommt / sollte kommen und der Container startet neu .

          [Line 285] Exec WebAPI:  api=SYNO.Docker.Container, version=1, method=restart, param={"name":"ct1"}, runner=
          {
             "data" : {
                "cpu" : 0,
                "memory" : 28635136,
                "memoryPercent" : 0.17224828898906708,
                "name" : "ct1"
             },
             "httpd_restart" : false,
             "success" : true
          }
          
          
          A 1 Reply Last reply Reply Quote 0
          • A
            alka @Glasfaser last edited by alka

            @glasfaser
            mit root erhalte ich keinen Zugriff, was wohl seit DSM 7.x auch so gedacht ist

            edit
            sooo - root geht nur noch per key hab ich grad gelesen

            damin-konto aber permission denied, muss mal suchen wie ich die pfad-rechte setzen muss

            Glasfaser A 2 Replies Last reply Reply Quote 0
            • Glasfaser
              Glasfaser @alka last edited by Glasfaser

              @alka sagte in Problem mit simple-ssh zur synology:

              mit root erhalte ich keinen Zugriff, was wohl seit DSM 7.x auch so gedacht ist

              Wo steht dass denn ,
              es geht nur darum das der Standart Nutzer ( mit Rechten / Administrator ) Admin heißt und den sollte man ändern/ ausschalten .

              Da wurde noch nie was ausgeschaltet :
              EDIT:

              login as: root
              root@xxxx.xxx.xxx.xx's password:
              
              Synology strongly advises you not to run commands as the root user, who has
              the highest privileges on the system. Doing so may cause major damages
              to the system. Please note that if you choose to proceed, all consequences are
              at your own risk.
              
              root@xxxx:~#
              
              1 Reply Last reply Reply Quote 0
              • A
                alka @alka last edited by alka

                @alka
                hmh, dann verbocke ich hier was - Permission denied, please try again.

                habe pw nochmal neu gesetzt (denke ich mal) und neu gestartet, kein Zugriff
                ch57@Diskstation716:/$ sudo -i
                Password:
                root@Diskstation716:~# synouser -setpw root xxxx

                edit:
                egal was ich versuche, root anmelden wird verweigert
                nach admin und sudo kann ich den restart problemlos ausführen lassen

                Glasfaser 1 Reply Last reply Reply Quote 0
                • Glasfaser
                  Glasfaser @alka last edited by

                  @alka

                  Ich habe gerade keine Idee .... woran es bei dir liegt .

                  1 Reply Last reply Reply Quote 0
                  • A
                    alka last edited by alka

                    @glasfaser

                    habe reichlich Versuche gefahren, ändert nichts
                    lässt sich sudo in den exec-Befehl einbauen und damit die admin-anmeldung nutzen?

                    oder per chmod die Datei zum Ausführen für admin-Gruppe verfügbar machen?

                    Glasfaser A 2 Replies Last reply Reply Quote 0
                    • Glasfaser
                      Glasfaser @alka last edited by

                      @alka sagte in Problem mit simple-ssh zur synology:

                      lässt sich sudo in den exec-Befehl einbauen und damit die admin-anmeldung nutzen?

                      Es wird dann aber nach dem Sudo Befehl das Passwort von root gefragt , wie man das übergibt kann ich dir nicht ( im Moment ) sagen .

                      1 Reply Last reply Reply Quote 0
                      • A
                        alka @alka last edited by alka

                        @alka
                        auch wahr, hatte ich nicht bedacht

                        chmod für die Datei geht auch nicht? für admins ausführbar?

                        Glasfaser 2 Replies Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @alka last edited by

                          @alka

                          Wäre ungefähr so

                          echo -e "Password"  | sudo ...........
                          
                          1 Reply Last reply Reply Quote 0
                          • Glasfaser
                            Glasfaser @alka last edited by Glasfaser

                            @alka

                            Hier das komplette Script , gerade mit portainer getestet :

                            //Glasfaser  17.01.2021
                            //Glasfaser  08.05.2022 echo -e Passwort hinzugefügt 
                            //https://forum.iobroker.net/topic/40916/docker-container-restart-iobroker-per-script
                            //https://forum.iobroker.net/topic/54782/problem-mit-simple-ssh-zur-synology/15
                            //Synology Docker Container von ioBroker aus neustarten 
                            //Im JS Adapter zusätzliche NPM-Module, den Eintrag: simple-ssh
                            //im SSH Befehl name=iobroker : auf dein Containernamen ändern 
                            // bei echo -e Passwort , Passwort anpassen
                             
                            
                            
                            on({id: "0_userdata.0.Test123", change: 'ne', val: true }, function (obj) {
                             
                            
                            log ("--> Neustart Docker gestartet!");
                            
                            console.log('+++ Neustart Docker +++');
                            
                              setState('0_userdata.0.Test123', false);
                            
                              
                            
                            var SSH = require('simple-ssh');
                            
                            
                            var ssh = new SSH({
                            
                               host: 'xxx.xxx.xxx.xxx',
                            
                               user: 'User',
                            
                               pass: 'Passwort'
                            
                            });
                            
                            
                            ssh.exec('echo -e Passwort  | sudo -S /usr/syno/bin/synowebapi --exec api=SYNO.Docker.Container version=1 method=restart name=portainer', {
                            
                               out: function(stdout) {
                            
                                   console.log(stdout);
                            
                                   
                            
                             
                            
                               }
                            
                            }).start();
                            
                             
                            
                            }
                            
                            );
                            

                            das kommt dazu , wie ich schon oben geschrieben habe :

                            echo -e Passwort  | sudo -S
                            

                            dann kommt im ioBroker Log auch :.

                            2022-05-08 19:57:38.296 - info: javascript.0 (462) script.js.Synology.Docker_Neustart: {
                            "data" : {
                            "cpu" : 0,
                            "memory" : 28975104,
                            "memoryPercent" : 0.17429329454898834,
                            "name" : "portainer"
                            },
                            "httpd_restart" : false,
                            "success" : true
                            }
                            
                            A 1 Reply Last reply Reply Quote 0
                            • A
                              alka @Glasfaser last edited by alka

                              @glasfaser

                              dickes dankeschön dafür, noch dazu am So!

                              habe es komplett übernommen, meine Variablen eingetragen - leider nix
                              kann aber inzwischen daran liegen, das die Firewall der syno dicht gemacht hat wegen zu vieler Zugriffe, muss mich jetzt um Familie kümmern und setz mich die nächsten Tage noch mal dran

                              Nachtrag:
                              konnte es nicht lassen da nochmal bei zu gehen - es funktioniert!👍
                              nochmals ein ganz liebes dankeschön dafür!

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              756
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              2
                              16
                              669
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo