Sicheres Kopieren ohne Passworteingabe

Ich verwende unter Linux Secure Shell (SSH) beziehungsweise scp, um Dateien über eine verschlüsselte Verbindung auf einen anderen Rechner zu übertragen. Bei jeder Übetragung fragt scp jedoch nach einem Passwort. Wie kann ich das abstellen, damit ich die Dateien auch automatisch in einem Skript holen kann, ohne den Rechner für jedermann zu öffnen?

vorlesen Druckansicht
Lesezeit: 1 Min.

Ich verwende unter Linux Secure Shell (SSH) beziehungsweise scp, um Dateien über eine verschlüsselte Verbindung auf einen anderen Rechner zu übertragen. Bei jeder Übetragung fragt scp jedoch nach einem Passwort. Wie kann ich das abstellen, damit ich die Dateien auch automatisch in einem Skript holen kann, ohne den Rechner für jedermann zu öffnen?

Das funktioniert über die RSA Challenge-Response-Authentifizierung, die dank des Public-Key-Verfahrens kein Passwort erfordert. Auf dem Server muss lediglich eine Kopie des Public Key des Benutzers installiert sein, um seine Identität zu überprüfen. Dabei sendet der Server eine so genannte Challenge an den SSH-Client. Dieser verschlüsselt die Daten mit seinem Private-Key und sendet sie an den SSH-Server zurück. Wenn dort die mit dem Public-Key wieder entschlüsselten Daten mit der Challenge übereinstimmen, war der Benutzer offensichtlich im Besitz des erforderlichen Private-Keys - er ist authentifiziert.

In der Praxis erstellen Sie dazu mit ssh-keygen ein Schlüsselpaar, das Sie nicht mit einer Passphrase versehen. Anschließend kopieren Sie die Datei ~/.ssh/identity.pub auf den entfernten Rechner in die Datei ~/.ssh/authorized_keys. Jetzt sollten alle SSH-Kommandos wie scp ohne Passworteingabe funktionieren. Falls nicht, zeigt die Option ‘-v’ die einzelnen Schritte zur Authentifizierung an. Sie können im Übrigen denselben Schlüssel in identity.pub auch auf beliebige andere Rechner kopieren, zu denen Sie direkten Zugang haben möchten. (ju) (ju)