Ich möchte eine Datei von einer aktiven SSH-Sitzung herunterladen. In vielen Fällen wahrscheinlich ich könnte verwenden SFTP nur, scp
, rsync
et al , aber es gibt Zeiten , in denen ich Berechtigungen auf dem Remote - Server in einer Weise erhöht habe ich nicht diese Methoden verwenden können.
Wenn Sie Schwierigkeiten haben zu verstehen, was ich meine, stellen Sie sich vor, Sie wollten etwas von /root/
oder herunterladen /var/log/auth.log
. Root Login ist deaktiviert (da wir keine Idioten sind). Wie bekommen Sie diese Datei? Kopieren Sie es an einen weniger geschützten Ort und verschieben Sie es dann? Das ist klobig. Es gibt auch Szenarien, in denen der Remote-Pfad komplex oder temporär ist oder nicht einmal ein Pfad, weil die Ausgabe eines Remote-Befehls lokal gespeichert werden soll. Aus der Ferne speichern, dann kopieren? Clunk!
Es gibt mehrere umständliche Möglichkeiten, um Versionen davon zu erhalten, aber in einer idealen Welt hätte ich einen ähnlichen lokalen Schreibzugriff vom Remoteserver aus, wobei ich die vorhandene SSH-Sitzung als Conduit verwende. So etwas wie (das ist nur ein künstlerischer Eindruck):
$oli@remote: cp /root/cheesecake /local/
Und es erscheint nur in meinem lokalen cwd
. Und bidirektionaler Zugriff wäre keine schlechte Sache.
Es ist acht lange Jahre her, seit ich diese Frage gestellt habe und wir haben ein echtes Klirren gesehen, aber es bleibt ein Problem, mit dem ich gelegentlich immer noch zu kämpfen habe.
Ich habe die Frage in etwas viel Idealistischeres umgestaltet. Ich verstehe voll und ganz, dass es derzeit möglicherweise keine perfekte Antwort gibt. Alle bisherigen und zukünftigen Bemühungen um mein Ideal werden gewürdigt.
zssh
ist wahrscheinlich dem zmodemähnlichen Workflow am nächsten, an den Sie sich erinnern können.