@kaschperle83 sagte in Tastenkombination über SSH:
@liv-in-sky ich bekomme es nicht hin Befehle über ssh zu senden.
Ich bekomme den Schlüssel für ssh um es ohne Passwort zu nutzen nicht in den IObroker user.
Oder gibt es einen möglichkeit das Passwort jedesmal mitzugeben?
erst mal begriffe:
iobroker (hier client) will auf einem einem anderen rechner (server) ein programm aufrufen um daten abzurufen oder um dort eine aktion zu starten.
d.h.
rechner mit iobroker ist client
anderer rechner ist server
ziel ist es deinen public-key auf den anderen rechner zu bekommen um dort befehle ausführen zu können.
prüfen ob schon ein key auf dem client für iobroker existiert
sudo ls /home/iobroker/.ssh
Wenn da kommt nicht gefunden, dann gibt es noch keinen key, weiter mit 2)
Wenn da Dateien wie id_rsa und id_rsa.pub angezeigt wird, dann gibt es keys weiter mit 3)
Erzeugen eines keys für den benutzer iobroker
falls du noch nicht user iobroker bist
sudo -u iobroker bash
dann
sudo ssh-keygen -t rsa -b 4096 ~/.ssh/
im anschluss sollte über den Befehl in 1) geprüft werden ob die dateien nun angelegt wurden.
ggfs. sollte die gruppe und der owner noch an den user angepasst werden mit
falls du noch nicht user iobroker bist
sudo -u iobroker bash
dann
sudo chown iobroker:iobroker ~/.ssh/*.*
kopieren des public-keys auf den anderen rechner (der andere schlüssel ist geheim und darf den rechner nicht verlassen)
bei user@server muss user mit einem vorhandenen user auf dem entfernten rechner (also server) ersetzt werden und server mit der ip oder dem hostnamen des entfernten rechners.
höchstwahrscheinlich wird das der root user auf dem entfernten rechner sein.
das passwort für diesen user auf dem entfernten rechner muss eingegeben werden.
falls du noch nicht user iobroker bist
sudo -u iobroker bash
dann
sudo ssh-copy-id -i /home/iobroker/.ssh/id_rsa.pub user@server
im anschluss kann probiert werden, ob es funktioniert
um das zu prüfen, kann man auf dem iobroker-rechner (also client) eine shell als benutzer iobroker öffnen
falls du noch nicht user iobroker bist
sudo -u iobroker bash
erkennbar am prompt müsste dann da iobroker@rechnername stehen.
dann kann man den ssh befehl ausprobieren ob es klappt
wenn du die session als user iobroker beenden möchtest, dann einfach exit eingeben.
falls den befehl oben mehrfach eingegeben hast, dann bist du in mehrfach verschachtelten sessions.
alsosolange exit eingeben, bis wieder dein normaler user am prompt steht
nähere informationen hier:
https://wiki.ubuntuusers.de/SSH/#Publickey-Authentifizierung