Aufgrund des Einflusses des Koronavirus bricht die Weltwirtschaft zusammen und Telearbeit wird unabhängig von der Größe nacheinander eingeführt, wobei jedoch Dateien im LAN im Raum gemeinsam genutzt werden, indem mit einem PC einer kleinen Organisation gearbeitet wird Also möchte ich zuerst anfangen (˶˙ᵕ˙˶)
Die Grundvoraussetzung ist ** Linux + Samba, Dateiserver im LAN **. Beginnen wir damit, Dateien für mehrere PCs in der Organisation freizugeben! Installieren Sie der Einfachheit halber Samba von jeder Linux-Distribution und erstellen Sie einen Linux-Dateiserver.
--Dateiserverprogramm: Samba (Linux-Paket Standard smbd) --Client: Windows10 Pro
CentOS8.1
# vi /etc/selinux/config
/etc/selinux/config
SELINUX=enforcing
→ SELINUX=Wechseln Sie zu deaktiviert
CentOS8.1
# reboot
Ich habe versucht, einen Dateiserver mit Samba unter den folgenden Bedingungen zu erstellen:. (.´͈ ᵕ `͈. ♡) ۶
Das ist natürlich! Das Update wird im Voraus durchgeführt
CentOS8.1
# dnf -y upgrade
openSUSE15.1
# zypper -n update
Ubuntu20.04
# apt-get -y update
** Starten Sie Linux neu **, wenn das Update abgeschlossen ist.
Installieren Sie Samba aus dem Paket jeder Linux-Distribution.
CentOS8.1
# dnf -y install samba
openSUSE15.1
# zypper -n install samba
Ubuntu20.04
# apt-get -y install samba
Erstellen Sie einen neuen Linux-Benutzer, um den Samba-Dateiserver zu verwenden. Nehmen wir diesmal als Beispiel an, dass der Dateiserver mit dem Benutzernamen "* shonan *" verwendet wird.
# useradd -m shonan
#sudo passwd shonan ← Legen Sie ein Passwort für den Benutzer fest
Registrieren Sie sich anschließend bei Samba für den erstellten Linux-Benutzer. Verwenden Sie den Befehl * pdbedit *.
# pdbedit -a shonan
Lassen Sie sich hier nicht verwirren, Sie müssen zusätzlich zu dem Kennwort, das Sie beim Erstellen des Linux-Benutzers ** registriert haben, ein zusätzliches Kennwort für den Samba-Dateiserver festlegen. Denken Sie daran, dass für die tatsächliche Anmeldung am Dateiserver von Windows aus das Kennwort festgelegt wird, das Sie mit dem Befehl ** pdbedit festgelegt haben, nicht das Kennwort des Linux-Benutzers (obwohl ich der Einfachheit halber dasselbe wie das Linux-Kennwort verwende). .. (๑ ・ ∞ ∞ ๑))
Stellen Sie Samba in "/etc/samba/smb.conf" ein.
# vi /etc/samba/smb.conf
/etc/samba/smb.conf
#Es werden nur die Elemente aufgelistet, die hinzugefügt oder geändert werden sollen. Andere bleiben bei den Standardeinstellungen
[global]
workgroup = [Arbeitsgruppenname von Windows, zu dem Sie gehören]
hosts allow = [IP-Adresse oder Netzwerksegment, um die Verbindung zu ermöglichen]
[<Beliebiger Abschnittsname>]
comment = [Jeglicher Kommentar]
path = [Verzeichnis als Dateiserver verwendet]
read only = no
browsable = yes
writable = yes
Mit dieser Datei können Sie für flexible Zwecke als Dateiserver veröffentlichen, indem Sie die Verzeichnisse auf dem Linux-Dateiserver als beliebige Abschnittsnamen trennen.
Daher möchte ich dieses Mal, wie unter "Dateiserverbedingungen" beschrieben, den Abschnittsnamen "* kazumi75kitty " und das Linux-Verzeichnis " / mnt / miura / *" als Dateiserver verfügbar machen. Ich werde. Da davon ausgegangen wird, dass sich das Netzwerk in 192.168.1.0/24 befindet, lassen Sie dieses Netzwerk zu.
Anschließend wird /etc/samba/smb.conf mit den folgenden Einstellungen festgelegt.
/etc/samba/smb.conf(Beispiel)
#Es werden nur die Elemente aufgelistet, die hinzugefügt oder geändert werden sollen. Andere bleiben bei den Standardeinstellungen
[global]
workgroup = [Arbeitsgruppenname von Windows, zu dem Sie gehören]
hosts allow = 192.168.1. 127.0.0.1
#Gastgeber erlauben, 192.168.1.0/Wenn Sie 24 und sich selbst zulassen möchten, befolgen Sie die obigen Anweisungen.
[kazumi75kitty]
comment = File Server Test in Miura Peninsula
path = /mnt/miura
read only = no
browsable = yes
writable = yes
Der Name der Windows-Arbeitsgruppe, zu der ich gehöre, kann in den Systemeigenschaften der Systemsteuerung bestätigt werden, daher habe ich ihn nicht erwähnt ^^
Das in Abschnitt ** unter "Pfad" angegebene Verzeichnis muss mit dem bei pdbedit registrierten Benutzer identisch sein. Andernfalls können Sie möglicherweise nicht auf die Dateien und Verzeichnisse auf dem Dateiserver ** zugreifen. Überprüfen Sie daher den Eigentümer ordnungsgemäß. ich wechsle
Wenn Sie diesmal "/ mnt / miura /" für den Speicherplatz des Dateiservers verwenden, z. B. wenn der Benutzer es mit shonan verwenden möchte, ist der Eigentümer des Verzeichnisses ** / mnt / miura / shonan ** (nicht root). wird gebraucht.
Wie das obige Bild (der Benutzername im Bild ist ausgeblendet, weil es in Betrieb ist)
Abhängig von der Verteilung kann es kompliziert oder einfach sein, je nachdem, ob smb.conf erklärt wird oder nicht. Beziehen Sie sich daher auf das Bild (˶ ・ ᴗ ・) ⚐⚑
CentOS 8.1
openSUSE 15.1
Ubuntu 20.04 --globaler Abschnitt (nur einige, weil es so viele Gegenstände gibt)
Abschnitt von Ihnen selbst vorbereitet
# testparm /etc/samba/smb.conf
Wenn "Loaded Services File OK" angezeigt wird, sollten die Einstellungen korrekt sein.
CentOS8.1 ・ openSUSE15.1
# systemctl start smb
# systemctl enable smb
# systemctl status smb
Ubuntu20.04
# systemctl start smbd
# systemctl enable smbd
# systemctl status smbd
Mit enable können Sie den Dateiserver auch nach einem Neustart automatisch verwenden.
Überprüfen Sie, ob "Aktiv" und "Laufen" im Status angezeigt werden und "Fehlgeschlagen" nicht angezeigt wird. Wenn es "Fehlgeschlagen" ist, müssen Sie zurückgehen, um es erneut zu überprüfen, z. B. eine falsch geschriebene Einstellung in der smb.conf.
Überprüfen Sie dann das Protokoll und wenn es keine Fehler gibt, kennt es das in smb.conf angegebene Verzeichnis.
# less -r /var/log/samba/log.smbd
Wenn ein Pfadspezifikationsfehler angezeigt wird, z. B. "canonicalize_connect_path für Dienst-Samba fehlgeschlagen, Pfad / mnt / miura", stellen Sie sicher, dass das angegebene Verzeichnis vorhanden ist, überprüfen Sie den Eigentümer und die Berechtigungen mit dem Befehl ls -l und greifen Sie darauf zu. Es darf nicht sein.
Lassen Sie uns nun von einem Windows-Client aus auf den Linux-Dateiserver zugreifen. Geben Sie im Windows Explorer \\ [IP-Adresse des Linux-Dateiservers] ein.
Öffnen Sie zuerst die Firewall (Details werden später beschrieben).
# firewall-cmd --permanent --add-service=samba
# firewall-cmd --reload
Da die IP-Adresse des Servers 192.168.1.18 lautet, greifen Sie hier mit "\\ 192.168.1.18 \" zu. Wenn Sie den Server erfolgreich identifizieren können, sollte das Dialogfeld Windows-Sicherheitsauthentifizierungsfehler angezeigt werden.
Wenn die Meldung angezeigt wird, dass Sie anstelle des anfänglichen Authentifizierungsfehlerbildschirms keine Verbindung herstellen können, können Sie "firewall-cmd --list-all" in den Firewalld-Einstellungen (später beschrieben) verwenden und "samba" ist für den Dienst zulässig. Wenn es nicht vorhanden ist oder wenn Sie überprüfen, ob der Samba-Dienst unter Linux mit "systemctl status smb (d)" gestartet wurde, wird möglicherweise ein Startfehler wie "Failed" angezeigt.
Wenn das Dialogfeld Authentifizierungsfehler angezeigt wird und Sie eine Verbindung zum Dateiserver herstellen können, melden Sie sich als der in Samba mit pdbedit registrierte Benutzer an. Im Fall von Shonan im Beispiel hier geben Sie Shonan als Benutzernamen und Passwort ** ein, wenn Sie bei pdbedit registriert sind ** (** unterscheiden Sie es vom Passwort des Linux-Benutzers **) und melden Sie sich an. Machen. Wenn dann der in diesem Beispiel als Dateibereichsname definierte "kazumi75kitty" angezeigt wird, bedeutet dies, dass der durch den in smb.conf erstellten Abschnitt erstellte Dateibereich normal erkannt wird.
Versuchen Sie, eine Datei auf verschiedene Arten zu platzieren, sobald der Dateibereich erkannt wurde. Stellen Sie außerdem sicher, dass Sie die platzierte Datei unter Windows bearbeiten und speichern können.
Auf der Linux-Serverseite hat das als Dateiserver verwendete Verzeichnis einen anderen Eigentümer oder andere Berechtigungen, die nicht gelesen oder geschrieben werden können. Bestätigen Sie dies daher erneut mit dem Befehl ls -l.
Grundsätzlich ist es eine wichtige Voraussetzung, dass der Zugang zu Außenstehenden nicht gestattet ist. Als angewandte Sicherheit gibt es auch eine Methode, die eine Domäne oder Active Directory verwendet, die hier jedoch weggelassen wird. Beschränken Sie das Zulassen von Hosts in ** smb.conf, indem Sie nur den Zugriff auf das Netzwerk zulassen, zu dem Sie gehören, vorausgesetzt, Sie greifen nicht über die Netzwerke von Außenstehenden zu. ** ** **
In diesem Beispiel wird der Dateiserver unter 192.168.1.0/24 verwendet. Was passiert jedoch, wenn 192.168.1 von Hosts in smb.conf nicht zugelassen wird? ??
Erlauben Sie beispielsweise nicht 192.168.1., Sondern 192.168.2., Wie unten gezeigt. ~~hosts allow = 192.168.1. 127.0.0.1~~ hosts allow = 192.168.2. 127.0.0.1
Wenn Sie also im Explorer auf "\\ 192.168.1.18 \" zugreifen, sollte der folgende Fehler angezeigt werden: Und das Protokoll /var/log/samba/log.smbd zeigt, dass der Zugriff von 192.168.1.11 verweigert wird, wie unten gezeigt.
Auf diese Weise konnten Sie die Netzwerkdomänen einschränken, die Samba verwenden kann.
Ich glaube, ich habe die folgende Firewall früher mit "firewall-cmd" geöffnet.
# firewall-cmd --permanent --add-service=samba
# firewall-cmd --reload
Dies bedeutet, dass die Linux-Firewall mit dem Namen firewalld immer den Empfang des Dienstes Samba zulässt und keine anderen als die angegebenen Dienste zulässt. Um zu überprüfen, welche Dienste zulässig sind, geben Sie den folgenden Befehl ein und prüfen Sie, ob die zulässigen Dienste unter Dienste angezeigt werden: wie "Dienste: dhcpv6-client ssh samba".
# firewall-cmd --list-all
Darüber hinaus ist es möglich, umfangreiche Regeln zu verwenden, um den von Samba verwendeten Port auf eine bestimmte IP-Adresse oder ein bestimmtes Netzwerk zuzulassen. Dies wird hier jedoch weggelassen.
Recommended Posts