Souborové servery často potřebují pojmout celou řadu různých klientských systémů. Spuštění Samby umožňuje systémům Windows připojení a přístup k souborům, stejně jako dalším systémům Linux a MacOS. Alternativním řešením by bylo spuštění FTP/SFTP serveru, který může také podporovat připojení z mnoha systémů.
V této příručce projdeme pokyny k nastavení serveru Samba na AlmaLinuxu. Je to skvělý způsob, jak připravit souborový server po instalaci AlmaLinuxu nebo migraci z CentOS na AlmaLinux. Také uvidíme, jak se připojit k souborovému serveru z jiných klientských počítačů AlmaLinux.
V tomto tutoriálu se naučíte:
- Jak nainstalovat Sambu na AlmaLinux
- Jak povolit Sambu přes firewalld
- Jak vytvořit uživatele Samby
- Jak nakonfigurovat Sambu pro sdílení adresáře
- Jak povolit Sambu přes SELinux
- Jak se připojit k serveru Samba z klienta AlmaLinux
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | AlmaLinux |
Software | Samba |
Jiné | Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz. |
Konvence | # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel |
Nainstalujte Sambu
Prvním krokem je instalace Samby na AlmaLinux, pokud ještě není v systému. Pomocí následujícího příkazu nainstalujte potřebné balíčky Samba prostřednictvím správce balíčků dnf.
$ sudo dnf install samba samba-client
Jakmile jsou balíčky nainstalovány, musíme spustit a povolit smb
a nmb
démoni při startu. První je démon, který se stará o provádění skutečných přenosů a operací sdílení, zatímco druhý provádí NetBIOS
rozlišení názvů, umožňující zobrazení zdrojů při procházení sítě v systému Windows. Nyní můžeme povolit a spustit obě služby systemd jediným příkazem:
$ sudo systemctl enable --now {smb,nmb}
Povolit Sambu přes firewall
AlmaLinux je standardně dodáván s povolenou bránou firewall a blokuje ostatní připojení z jiných počítačů, které se pokoušejí o přístup k naší službě Samba. Spuštěním následujících příkazů můžeme povolit správné porty přes firewall. Nezapomeňte přidat --zone
možnost k vašemu příkazu, pokud je to nutné pro vaši konfiguraci.
$ sudo firewall-cmd --permanent --add-service=samba $ sudo firewall-cmd --reload
Vytvořit uživatele Samby
Je možné nastavit sdílení Samba, které nevyžaduje přihlašovací údaje k připojení, ale ve většině situací to není praktické kvůli zjevným obavám o bezpečnost. Místo toho je lepší vytvořit uživatelské účty pro lidi, kteří se budou připojovat ke sdílení Samba.
Každý uživatel Samby bude potřebovat normální uživatelský účet v systému AlmaLinux. To neznamená, že jim musíte dát domovský adresář nebo shell nebo něco podobného, ale stále budou potřebovat uživatelský účet. Pokud už mají v systému uživatelský účet, tak to postačí. V opačném případě si budeme muset vytvořit zcela nový účet. Pomocí následujícího příkazu vytvořte nový uživatelský účet pro naše sdílení Samba.
$ sudo adduser -M sambauser -s /sbin/nologin
-M
volba předaná příkazu je zkrácená forma pro --no-create-home
, což je docela samovysvětlující. A -s
volba nám umožňuje zadat shell, v tomto případě záměrně neplatný:/sbin/nologin
. Pro tento uživatelský účet není potřeba nastavovat heslo, pouze heslo pro službu Samba.
Vytvořte heslo Samba pro nově vytvořeného uživatele pomocí následujícího příkazu:
$ sudo smbpasswd -a sambauser New SMB password: Retype new SMB password: Added user sambauser.
Nakonfigurujte Sambu pro sdílení adresáře
Nyní, když máme spuštěnou Sambu a vytvořeného nového uživatele, nakonfigurujme adresář, který chceme prostřednictvím Samby sdílet.
Pro náš příklad vytvoříme náš sdílený adresář na adrese /mnt/shared
.
$ sudo mkdir -p /mnt/shared $ sudo chmod 777 /mnt/shared
Nyní upravme konfigurační soubor Samba, abychom službě řekli o tomto novém adresáři, který bychom rádi sdíleli. Použijte nano nebo svůj oblíbený textový editor k otevření následujícího konfiguračního souboru.
$ sudo nano /etc/samba/smb.conf
Přejděte až na konec tohoto souboru a vložte následující řádky.
[linuxconfig] path = /mnt/shared guest ok = no read only = no
Všimněte si, že v tomto příkladu jsme naši sdílenou složku pojmenovali linuxconfig vložením do závorek. Tento název budete potřebovat při připojování sdílené položky na vzdálený server.
Uložte změny do souboru a ukončete jej. Poté restartujte službu Samba, aby se nové změny projevily.
$ sudo systemctl restart {smb,nmb}
Povolit Sambu přes SELinux
SELinux je ve výchozím nastavení v AlmaLinux povolen. K našemu sdílenému adresáři a souborům budeme muset přiřadit příslušný kontext pomocí následujícího příkazu. To umožní Sambě fungovat a přitom SELinux stále udržovat v doporučeném režimu vynucení.
$ sudo chcon -R -t samba_share_t /mnt/shared
Připojování k serveru Samba z klienta AlmaLinux
Nyní máme plně funkční server Samba s vyhrazeným uživatelem Samba a sdíleným adresářem. Ostatní systémy by měly být schopny se připojit k tomuto adresáři, aby mohly nahrávat nebo stahovat soubory ze serveru Samba. Tato část ukáže, jak se připojit k serveru Samba z jiného (klientského) systému AlmaLinux.
Na klientském systému musíme vytvořit prázdný adresář, který můžeme použít jako přípojný bod pro vzdálenou sdílení Samba.
$ sudo mkdir -p /mnt/fileserver
Dále použijte mount
příkaz k připojení vzdáleného sdílení Samba do složky, kterou jsme právě vytvořili. Můžete použít buď název hostitele vzdáleného počítače, nebo IP adresu.
$ sudo mount -t cifs -o username=sambauser //192.168.1.10/linuxconfig /mnt/fileserver
Po zadání hesla bude sdílená složka Samba nyní připojena.
Případně můžete ke sdílení Samba přistupovat ze správce souborů GNOME zadáním následující syntaxe. Podle potřeby nahraďte IP adresu.
smb://127.0.0.1/linuxconfig/Zadejte cestu ke sdílení Samba
Po přihlášení bude sdílení Samba připojeno na levou stranu správce souborů GNOME.
Sdílení Samba bylo připojenoÚvahy na závěr
V tomto tutoriálu jsme se naučili, jak nainstalovat Sambu na AlmaLinux. Také jsme viděli, jak vytvořit sdílení Samba, uživatele Samby a nakonfigurovat firewall a SELinux, aby povolil Sambu. Poté jsme prošli kroky pro připojení k našemu serveru Samba z klientského počítače. Použití této příručky by vám mělo umožnit vytvořit souborový server, který může hostovat připojení z různých operačních systémů.