GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erste Schritte mit Samba für Interoperabilität

Dateifreigaben sind wichtig für die Zusammenarbeit in jedem Netzwerk. In dieser Artikelserie zeige ich Ihnen, wie Samba Ihnen helfen kann, Dateifreigaben auf Linux-Servern einzurichten und bereitzustellen, auf die sowohl Linux- als auch Windows-Clients zugreifen können.

Was ist Samba?

Bevor wir eintauchen und Dateifreigaben einrichten, lassen Sie uns behandeln, was Samba ist und was es für Sie tun kann.

Samba ist eine Suite von Anwendungen, die das Server Message Block (SMB)-Protokoll implementieren. Viele Betriebssysteme, einschließlich Microsoft Windows, verwenden das SMB-Protokoll für Client-Server-Netzwerke. Samba ermöglicht es Linux-/Unix-Rechnern, mit Windows-Rechnern in einem Netzwerk zu kommunizieren.

Samba ist Open-Source-Software. Ursprünglich wurde Samba 1991 für die schnelle und sichere Datei- und Druckfreigabe für alle Clients entwickelt, die das SMB-Protokoll verwenden. Seitdem hat es sich weiterentwickelt und weitere Funktionen hinzugefügt. Heute bietet Samba eine Reihe von Anwendungen, die eine nahtlose Vernetzung und Interoperabilität zwischen *nix und Windows ermöglichen.

Installieren Sie die Samba-Pakete

In diesem Beispiel verwende ich CentOS 8 mit dem Hostnamen centos als mein Samba-Server mit einer IP-Adresse von 192.168.1.122. Das einzige Paket, das Sie installieren müssen, ist Samba, aber ich würde gerne andere Client-Tools wie samba-common einbinden und samba-client um unsere Freigaben später zu testen.

# yum install samba samba-client samba-common -y

Erstellen Sie ein Verzeichnis zum Teilen und legen Sie seine Berechtigungen fest

Nachdem Sie die erforderlichen Pakete auf dem Server installiert haben, erstellen wir ein Verzeichnis und stellen die erforderlichen Berechtigungen für das Verzeichnis bereit. Erstellen Sie ein Verzeichnis namens share in unserem Stammverzeichnis. Sie können dieses Verzeichnis beliebig benennen und ihm Lese-, Schreib- und Ausführungsberechtigungen erteilen. In diesem Beispiel verlassen wir uns auf die Samba-Konfiguration, um den Lese- und Schreibzugriff auf das freigegebene Verzeichnis zu steuern.

# mkdir /share

# chmod -R 777 /share

Konfigurieren Sie eine Freigabe

Nachdem wir die erforderlichen Pakete installiert haben, ist es an der Zeit, das freigegebene Verzeichnis zu konfigurieren. Die Konfigurationsdatei befindet sich unter /etc/samba . Fügen Sie mit Ihrem bevorzugten Texteditor Folgendes an /etc/samba/smb.conf an . Lassen Sie den Rest der Konfigurationsdatei unverändert und dies sollte für unser Setup gut sein.

# vim /etc/samba/smb.conf

[myshare]
        comment = My share
        path = /share
        read only = No


Ich habe eine Freigabe namens myshare erstellt und einen Pfad zur Freigabe bereitgestellt, die sich in unserem Fall unter /share befindet . Ich habe ihm dann Lese-/Schreibberechtigungen mit read only = No gegeben . Es gibt viele andere Konfigurationsparameter, die Sie hier übergeben können, aber für unser Setup sind diese Einstellungen gut.

Überprüfen Sie die Samba-Konfiguration

Samba bietet ein Tool zum Überprüfen unserer Konfigurationsdatei. Wir können überprüfen, ob unsere Konfigurationsdatei Fehler enthält, indem wir testparm verwenden Befehl.

# testparm

Als nächstes müssen wir ein Samba-Benutzerkonto erstellen, damit Samba in Samba-Sitzungen mit Freigaben kommunizieren kann. Das smbpasswd Der Befehl hat mehrere Funktionen, je nachdem, ob Sie den Befehl als root ausführen oder als Standardbenutzer. Wenn Sie smbpasswd ausstellen ohne irgendwelche Argumente als non-root Benutzer, standardmäßig smbpasswd ändert das Samba-Passwort des aktuell angemeldeten Benutzers. Wenn Sie smbpasswd ausführen Befehl als root , können Sie neue Samba-Konten erstellen. Sie können ein Samba-Konto nur für bestehende Linux-Benutzerkonten erstellen.

# smbpasswd -a user

New SMB password:
Retype new SMB password:

Wir müssen SELinux auf /share konfigurieren Verzeichnis, damit der Samba-Dienst die richtigen Berechtigungen hat.

# semanage fcontext -a -t samba_share_t "/share(/.*)?"

# restorecon -R -v /share

Als nächstes müssen wir smb aktivieren und starten und nmb Dienste.

# systemctl enable smb

# systemctl start smb

#systemctl enable nmb

#systemctl start nmb


Wenn Sie firewalld haben auf Ihrem Server läuft, müssen wir es so konfigurieren, dass es Samba-Verkehr zulässt. Verwenden Sie dazu das firewall-cmd Befehl. Vergessen Sie nicht, diese Änderungen dauerhaft zu machen und firewalld neu zu laden .

Jetzt haben wir unsere Dienste aktiviert und gestartet. Mit dem smbclient können wir überprüfen, ob die Freigabe vom Server verfügbar ist Werkzeug. Aus diesem Grund habe ich die Samba-Client-Tools auf dem lokalen Rechner installiert. Der Befehl verwendet die folgende Syntax:

smbclient -U -L

# smbclient -U user -L 192.168.1.122

Enter SAMBA\user's password:

Prüfen wir, ob wir auf die Freigabe zugreifen können, indem wir den folgenden Befehl auf dem Server ausführen:

# smbclient -U user //192.168.1.122/myshare

Enter SAMBA\user's password:

Try "help" to get a list of possible commands.

smb: \>

Schluss machen

Wir haben den Samba-Dateifreigabedienst auf unserem Linux-Server installiert und konfiguriert. Wir konnten auf diese Freigaben auf dem lokalen Computer zugreifen. Im nächsten Artikel richten wir einen Linux-Client und einen Windows 10-Client ein, um auf die gerade erstellte Freigabe zuzugreifen.

[ Möchten Sie mehr über die Linux-Systemadministration erfahren? Nehmen Sie an einem Red Hat Systemadministrationskurs teil. ]


Linux
  1. Erste Schritte mit Zsh

  2. Erste Schritte mit ls

  3. 5 Tipps für den Einstieg in die Linux-Serversicherheit

  4. Erste Schritte mit socat, einem Mehrzweck-Relay-Tool für Linux

  5. Erste Schritte mit PostgreSQL unter Linux

Erste Schritte mit dem Linux-Betriebssystem

Erste Schritte mit GitHub

Erste Schritte mit Nix Package Manager

Erste Schritte mit systemctl

Erste Schritte mit Buildah zum Verwalten von Linux-Containern

Erste Schritte mit und Installation von Slack für Linux