Sshfs/Automount: Unterschied zwischen den Versionen
K Dirkwagner verschob die Seite Sshfs/Autostart nach Sshfs/Automount, ohne dabei eine Weiterleitung anzulegen |
K Textersetzung - „Kategorie:Secure Shell“ durch „Kategorie:SSH“ |
||
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
Falls man das Dateisystem automatisch beim Systemstart oder bei der Anmeldung einbinden lassen will, muss man die [:SSH#Authentifizierung-ueber-Public-Keys:SSH-Authentifizierung] über Public-Keys einrichten. Man ist nun nicht mehr gezwungen, das Server-Passwort einzutippen. Wichtig für das Einbinden ("mount") während des Systemstarts ist, dass sich die privaten Schlüssel ("private keys") im Root-Verzeichnis '''/root/.ssh/''' befinden oder explizit über den Parameter '''-o IdentityFile=/Pfad/zum/publickkey/Schlüsseldateiname''' angegeben werden. | Falls man das Dateisystem automatisch beim Systemstart oder bei der Anmeldung einbinden lassen will, muss man die [:SSH#Authentifizierung-ueber-Public-Keys:SSH-Authentifizierung] über Public-Keys einrichten. Man ist nun nicht mehr gezwungen, das Server-Passwort einzutippen. Wichtig für das Einbinden ("mount") während des Systemstarts ist, dass sich die privaten Schlüssel ("private keys") im Root-Verzeichnis '''/root/.ssh/''' befinden oder explizit über den Parameter '''-o IdentityFile=/Pfad/zum/publickkey/Schlüsseldateiname''' angegeben werden. | ||
== Systemstart == | |||
=== über die /etc/fstab === | |||
In der Datei '''/etc/fstab''' muss mit Root-Rechten [7] in einem Editor [4] eine Zeile hinzugefügt werden: | In der Datei '''/etc/fstab''' muss mit Root-Rechten [7] in einem Editor [4] eine Zeile hinzugefügt werden: | ||
sshfs#Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh fuse uid=1003,gid=100,umask=0,allow_other,_netdev 0 0 | sshfs#Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh fuse uid=1003,gid=100,umask=0,allow_other,_netdev 0 0 | ||
Zeile 12: | Zeile 12: | ||
Man legt mit Root-Rechten [7] in einem Editor [4] eine Datei im Ordner '''/etc/NetworkManager/dispatcher.d/''' an. Der Dateiname sollte mit einer Zahl beginnen, die die Startreihenfolge festlegt, wie beispielsweise '''02sshfs'''. Nach der Erstellung des Skriptes muss dieses ausführbar gemacht werden[8]. | Man legt mit Root-Rechten [7] in einem Editor [4] eine Datei im Ordner '''/etc/NetworkManager/dispatcher.d/''' an. Der Dateiname sollte mit einer Zahl beginnen, die die Startreihenfolge festlegt, wie beispielsweise '''02sshfs'''. Nach der Erstellung des Skriptes muss dieses ausführbar gemacht werden[8]. | ||
Ein Beispielskript sieht z.B. so aus: | Ein Beispielskript sieht z. B. so aus: | ||
#!/bin/bash | #!/bin/bash | ||
IFACE=$1 #wird vom NetworkManager übergeben | IFACE=$1 #wird vom NetworkManager übergeben |
Aktuelle Version vom 30. Dezember 2023, 03:24 Uhr
Automount
Falls man das Dateisystem automatisch beim Systemstart oder bei der Anmeldung einbinden lassen will, muss man die [:SSH#Authentifizierung-ueber-Public-Keys:SSH-Authentifizierung] über Public-Keys einrichten. Man ist nun nicht mehr gezwungen, das Server-Passwort einzutippen. Wichtig für das Einbinden ("mount") während des Systemstarts ist, dass sich die privaten Schlüssel ("private keys") im Root-Verzeichnis /root/.ssh/ befinden oder explizit über den Parameter -o IdentityFile=/Pfad/zum/publickkey/Schlüsseldateiname angegeben werden.
Systemstart
über die /etc/fstab
In der Datei /etc/fstab muss mit Root-Rechten [7] in einem Editor [4] eine Zeile hinzugefügt werden:
sshfs#Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh fuse uid=1003,gid=100,umask=0,allow_other,_netdev 0 0
Der Parameter `_netdev` ist wichtig, da das System sonst beim Booten nicht weiß, dass eine funktionierende Netzwerkverbindung zum Einbinden der Partition erforderlich ist.
Dispatcher
Man legt mit Root-Rechten [7] in einem Editor [4] eine Datei im Ordner /etc/NetworkManager/dispatcher.d/ an. Der Dateiname sollte mit einer Zahl beginnen, die die Startreihenfolge festlegt, wie beispielsweise 02sshfs. Nach der Erstellung des Skriptes muss dieses ausführbar gemacht werden[8].
Ein Beispielskript sieht z. B. so aus:
#!/bin/bash IFACE=$1 #wird vom NetworkManager übergeben BEFEHL=$2 #wird vom NetworkManager übergeben #SSHFS-Einstellungen PORT=22 #ssh-Port des Zielsystems PFAD="/Pfad/Zielordner" # ABSOLUTE PFADANGABE im lokalen System KEY="/home/user/.mykeys/my_rsakey" #eigener privater Schlüssel case "$BEFEHL" in up) #SSHFS-Verbindung herstellen #ACHTUNG: die Optionen sind Beispiele und haben keinen Anspruch auf allgemeine Gültigkeit! /usr/bin/sshfs -p$PORT user@server:relativer_pfad_auf_dem_server/ $PFAD -o uid=1000,gid=1000,nomap=ignore,allow_other,IdentityFile=$KEY ;; down) /bin/fusermount -u $PFAD ;; *) echo $"usage: $0 {up|down}" exit 1 esac
Weiterführende Informationen zu Dispatcher-Skripten gibt es unter [:NetworkManager/Dispatcher:].
- Hinweis
- Es besteht die Möglichkeit, ein sshfs-mount ebenfalls über die [:interfaces#Start-Stop-Skripte:/etc/network/interfaces] einzubinden, bei Verwendung des [:NetworkManager: Network Managers] (NM) sollte von einer Bearbeitung der /etc/network/interfaces aber abgesehen werden!
Nach der Anmeldung eines Anwenders
Den sshfs-Befehl
- Befehl
sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh
muss man dazu bei jeder Anmeldung automatisch ausführen lassen [5].