Montage von fstab und cifs, möglich, um Authentifizierungsinformationen außerhalb von fstab zu speichern?

10

Ich verwende derzeit cifs, um einige Netzwerkfreigaben (für die eine Authentifizierung erforderlich ist) in / etc / fstab bereitzustellen. Es funktioniert hervorragend, aber ich möchte die Authentifizierungsdetails (Benutzername / Pass) außerhalb von fstab verschieben und in der Lage sein, es 600 zu ändern (da fstab Probleme haben kann, wenn ich seine Berechtigungen ändere). Ich habe mich gefragt, ob dies möglich ist (System mit vielen Benutzern, möchte nicht, dass diese Berechtigungen für alle Benutzer sichtbar sind).

von:

//server/foo/bar /mnt/bar cifs username=user,password=pass,r 0 0

zu:

//server/foo/bar /mnt/bar cifs <link to permissions>,r 0 0

(oder etwas Analoges dazu). Vielen Dank.

TJ L.
quelle

Antworten:

11

Aus der Manpage mount.cifs:

Anmeldeinformationen = Dateiname
    Gibt eine Datei an, die einen Benutzernamen und / oder ein Kennwort enthält. Das Format der Datei lautet:

                         Benutzername = Wert
                         Passwort = Wert
   Dies wird gegenüber Kennwörtern im Klartext in einer gemeinsam genutzten Datei wie / etc / fstab bevorzugt. Stellen Sie sicher, dass alle Anmeldeinformationsdateien ordnungsgemäß geschützt sind.

janneb
quelle
2
Beachten Sie, dass die vage "Stellen Sie sicher, dass Sie alle Anmeldeinformationen ordnungsgemäß schützen." bedeutet normalerweise, dass Sie die Datei (als root) speichern sollten /root/, und chmod 700es
Nate Parsons
meine verbindung braucht auch domain=valueteil
vladkras
3
Ich hatte gehofft, dass die Situation sieben Jahre später anders sein würde , aber leider scheint dies immer noch die "beste" Antwort zu sein. Und es ist nicht aus der Ferne sicher. Jede einzelne Person mit sudoZugriff auf den Server kann lesen .smbcredentials. In meinem Fall würde die Datei - es sei denn, ich hätte jemand anderen dazu gebracht, ihre aufzugeben - meine Windows-Anmelde-Creds enthalten. Wie die gleichen Single-Sign-On-Anmeldeinformationen, die ich für den Zugriff auf alle Systeme bei Evil Corp verwende, einschließlich Gehaltsabrechnung, Sozialleistungen usw.? Scheint voller Gefahr zu sein. So etwas ist vielleicht etwas sicherer: askubuntu.com/a/1081421 .
Evadeflow
1
Die Syntax dieser Datei ist heikel. Setzen Sie keine leeren Zeilen oder gar # commentshinein.
David Tonhofer
8

Verwenden Sie die Option für Anmeldeinformationen wie:

http://www.justlinux.com/nhf/Filesystems/Mounting_smbfs_Shares_Permanently.html

Beispiel von der Website:

cd
echo username=mywindowsusername > .smbpasswd
echo password=mywindowspassword >> .smbpasswd
chmod 600 .smbpasswd

Ersetzen Sie Ihren Windows-Benutzernamen und Ihr Kennwort in den Befehlen. Niemand außer root kann den Inhalt dieser Datei lesen.

Sobald dies erstellt wurde, würden Sie die Zeile in der Datei / etc / fstab so ändern, dass sie folgendermaßen aussieht:

//servername/sharename /mountdirectory smbfs credentials=/home/myhomedirectory/.smbpasswd 0 0

Beispiel aus / etc / fstab:

//server/share/   /mnt/localmountpoint   cifs   credentials=/root/.creda

Der Beitrag von janneb und der Link zur Manpage zeigen, was in der Anmeldeinformationsdatei vorhanden sein muss.

damorg
quelle
2
Danke, beide Antworten waren hilfreich (ich hätte die Manpages lesen sollen). Wenn ich 2 Antworten als die richtige Antwort markieren könnte, würde ich.
TJ L
Keine Sorge ... als ich Jannebs Antwort sah, war klar, dass die Antwort abgedeckt war :)
Damorg
6

Also sammle ich beide Antworten

  1. Erstellen Sie eine Datei, z. B. /root/.cifs

    username=value
    password=value
    domain=value (optional)
    
  2. 600Legen Sie die Berechtigung (rw-Berechtigung) fest, um Ihre Anmeldeinformationen zu schützen

    # chmod 600 /root/.cifs
    
  3. Übergeben Sie credentials=/root/.cifsIhren Befehl anstelle von username=undpassword=

vladkras
quelle
2
Extra-kleiner Kommentar: Der chmodwird nicht benötigt, da das Home-Verzeichnis von root /roothoffentlich rwx------schon vorhanden ist.
David Tonhofer
Ich hatte Probleme, nur Benutzername und Kennwort zu verwenden, als ich versuchte, einen freigegebenen Windows-Ordner unter Red Hat Linux bereitzustellen. Dies gelang mir erst, nachdem ich die Domain zur Anmeldeinformationsdatei hinzugefügt hatte. Es schien mir, dass in diesem Fall die Domain-Informationen sehr ratsam sind.
Aldemarcalazans