2016-04-28 13 views
1

Derzeit wird Filezilla zum Kopieren von einem Remote-Server verwendet. es ist erforderlich, manuelle Operation erfordert Kopieren und vervollständigen andere weitere Aufgabe nach dem Kopieren der Datei. SO muss ich Shellskript schreiben, um zu kopieren und weitere Aufgabe zu tun. Aber ich schaue auf den Server mit dem privaten/öffentlichen Schlüssel. Ich habe eine Schlüsseldatei, die folgenden Inhalt enthält:So melden Sie sich an, ohne ein Passwort mit dem privaten/öffentlichen Schlüssel einzugeben: imported-openssh-key

puTTY-User-Key-File-2: ssh-rsa 
Encryption: none 
Comment: imported-openssh-key 
Public-Lines: 6 
--<Public_key> 

Private-Lines: 14 
---<Private_key>-- 

Private-MAC: --<some text>-- 

Filiezilla ist erfolgreich verbinden und funktioniert ordnungsgemäß mit Schlüssel.

Ich habe schon viele Stunden zum googlen verbracht, aber konnte keine richtige Lösung bekommen. Bitte mir empfehlen, wie kann ich ohne das Login-Passwort, dass die angegebenen Schlüssel verwenden und kopieren Sie die Datei mit Shell-Skript

Antwort

1

Endlich habe ich die Lösung meiner eigenen Frage nach der Forschung und besuchen viele Website. PPK-Datei enthält:

puTTY-User-Key-File-2: ssh-rsa 
Encryption: none 
Comment: imported-openssh-key 
Public-Lines: 6 
--<Public_key> 
Private-Lines: 14 
---<Private_key>-- 

Private-MAC: --<some text>-- 

Eigentlich müssen wir unseren eigenen privaten Schlüssel entweder mit Passphrase oder ohne Passphrase generieren. Dann können wir den Server mit einem eigenen privaten Schlüssel anmelden.

Schritte privaten Schlüssel in diesem url

https://kb.paessler.com/en/topic/32883-how-can-i-use-private-keys-for-my-ssh-sensors-with-prtg

Nach dem Erzeugen privaten Schlüssel zu generieren, können wir mit SSH-Login oder stp tun:

sftp -oIdentityFile=<generated_private_key> <user>@<ftp_server>:<remote_directory> 

ssh -i <generated_private_key> <user>@<ftp_server> 

wir Bedeutung stp_command für Automatisierungsaufgabe verwenden können : http://www.csee.umbc.edu/courses/104/fall05/ordonez/sftp_cmds.shtml

Jetzt kann ich Shell-Skript nach dem Login schreiben und die Datei auf dem Remote-FTP-Server auflisten. wenn etwas Verwirrung. Bitte kommentieren.

0

Sie müssen von sich auf dem Client-Rechner, den privaten Schlüssel in einer Datei setzen, und dann:

ssh -i /path/to/ssh/key [email protected] 

Hier ist ein Tutorial: https://support.rackspace.com/how-to/logging-in-with-an-ssh-private-key-on-linuxmac/

+0

John, danke für die Antwort, ich folgte deinem Weg. Danach kam die folgende Eingabeaufforderung: 'Geben Sie die Passphrase für den Schlüssel 'private_key.txt' ein:' – Ramgau

+0

@Ramgau: Das bedeutet, dass Ihr bestimmter privater Schlüssel eine Passphrase erfordert. Wenn Sie vollständige Automatisierung wünschen, müssen Sie ein neues öffentliches/privates Schlüsselpaar generieren, das kein Passwort verwendet, und diesen öffentlichen Schlüssel zum Server hinzufügen, damit Sie sich anmelden können. –