Sshfs/Automount: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „Kategorie:SSH“ durch „Kategorie:Secure Shell“
K Textersetzung - „Kategorie:Secure Shell“ durch „Kategorie:SSH“
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
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
Zeile 49: Zeile 49:
muss man dazu bei jeder Anmeldung automatisch ausführen lassen [5].
muss man dazu bei jeder Anmeldung automatisch ausführen lassen [5].


[[Kategorie:Secure Shell]]
[[Kategorie:SSH]]
[[Kategorie:FUSE]]
[[Kategorie:FUSE]]
{{DEFAULTSORT:sshfs}}
{{DEFAULTSORT:sshfs}}

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].