GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Ssh – Passwörter an ein Skript übergeben?

Ich möchte scp eine Datei auf einen Remote-Host, und führen Sie von dort aus einen Befehl für die Datei aus und beenden Sie die Remote-Sitzung. Wenn ich ein gewöhnliches Skript schreibe, rufe scp auf und dann ssh , werde ich aufgefordert, zwei Passwörter einzugeben. Gibt es eine Möglichkeit zum Kopieren, ssh , und einen Befehl auf einem entfernten Rechner mit einem Passwort ausführen?

Und wie schreibt man Skripte, die mit dem Benutzer interagieren müssen, um Passwörter einzugeben?

Ich möchte "read" nicht verwenden, da es nicht sicher ist. Ich möchte kein passwortloses ssh verwenden , da meine private Schlüsseldatei möglicherweise kompromittiert ist, was noch schlimmer ist. Ich habe etwas über „erwarten“ gelesen, bin mir aber nicht sicher, ob es das richtige Tool ist.

Akzeptierte Antwort:

Ich möchte kein passwortloses ssh verwenden, da meine private Schlüsseldatei kompromittiert werden könnte, was noch schlimmer ist.

Nein, das ist falsch. Eine private Schlüsseldatei bietet mehr Sicherheit als ein Passwort. Verwenden Sie eine private Schlüsseldatei. Die private Schlüsseldatei ist mit einem Passwort verschlüsselt; Wenn jemand die Schlüsseldatei erhält, benötigt er immer noch Ihr Passwort. Wenn Sie die Passwort-Authentifizierung verwenden, wäre jeder, der das Passwort erhält, frei.

Führen Sie ssh-agent aus für die Dauer Ihrer Sitzung. Bevor Sie einen bestimmten Schlüssel verwenden, geben Sie das Passwort mit ssh-add ein (oder über eine GUI-Eingabeaufforderung). Dann gibt es keine Eingabeaufforderung, wenn Sie sich mit dieser Taste verbinden.


Linux
  1. 3 Möglichkeiten, wie ich SSH für den Datenschutz konfiguriere

  2. So richten Sie SSH-Schlüssel ein

  3. Ausführen einer Skriptdatei über SSH durch Sudo?

  4. Dasselbe Skript auf mehreren Servern über SSH ausführen?

  5. Aktivieren Sie die öffentliche SSH-Schlüsselauthentifizierung

So generieren Sie einen SSH-Schlüssel in Windows 10

Verwenden der SSH-Konfigurationsdatei

35 Bash-Skriptbeispiele

Wie richte ich die ssh-schlüsselbasierte Authentifizierung für Github mithilfe der Datei ~/.ssh/config ein?

So konvertieren Sie den privaten Schlüssel von PuTTY (.ppk) in einen SSH-Schlüssel

Öffentlichen Schlüssel zur Datei known_hosts hinzufügen