Ich weiß, dass sshfs zum Mounten des Remote-Verzeichnisses in das lokale Verzeichnis verwendet wird, aber ich muss das lokale Verzeichnis in das fs-Remote-Verzeichnis mounten.
Ich möchte einen lokalen Ordner mounten, wie zum Beispiel:
/home/username/project_directory
auf eine entfernte Maschine, auf die ich ssh-Zugriff habe, wie zum Beispiel:
/var/www/project_directory
Das Ziel ist, dass lokal vorgenommene Änderungen auf dem entfernten Dateisystem wiedergegeben werden.
Antworten:
von: http://mysteriousswede.blogspot.com/2012/01/mount-local-directory-to-server-on.html
Wie es geht? Sie richten die SSH-Weiterleitung über Port 10000 auf dem Computer ein, auf dem Sie sich an Port 22 Ihres lokalen Computers anmelden, und verwenden SSHFS, um sich auf der anderen Seite anzumelden.
ZB So mounten Sie / home / username / mywwwdevelstuff auf Ihrem lokalen Computer nach / var / www auf der Serverseite:
quelle
Nein.
Um dies zu tun, müssen Sie "nur" Ihre Logik umkehren. Sie könnten zum Beispiel einen 1-Liner einrichten, der ssh in den Remote-Computer einfügt, und dann sshfs verwenden, um das Remote-Verzeichnis auf dem lokalen Computer in dieser Box einzuhängen. Das mag natürlich sehr simpel sein, was NAT, Firewall-Regeln usw. betrifft, aber Sie haben Ihren Anwendungsfall nicht beschrieben.
Es gibt andere Protokolle wie SMB und, noch besser, NFS - aber sie werden ähnliche Probleme haben.
Der Kern des Problems besteht darin, dass ein Computer der Quelle der Daten vertrauen muss und wenn Sie ein Dateisystem remote bereitstellen können, das einen der Kernaspekte der Internetsicherheit verletzt.
quelle
Basierend auf dem Skript von @ Nobody habe ich es mit einigen nützlichen Kommentaren verallgemeinert. Unten ist mein Skript.
https://gist.github.com/allenyllee/ddf9be045810572cd809ae3587a23658
quelle
Im Prinzip ist es das Gleiche wie die Antwort von Quinn, aber als funktionierendes Skript anstelle von separaten Befehlen, die für jede Maschine / Nutzung angepasst werden müssen.
Ich weiß nichts über den Overhead, es scheint mir, als würde es alles zweimal verschlüsseln / entschlüsseln.
Ich deaktiviere HostAuthenticationForLocalhost, weil localhost offensichtlich alles sein kann. Dies ist bei der Authentifizierung mit öffentlichem Schlüssel absolut sicher. Sie sollten ohnehin keine Passwörter verwenden, aber selbst mit Passwörtern stellen Sie eine Verbindung zu einem Host her, von dem Sie wissen, dass Sie ihn steuern.
quelle