Samba Server · 8 min read · Dec 08, 2025
So installieren Sie den Samba-Server auf CentOS 8

Samba ist eine kostenlose und Open-Source-Software, die verwendet werden kann, um Dateien, Ordner und Drucker zwischen Linux- und Windows-Systemen zu teilen. Es wird auch für Authentifizierung und Autorisierung, Namensauflösung und Dienstankündigung verwendet. Es kann auf verschiedenen Betriebssystemen ausgeführt werden, einschließlich Linux, Unix, OpenVMS und vielen mehr.
In diesem Tutorial lernen wir, wie man Samba installiert und es als eigenständigen Freigabeserver auf CentOS 8 konfiguriert.
Voraussetzungen
- Ein Server, der CentOS 8 ausführt.
- Ein Root-Passwort ist auf Ihrem Server konfiguriert.
Samba-Server installieren
Standardmäßig ist das Samba-Paket im Standard-Repository von CentOS verfügbar. Sie können es mit dem folgenden Befehl installieren:
dnf install samba samba-common samba-client -yNach der Installation von Samba starten Sie den SMB-Dienst und aktivieren ihn, damit er nach dem Neustart des Systems startet, mit dem folgenden Befehl:
systemctl start smb
systemctl enable smbSie können jetzt den Samba-Dienst mit dem folgenden Befehl überprüfen:
systemctl status smbSie sollten die folgende Ausgabe erhalten:
? smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2020-03-02 23:03:30 EST; 8s ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Main PID: 2072 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 4 (limit: 25028)
Memory: 33.8M
CGroup: /system.slice/smb.service
??2072 /usr/sbin/smbd --foreground --no-process-group
??2074 /usr/sbin/smbd --foreground --no-process-group
??2075 /usr/sbin/smbd --foreground --no-process-group
??2076 /usr/sbin/smbd --foreground --no-process-group
Erstellen Sie eine öffentliche Freigabe mit Samba
In diesem Abschnitt werden wir eine öffentliche Freigabe mit Samba erstellen, sodass jeder auf das öffentliche Freigabeverzeichnis ohne Passwort zugreifen kann.
Erstellen Sie ein öffentliches Freigabeverzeichnis
Zuerst erstellen Sie einen freigegebenen Ordner mit dem Namen public und erstellen auch zwei Dateien im öffentlichen Verzeichnis:
mkdir -p /samba/share/public
touch /samba/share/public/file1.txt
touch /samba/share/public/file2.txtAls Nächstes weisen Sie die erforderlichen Berechtigungen und den Besitz mit dem folgenden Befehl zu:
chmod -R 0755 /samba/share/
chmod -R 0755 /samba/share/public
chown -R nobody:nobody /samba/share
chown -R nobody:nobody /samba/share/publicSamba konfigurieren
Als Nächstes müssen Sie Samba konfigurieren, um ein öffentliches Verzeichnis zu teilen.
Zuerst erstellen Sie eine Sicherungskopie der Datei /etc/samba/smb.conf mit dem folgenden Befehl:
mv /etc/samba/smb.conf /etc/samba/smb.bakAls Nächstes erstellen Sie eine neue Samba-Konfigurationsdatei:
nano /etc/samba/smb.confFügen Sie die folgenden Zeilen hinzu:
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = samba-server
security = user
map to guest = bad user
dns proxy = no
[Public]
path = /samba/share/public
browsable =yes
writable = yes
guests ok = yes
read only = no
Speichern Sie die Datei und schließen Sie sie. Starten Sie dann den Samba-Dienst neu, um die Änderungen anzuwenden:
systemctl restart smbAls Nächstes testen Sie die Samba-Konfiguration mit dem folgenden Befehl:
testparmSie sollten die folgende Ausgabe sehen:
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
[global]
dns proxy = No
map to guest = Bad User
netbios name = SAMBA-SERVER
security = USER
server string = Samba Server %v
idmap config * : backend = tdb
[Public]
guest ok = Yes
path = /samba/share/public
read only = No
SELinux und Firewall konfigurieren
Als Nächstes setzen Sie die richtigen SELinux-Boolean- und Sicherheitskontextwerte für das Freigabeverzeichnis mit dem folgenden Befehl:
setsebool -P samba_export_all_ro=1 samba_export_all_rw=1
semanage fcontext -a -t samba_share_t "/samba/share/public(/.*)?"
restorecon /samba/share/publicAls Nächstes erlauben Sie allen Samba-Diensten durch firewalld mit dem folgenden Befehl:
firewall-cmd --add-service=samba --zone=public --permanent
firewall-cmd --reloadGreifen Sie von Ubuntu Gnome auf die Samba-Freigabe zu
Um auf die Samba-Freigabe zuzugreifen, gehen Sie zum Remote-Computer, öffnen Sie den Gnome-Dateimanager und klicken Sie auf Mit Server verbinden, wie unten gezeigt:

Geben Sie die IP-Adresse Ihres Samba-Servers ein und klicken Sie auf die Schaltfläche Verbinden. Nach erfolgreicher Verbindung sollten Sie die Samba-Freigabe auf dem folgenden Bildschirm sehen:

Jetzt klicken Sie auf das Verzeichnis Öffentlich, Sie sollten Ihre Dateien auf dem folgenden Bildschirm sehen:

Greifen Sie von der Ubuntu-Befehlszeile auf die Samba-Freigabe zu
Sie können auch von der Befehlszeile auf die Samba-Freigabe zugreifen.
Zuerst listen Sie alle verfügbaren Samba-Freigaben mit dem folgenden Befehl auf:
smbclient -L //45.58.38.51Sie sollten die folgende Ausgabe sehen:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Sharename Type Comment
--------- ---- -------
Public Disk
IPC$ IPC IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Server Comment
--------- -------
Workgroup Master
--------- -------
Sie können auch die Samba-Freigabe mit dem cifs-Protokoll einhängen. Dazu installieren Sie das Paket cifs-utils mit dem folgenden Befehl:
apt-get install cifs-utils -yAls Nächstes hängen Sie die Samba-Freigabe im Verzeichnis /mnt mit dem folgenden Befehl ein:
mount -t cifs //45.58.38.51/public /mnt/Sie werden aufgefordert, ein Passwort einzugeben, wie unten gezeigt:
Password for root@//45.58.38.51/public: Drücken Sie einfach die Enter-Taste, ohne ein Passwort einzugeben, um die Samba-Freigabe einzuhängen:
Sie können jetzt auf die Samba-Freigabe im Verzeichnis /mnt zugreifen:
ls /mnt/Sie sollten die folgende Ausgabe sehen:
file1.txt file2.txt
Erstellen Sie eine private Freigabe mit Samba
In diesem Abschnitt werden wir eine private Freigabe mit Samba erstellen, sodass nur authentifizierte Benutzer auf das private Freigabeverzeichnis zugreifen können.
Benutzer und Gruppe erstellen
Zuerst erstellen Sie eine Gruppe mit dem Namen private mit dem folgenden Befehl:
groupadd privateAls Nächstes erstellen Sie einen neuen Benutzer mit dem Namen privateuser und fügen ihn der privaten Gruppe hinzu:
useradd -g private privateuserAls Nächstes setzen Sie das Passwort für den Benutzer mit dem folgenden Befehl:
smbpasswd -a privateuserAusgabe:
New SMB password:
Retype new SMB password:
Added user privateuser.
Erstellen Sie ein privates Freigabeverzeichnis
Als Nächstes erstellen Sie einen freigegebenen Ordner mit dem Namen private und erstellen auch zwei Dateien im privaten Verzeichnis:
mkdir -p /samba/share/private
touch /samba/share/private/private1.txt
touch /samba/share/private/private2.txtAls Nächstes weisen Sie die richtigen Berechtigungen und den Besitz mit dem folgenden Befehl zu:
chmod -R 0770 /samba/share/private
chown -R root:private /samba/share/privateAls Nächstes konfigurieren Sie den SELinux-Kontext für das private Verzeichnis mit dem folgenden Befehl:
semanage fcontext –at samba_share_t "/samba/share/private(/.*)?"
restorecon /samba/share/privateSamba konfigurieren
Als Nächstes öffnen Sie die Samba-Konfigurationsdatei und definieren die private Freigabe:
nano /etc/samba/smb.confFügen Sie die folgenden Zeilen am Ende der Datei hinzu:
[Private]
path = /samba/share/private
valid users = @private
guests ok = no
writable = yes
browsable = yes
Speichern Sie die Datei und schließen Sie sie, und starten Sie dann den Samba-Dienst neu, um die Änderungen anzuwenden:
systemctl restart smbAls Nächstes überprüfen Sie die Samba-Konfiguration mit dem folgenden Befehl:
testparmSie sollten die folgende Ausgabe sehen:
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
[global]
dns proxy = No
map to guest = Bad User
netbios name = SAMBA-SERVER
security = USER
server string = Samba Server %v
idmap config * : backend = tdb
[Public]
guest ok = Yes
path = /samba/share/public
read only = No
[Private]
path = /samba/share/private
read only = No
valid users = @private
Greifen Sie von der Ubuntu-Befehlszeile auf die Samba-Freigabe zu
Zuerst greifen Sie mit dem folgenden Befehl auf die verfügbaren Freigaben zu:
smbclient -L //45.58.38.51Sie sollten die folgende Ausgabe sehen:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Sharename Type Comment
--------- ---- -------
Public Disk
Private Disk
IPC$ IPC IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
Server Comment
--------- -------
Workgroup Master
--------- -------
Als Nächstes verbinden Sie sich mit dem Samba-Server und listen die verfügbaren Freigaben mit dem folgenden Befehl auf:
smbclient //45.58.38.51/private -U privateuserSie werden aufgefordert, ein Passwort einzugeben, wie unten gezeigt:
Enter privateuser's password: Geben Sie Ihr Passwort ein und drücken Sie die Eingabetaste, um auf die Samba-Shell zuzugreifen, wie unten gezeigt:
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
smb: \>Jetzt listen Sie die verfügbaren Freigaben mit dem folgenden Befehl auf:
smb: \> lsSie sollten die folgende Ausgabe sehen:
\. D 0 Tue Mar 3 10:03:22 2020
.. D 0 Tue Mar 3 10:01:56 2020
private1.txt N 0 Tue Mar 3 10:03:17 2020
private2.txt N 0 Tue Mar 3 10:03:22 2020
51194 blocks of size 2097152. 49358 blocks available
Jetzt verlassen Sie die Samba-Shell mit dem folgenden Befehl:
smb: \>exitSie können die Samba-Freigabe auch im Verzeichnis /opt einhängen:
mount -t cifs -o user=privateuser //45.58.38.51/private /optSie werden aufgefordert, ein Passwort einzugeben, wie unten gezeigt:
Password for privateuser@//45.58.38.51/private: *********Geben Sie Ihr Passwort ein und drücken Sie die Eingabetaste, um die Samba-Freigabe einzuhängen.
Sie können jetzt Ihre Samba-Freigabe im Verzeichnis /opt überprüfen, wie unten gezeigt:
ls /opt/Ausgabe:
private1.txt private2.txt
Greifen Sie von Ubuntu Gnome auf die Samba-Freigabe zu
Um auf die Samba-Freigabe zuzugreifen, gehen Sie zum Remote-Computer, öffnen Sie den Gnome-Dateimanager und klicken Sie auf Mit Server verbinden, wie unten gezeigt:

Geben Sie die IP-Adresse Ihres Samba-Servers ein und klicken Sie auf die Schaltfläche Verbinden. Nach einer erfolgreichen Verbindung sollten Sie die Samba-Freigabe auf dem folgenden Bildschirm sehen:

Jetzt klicken Sie auf das Verzeichnis Privat, geben Sie Ihren Benutzernamen und Ihr Passwort ein und klicken Sie dann auf die Schaltfläche Verbinden. Sie sollten Ihre Dateien auf dem folgenden Bildschirm sehen:


Herzlichen Glückwunsch! Sie haben erfolgreich den Samba-Server auf CentOS 8 installiert und konfiguriert.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.