2016-07-08 2 views
-1

Ich (sehr) kürzlich gepostet this Frage in Bezug auf Teer über ssh.Teer über ssh in Kombination mit sshpass

Die Frage hat jetzt eine Antwort, und ich stelle jetzt eine andere Frage.

Ich führe den folgenden Befehl, um Code von meinem lokalen Rechner auf meinen Server zu drücken, wo es ausgeführt wird.

tar -cJf - ./my_folder | ssh [email protected] 'tar -xJf - -C ./path-to-my_folder/' 

Ich weiß, dass mit ssh/scp ich sshpass -p password verwenden Sie den Befehl fragt nach meinem Passwort jedes Mal zu stoppen. Beachten Sie, dass ich keine alternativen Authentifizierungsmethoden verwenden kann.

Ist es möglich, sshpass mit meinem obigen Befehl zu kombinieren, so dass ich mein Passwort nicht ständig eingeben muss?

Mit anderen Worten wie soll ich der obige Befehl bearbeiten sshpass enthält so dass ich nicht mein Passwort der obigen Befehl ausgeführt wird jedes Mal eingeben müssen?

Edit: Beachten Sie folgende Hinweise

funktioniert

Zum Beispiel

sshpass -p <password> ssh ... blaa blaa 
sshpass -p <password> scp ... blaa blaa 
+0

finden Haben Sie auf der folgenden Post betrachtete askubuntu, http://askubuntu.com/questions/282319/how-to-use-sshpass? – mattias

+0

@mattias Ich hatte es nicht gesehen, aber es scheint nicht relevant zu sein? – user3728501

+0

Vielleicht habe ich deine Frage dann falsch verstanden. Sie wissen, wie Sie sshpass verwenden, was ist das Problem? – mattias

Antwort

0

Ich glaube, Sie so etwas wie dieses verwenden können:

tar -cJf - ./my_folder | sshpass -p $remote_ssh_password ssh -o StrictHostKeyChecking=no [email protected]$remote_web_address "tar -xJf - -C ./path-to-my_folder/" 

Hinweis: StrictHostKeyChecking = keine zur Vermeidung von Eingabeaufforderung für Bestätigung des Server-Fingerabdrucks Es könnte ein Sicherheitsproblem verursachen:

"Daher, wenn Sie wissen möchten, ob Sie mit dem richtigen Server sprechen (und nicht einige Imitator), dann müssen Sie" nur "den Schlüssel Fingerabdruck des Servers (aus der Öffentlichkeit Schlüssel, den der Server gerade an Sie gesendet hat) und vergleichen Sie es mit einem "Referenz-Fingerabdruck". "

Weitere Informationen finden Sie auf here

+0

Perfect thanks that working – user3728501

+0

Aber warum die strikte Host-Key-Überprüfung Sache? – user3728501

+2

@ user3728501 - 'StrictHostKeyChecking = no 'fragt nicht nach dem Host-Schlüssel, wenn er noch nicht in' known_hosts' ist. Ohne sie wird das Skript pausieren und um Akzeptanz bitten, was "sshpass" falsch interpretieren könnte. – alvits