Sdílení souborů je nezbytnou součástí správy serveru. Umožňuje sdílení zdrojů v síti, které uživatelé potřebují k plnění svých úkolů. Samba server je obvykle instalován na centrálním linuxovém serveru, kde jsou informace uloženy na různých médiích a přístupné pomocí klienta Windows nebo Linuxu pomocí klienta Samba.
V tomto článku se naučíme, jak nainstalovat a nakonfigurovat sdílení souborů samba na Rocky Linux 8. Tato příručka funguje také na jiných distribucích založených na RHEL 8, jako je Alma Linux 8 a Oracle Linux 8.
Rocky Linux 8 bude nakonfigurován jako server Samba, pak budeme moci přistupovat k souborům s klienty Windows nebo Linux.
Související obsah
- Jak nainstalovat a nakonfigurovat sdílení souborů Samba na Ubuntu 20.04
Obsah
- Zajištění aktuálnosti serveru
- Nainstalujte balíčky samba
- Konfigurace sdílení Samba
- Povolte službu Samba prostřednictvím brány firewall
- Spusťte a povolte službu Samba
- Přístup ke sdílení Samba pomocí klienta Linux
- Přístup ke sdílení Samba s klientem Windows
- Zabezpečená konfigurace sdílení Samba
1. Zajištění aktuálnosti serveru
Než budete pokračovat, ujistěte se, že je náš server aktuální a všechny balíčky jsou nejnovější verze. K tomu použijte tyto příkazy:
sudo dnf -y update
Pokud existují balíčky k aktualizaci, může výše uvedený příkaz trvat několik minut.
2. Nainstalujte balíčky Samba
Balíčky samba jsou k dispozici ve výchozích repozitářích Rocky Linux. Nainstalujte je pomocí tohoto příkazu:
sudo dnf install samba samba-common samba-client
Až budete vyzváni k potvrzení procesu instalace, zadejte y poté pokračujte stisknutím klávesy Enter.
Nainstalovaný softwarový balík potvrďte tímto příkazem:
$ rpm -qi samba
Name : samba
Epoch : 0
Version : 4.14.5
Release : 7.el8_5
Architecture: x86_64
Install Date: Sat Jan 15 08:12:25 2022
Group : Unspecified
Size : 2653757
License : GPLv3+ and LGPLv3+
Signature : RSA/SHA256, Mon Dec 13 17:12:06 2021, Key ID 15af5dac6d745a60
Source RPM : samba-4.14.5-7.el8_5.src.rpm
Build Date : Mon Dec 13 16:51:31 2021
Build Host : ord1-prod-x86build005.svc.aws.rockylinux.org
Relocations : (not relocatable)
Packager : [email protected]
Vendor : Rocky
URL : https://www.samba.org
Summary : Server and Client software to interoperate with Windows machines
Description :
Samba is the standard Windows interoperability suite of programs for Linux and
Unix.
3. Konfigurace sdílení Samba
Konfigurační soubor samby se nachází v této cestě /etc/samba/smb.conf
. Před provedením jakékoli úpravy si vytvořte jeho zálohu, takže pokud se pokazíme, máme kopii. Pomocí tohoto příkazu v terminálu vytvořte záložní soubor:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bk
Dále vytvořte adresář, který chcete sdílet.
sudo mkdir -p /home/sambashare
Dovolte nám aktualizovat oprávnění adresáře, aby byl přístupný. Bílá, aktualizujeme také oprávnění SELinux:
sudo chmod -R 755 /home/sambashare
sudo chown -R nobody:nobody /home/sambashare
sudo chcon -t samba_share_t /home/sambashare
Nyní upravme konfiguraci samby, abychom definovali export pro adresář, který jsme vytvořili.
Otevřete konfigurační soubor:
sudo vim /etc/samba/smb.conf
Aktualizujte konfiguraci v souboru, aby odrážela následující:
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = Citizix SmbSvr
security = user
map to guest = bad user
dns proxy = no
[Public]
path = /home/sambashare
browsable =yes
writable = yes
guest ok = yes
read only = no
Uložte a zavřete soubor.
Ověřte konfiguraci pomocí tohoto příkazu:
sudo testparm
Pokud je vše v pořádku, měli byste vidět něco podobného.
$ sudo testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
...
4. Povolte službu Samba prostřednictvím brány firewall
Pokud máte nainstalovaný a povolený firewall, musíte povolit službu samba přes firewall. K tomu použijte tento příkaz:
sudo firewall-cmd --add-service=samba --zone=public --permanent
sudo firewall-cmd --reload
5. Spusťte a povolte službu Samba
Služba se ve výchozím nastavení nespustí. Spusťte službu pomocí tohoto příkazu:
sudo systemctl start smb
Potvrďte stav služby pomocí tohoto:
$ sudo systemctl status smb
● smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2022-01-15 08:43:41 UTC; 25s ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Main PID: 62502 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 4 (limit: 23176)
Memory: 8.7M
CGroup: /system.slice/smb.service
├─62502 /usr/sbin/smbd --foreground --no-process-group
├─62504 /usr/sbin/smbd --foreground --no-process-group
├─62505 /usr/sbin/smbd --foreground --no-process-group
└─62506 /usr/sbin/smbd --foreground --no-process-group
Jan 15 08:43:41 dev-rockysrv1.inv.re systemd[1]: Starting Samba SMB Daemon...
Jan 15 08:43:41 dev-rockysrv1.inv.re smbd[62502]: [2022/01/15 08:43:41.212309, 0] ../../lib/util/become_daemon.c:136(daemon_ready)
Jan 15 08:43:41 dev-rockysrv1.inv.re systemd[1]: Started Samba SMB Daemon.
Jan 15 08:43:41 dev-rockysrv1.inv.re smbd[62502]: daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
Výše uvedený výstup ukazuje, že služba byla úspěšně spuštěna. Chcete-li službu povolit při spouštění, použijte tento příkaz:
sudo systemctl enable smb
6. Získejte přístup ke sdíleným položkám Samba pomocí klienta Linux
Pro přístup k systému souborů z linuxového klienta potřebujeme mít nainstalovaný klientský software Samba.
Na rockovém Linuxu nainstalujte software pomocí tohoto příkazu:
sudo dnf install -y samba-client
Pro přístup ke sdílené složce je tento formát:
smbclient //server-IP/Public
U našeho klienta:
$ smbclient //10.70.5.170/Public
Enter SAMBA\rocky's password:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Sat Jan 15 08:34:22 2022
.. D 0 Sat Jan 15 08:34:22 2022
52417516 blocks of size 1024. 48494420 blocks available
smb: \>
Protože nemáme nastaveno žádné heslo, stačí na výzvu stisknout enter.
7. Přístup ke sdílení Samba s klientem Windows
Ve Windows Launch spusťte dialog v systému Windows stisknutím klávesy Windows + R .
Zadejte název hostitele nebo IP-adresa serveru a poté stiskněte Enter Klíč.
\\hostname
or
\\server-IP-address
V mém případě
\\35.180.123.111
Tím se otevřou akcie. Do úložiště můžete přidat soubor nebo adresář ze serveru samba nebo z klientského počítače se systémem Windows.
8. Zabezpečená konfigurace sdílení Samba
Samba umožňuje veřejný přístup bez ověření a také soukromé sdílení, kde je třeba autentizovat přístup ke sdíleným zdrojům. V této sekci nakonfigurujeme soukromý adresář, který bude sdílen se sambou a bude přístupný pomocí uživatelského jména a hesla.
Pojďme vytvořit skupinu uživatelů Samba na našem serveru.
sudo groupadd sambagrp
Vytvořte nového uživatele a přidejte jej do skupiny samba, kterou jste právě vytvořili.
sudo useradd -g sambagrp sambausr
Vytvořte zabezpečenou složku a poté jí udělte relativní oprávnění a vlastnictví.
sudo mkdir -p /home/sambaprivateshare
sudo chmod -R 770 /home/sambaprivateshare
sudo chcon -t samba_share_t /home/sambaprivateshare
sudo chown -R root:sambagrp /home/sambaprivateshare
Vytvořte heslo pro uživatele Samby, které jsme právě vytvořili a které bude použito pro ověření při přístupu do adresáře.
sudo smbpasswd -a sambausr
Zadejte a znovu zadejte heslo:
$ sudo smbpasswd -a sambausr
New SMB password:
Retype new SMB password:
Added user sambausr.
Upravte konfigurační soubor samby a přidejte konfigurace zabezpečeného sdílení.
sudo vim /etc/samba/smb.conf
Přidejte řádky pod příkaz a upravte tak, aby odpovídaly vašim konfiguracím.
[Private]
path = /home/sambaprivateshare
valid users = @private
guest ok = no
writable = yes
browsable = yes
Chcete-li použít konfigurace, restartujte nebo znovu načtěte služby samba
sudo systemctl restart smb
Přístup k souborům Samba Secure pomocí systémů Windows
Stiskněte klávesu Windows + R , zadejte server název hostitele nebo IP adresa pro přístup ke sdíleným složkám.
Když otevřete soukromé složka vyzve k zadání uživatelského jména a hesla pro udělení přístupových práv k souborům.
Přístup k zabezpečenému adresáři Samba pomocí systému Linux
Chcete-li získat přístup k zabezpečené složce, musíte zadat uživatele příkazu v tomto formátu:
smbclient //server-IP/Private -U user
Po zobrazení výzvy zadejte uživatelské heslo Samba.
$ smbclient //10.70.5.170/Private -U sambausr
Enter SAMBA\sambausr's password:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Sat Jan 15 09:02:33 2022
.. D 0 Sat Jan 15 09:02:33 2022
52417516 blocks of size 1024. 48489312 blocks available
smb: \>
To je ono! Podařilo se nám nainstalovat a nastavit Sambu pro anonymní a bezpečné sdílení souborů mezi naším operačním systémem Rocky Linux a dalšími klienty Linux nebo Desktop Windows.