sshfs schlägt fehl mit "Remote-Host wurde getrennt"

26

Ich verwende sshfs mit folgendem Inhalt:

sshfs [email protected]:/var/www/myapp /home/basicuser/code -o sftp_server="/usr/bin/sudo /usr/libexec/openssh/sftp-server"

Ich habe auch RSA-Schlüssel erstellt, damit ich mich ohne Passwortabfrage über ssh anmelden kann (ich habe dies getestet und es funktioniert).

Ich habe auch den Benutzer zur sudoers-Datei hinzugefügt, um den sftp-Server ohne Passwort auszuführen:

basicuser  ALL=(ALL)  NOPASSWD:  /usr/libexec/openssh/sftp-server

Was könnte diesen Fehler verursachen? Wie finde ich das heraus?

Bearbeiten

Ich versuche, einen Ordner auf dem lokalen Computer vom Remote-Server bereitzustellen. Auf dem Remoteserver verfügt nur Root über Lese- / Schreibberechtigungen für diesen Ordner.

Remote-Ordner: / var / www / myapp (nur root lesen / schreiben)

Don Rhummy
quelle
Warum müssen Sie sftp-serverauf dem Server als root ausgeführt werden?
Dan D.
@DanD. Der Ordner, den ich auf dem lokalen Computer mounten werde, ist auf dem Remote-Server nur root.
Don Rhummy

Antworten:

42

Sie erhalten viel mehr Informationen über den Fehler, wenn Sie sshfs wie folgt ausführen:

sshfs -odebug,sshfs_debug,loglevel=debug user@host ...

In der Regel erhalten Sie dadurch eine wesentlich hilfreichere Lösung, um das Problem zu beheben.

Alex Hofsteede
quelle
3

Es war tty erforderlich (dies bedeutet im Grunde, dass etwas nicht im Hintergrund ausgeführt werden kann, sondern ein aktives Terminalfenster benötigt, um ausgeführt zu werden). Also habe ich Folgendes hinzugefügt /etc/sudoers(bearbeitet durch visudo):

Defaults:basicuser !requiretty

Ich möchte, dass nicht nur für diesen einen Befehl tty erforderlich ist, aber dies ist möglicherweise nicht möglich: https://unix.stackexchange.com/a/80159

Don Rhummy
quelle
0

Vielen Dank an @Alex Hofsteede für die Debugging-Informationen.
Mein Problem war, dass ich eine benutzerdefinierte Chiffre verwendete, die Blowfish-Chiffre.
command-line line 0: Bad SSH2 cipher spec 'blowfish-cbc'.
Ich habe die benutzerdefinierte Chiffre entfernt und es hat funktioniert.

Codenamejames
quelle
Warum postest du das als Antwort? Dies sollte ein Kommentar zu seiner Antwort sein
Don Rhummy
1
Dies ist eine Antwort auf die Frage, ob der Remotehost nicht verbunden ist. What could be causing this error? How do I figure that out?Es war einfach nicht die Antwort, die das OP suchte. Ich hatte jedoch die gleiche Frage und dies war meine Antwort.
Codenamejames