Die Umgebung, die wir heute implementieren möchten, besteht darin, dass wir, wenn das Unternehmen drei Abteilungen hat: Finanzen, Technologie und Führung, drei Benutzergruppen für die drei Abteilungen einrichten: Caiwu, Netzwerk und Lingdao;
In jeder der drei Abteilungen gibt es zwei Benutzer. Die von uns erstellten Benutzer sind caiwu01, caiwu02, network01, network02, lingdao01, lingdao02.
Anschließend richten wir entsprechende Verzeichnisse und Zugriffsberechtigungen basierend auf den spezifischen Umständen des Unternehmens ein. Ich hoffe, dass Sie Samba-Sicherheitsberechtigungen flexibel anwenden können, um Ihren Samba-Dateiserver in Ihrer täglichen Arbeit einzurichten.
1. Zunächst übernimmt der Server die Benutzerauthentifizierung. Jeder Benutzer kann auf sein eigenes Hostverzeichnis zugreifen. Nur dieser Benutzer kann auf das Hostverzeichnis zugreifen und verfügt über vollständige Berechtigungen, während andere Ihr Hostverzeichnis nicht sehen können.
2. Erstellen Sie einen Caiwu-Ordner. Ich hoffe, dass die Leute in der Caiwu-Gruppe und der Lingdao-Gruppe auch darauf zugreifen können, aber nur Caiwu01 hat Schreibberechtigung.
3. Erstellen Sie ein Verzeichnis in Lindao. Nur Personen in der Führungsgruppe können darauf zugreifen und lesen und schreiben, aber Außenstehende können dieses Verzeichnis nicht sehen.
4. Erstellen Sie ein Dateiaustauschverzeichnis, das von jedem gelesen und geschrieben werden kann, einschließlich des Gastbenutzers, aber niemand kann die Dateien anderer Personen löschen.
5. Erstellen Sie einen öffentlichen schreibgeschützten Ordner public, und jeder kann nur den Inhalt dieses Ordners lesen.
Okay, machen wir zunächst die Vorarbeiten.
Erstellen Sie 3 Gruppen:
#groupadd caiwu
#groupadd Netzwerk
#groupaddlingdao
Fügen Sie Benutzer hinzu und treten Sie relevanten Gruppen bei:
#useradd caiwu01 -g caiwu
#useradd caiwu02 -g caiwu
#useradd network01 -g Netzwerk
#useradd network02 -g Netzwerk
#useradd lingdao01 -g lingdao
#useradd lingdao02 -g lingdao
Dann verwenden wir den Befehl smbpasswd -a caiwu01, um die 6 Konten jeweils dem Samba-Benutzer hinzuzufügen.
#mkdir /home/samba
#mkdir /home/samba/caiwu
#mkdir /home/samba/lingdao
#mkdir /home/samba/exchange
#mkdir /home/samba/public
Um Probleme zu vermeiden, können wir die Berechtigungen aller oben genannten Ordner auf 777 setzen. Wir verwenden die flexible Berechtigungsverwaltung von Samba, um die oben genannten fünf Anforderungen festzulegen.
Das Folgende ist die Konfigurationsdatei meiner smb.conf
[global]
arbeitsgruppe=bmit
#mynetworkworkinggroup
server string = Franks Samba-Dateiserver
#Beschreibung meines Servernamens
Sicherheit=Benutzer
#Benutzerauthentifizierungsmechanismus verwenden
Passwörter verschlüsseln = ja
smb passwd-Datei = /etc/samba/smbpasswd
#Verwenden Sie den verschlüsselten Passwortmechanismus. In Win95 und Winnt wird Klartext verwendet.
Andere können grundsätzlich den Standardeinstellungen folgen.
[Seite ausschneiden]
[Häuser]
Kommentar = Home-Verzeichnisse
durchsuchbar=nein
beschreibbar = ja
gültige Benutzer = %S
Erstellungsmodus = 0664
Verzeichnismodus = 0775
Das Segment #homes erfüllt die erste Bedingung
[Caiwu]
Kommentar=caiwu
Pfad = /home/samba/caiwu
öffentlich=nein
gültige Benutzer = @caiwu,@lingdao,network02
Schreibliste = caiwu01
druckbare=nein
Der Absatz #caiwu erfüllt unsere zweite Anforderung
[lingdao]
Kommentar = lingdao
Pfad = /home/samba/lingdao
öffentlich=nein
durchsuchbar=nein
gültige Benutzer = @lingdao,network02
druckbare=nein
Der #lingdao-Absatz kann unsere dritte Anforderung erfüllen
[Austausch]
Kommentar = Exchange-Dateiverzeichnis
Pfad = /home/samba/exchange
öffentlich=ja
beschreibbar = ja
Das #exchange-Segment kann grundsätzlich unsere vierte Anforderung erfüllen, aber es kann nicht die Bedingung erfüllen, dass nicht jeder die Dateien anderer Personen löschen kann. Selbst wenn die Maske darin festgelegt ist, ist diese Bedingung nur erforderlich, um einen Sticky festzulegen bisschen.
chmod -R 1777 /home/samba/exchange
Beachten Sie, dass die Berechtigung hier 1777 ist. Das ähnliche Systemverzeichnis /tmp verfügt ebenfalls über dieselbe Berechtigung. Diese Berechtigung kann die Anforderung erfüllen, dass jeder Dateien frei schreiben kann, aber die Dateien anderer Personen nicht löschen kann.
[Seite ausschneiden]
[öffentlich]
Kommentar = Nur lesen, öffentlich
Pfad = /home/samba/public
öffentlich=ja
readonly=ja
#Dieses öffentliche Segment kann unsere fünfte Anforderung erfüllen.
Bisher konnten unsere Einstellungen unsere Anforderungen an freigegebene Dateien erfüllen. Denken Sie daran, den Dienst neu zu starten.
#/etc/rc.d/init.d/smb Neustart
Wenn Sie kein Windows haben, können Sie es auch zuerst mit dem clientseitigen Befehl von Samba testen.
Ich werde nur einige Beispiele für die Verwendung des Befehls geben. Sie können es ausprobieren, wenn Sie mehr darüber erfahren möchten.
smbclient -L Server-IP -N
Das Gastkonto fragt den Samba-Freigabestatus Ihres Servers ab. Sie können überprüfen, ob das Lingdao-Verzeichnis für das Gastkonto sichtbar ist. Natürlich können Sie es auch im Namen eines bestimmten Benutzers sehen.
smbclient -L Server-IP -U caiwu01
Das System fordert Sie zur Eingabe eines Passworts auf. Geben Sie einfach das SMB-Passwort ein.
smbclient //server ip/caiwu -U caiwu01
#Melden Sie sich als Benutzer caiwu01 im Caiwu-Verzeichnis an
smbmount //server ip/caiwu /mnt/caiwu -o username=caiwu01
#Ordnen Sie das Finanzverzeichnis des Servers dem lokalen Verzeichnis /mnt/caiwu zu.
[Seite ausschneiden][Häuser]
Kommentar = Home-Verzeichnisse
durchsuchbar=nein
beschreibbar = ja
gültige Benutzer = %S
Erstellungsmodus = 0664
Verzeichnismodus = 0775
Das Segment #homes erfüllt die erste Bedingung
[Caiwu]
Kommentar=caiwu
Pfad = /home/samba/caiwu
öffentlich=nein
gültige Benutzer = @caiwu,@lingdao,network02
Schreibliste = caiwu01
druckbare=nein
Der Absatz #caiwu erfüllt unsere zweite Anforderung
[lingdao]
Kommentar = lingdao
Pfad = /home/samba/lingdao
öffentlich=nein
durchsuchbar=nein
gültige Benutzer = @lingdao,network02
druckbare=nein
Der #lingdao-Absatz kann unsere dritte Anforderung erfüllen
[Austausch]
Kommentar = Exchange-Dateiverzeichnis
Pfad = /home/samba/exchange
öffentlich=ja
beschreibbar = ja
Das #exchange-Segment kann grundsätzlich unsere vierte Anforderung erfüllen, aber es kann nicht die Bedingung erfüllen, dass nicht jeder die Dateien anderer Personen löschen kann. Selbst wenn die Maske darin festgelegt ist, ist diese Bedingung nur erforderlich, um einen Sticky festzulegen bisschen.
chmod -R 1777 /home/samba/exchange
Beachten Sie, dass die Berechtigung hier 1777 ist. Das ähnliche Systemverzeichnis /tmp verfügt ebenfalls über dieselbe Berechtigung. Diese Berechtigung kann die Anforderung erfüllen, dass jeder Dateien frei schreiben kann, aber die Dateien anderer Personen nicht löschen kann.