SSH mit Windows (10/11) Explorer
Mit dem Windows Explorer auf eine SSH Quelle wie auf ein Netzlaufwerk zugreifen
2024-04-18 06:24:56 Thursday
Guide/ Tutorial – Anleitung – Windows 10/ 11
Problem:
Kurzversion
Wie verbindet man sich mit dem Windows-Explorer über SSH mit einem Linux-Server so das Dateien übertragen werden können?
Hintergrund
Es ist durchaus angenehm, gelegentlich eine SSH Verbindung zu einem Server mit dem Windows Explorer, um den SSH-Server als Netzlaufwerk verfügbar zu haben. Persönlich nutze ich diese Methode, indem ich mich zunächst über VPN mit dem entsprechenden Server verbinde und dann den Linux-Account per SSH in Windows einbinde. Auf diese Weise steht mir das Verzeichnis /home/benutzer/
, als Linux-Netzlaufwerk zur Verfügung. Natürlich ist dies auch ohne VPN möglich, jedoch sollte man auf entfernten Servern so wenig Dienste wie möglich öffentlich zugänglich machen. Auf meinen eigenen Servern leite ich beispielsweise nur Port 1029 UDP weiter, obwohl verschiedene Dienste aktiv sind die erreichbar sein sollen.
Theoretisch könnte jemand beispielsweise einen Raspberry Pi lokal betreiben und Daten ohne zusätzliche Dienste wie FTP oder ähnliches übertragen wollen. Oft wird dafür Samba (SMB bzw. CIFS) verwendet, um eine sogenannte „Windows-Freigabe“ einzurichten. Allerdings stellen diese zusätzlichen Dienste potenzielle Sicherheitsrisiken dar. Spätestens zu diesem Zeitpunkt sollte man sich Gedanken über die Sicherheit machen. Daher erledige ich diese Aufgaben gerne schnell und sicher per SSH, da diese Methode ohnehin fast immer verfügbar ist.
Installation:
Es werden eigentlich nur zwei Pakete verwendet.
Diese Anwendungen lassen sich in dieser Reihenfolge entweder direkt von GitHub installieren oder, wie ich es bevorzuge, per winget in der Windows PowerShell installieren.
Bei winget
handelt es sich um ein etwas weniger bekanntes Tool das im entferntesten Sinne mit apt unter Linux vergleichbar wäre. [LINK]
Verbindung:
Verbunden wird nun genauso wie jedes andere Netzlaufwerk mit der Ausnahme das der Verbindung ein \\sshfs\
vorrangestellt wird.
Das klingt nach einer äußerst vielseitigen Vorgehensweise! Durch die Installation und Konfiguration über GitHub und die Verwendung von SSH können die Zugriffsmöglichkeiten auf dem Linux-Server entsprechend der üblichen Benutzerverwaltung eingestellt werden. Dies ermöglicht die individuelle Vergabe von Lese- und Schreibrechten für jeden SSH-Account. Es lohnt sich definitiv, die Anleitungen der jeweiligen Pakete auf GitHub zu lesen, um weiterführende Informationen zu erhalten und das volle Potenzial dieser Methode auszuschöpfen.
Zu beachten bei der Verbindung sei eine Besonderheit. Läuft auf dem Server SSH eingehend, nicht auf dem Standart-Port 22, dann ist das Ausrufezeichen (!) statt des üblichen Doppelpunkts zu verwenden.
\\sshfs\[LOCUSER=]REMUSER@HOST[!PORT][\PATH]
Änderungslog:
- 2024-08-22
Ergänzt um Verbindung ausserhalb des Standartports 22