Souborové servery často potřebují pojmout celou řadu různých klientských systémů. Spuštění Samby na Ubuntu 22.04 Jammy Jellyfish 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 na Ubuntu 22.04, který může také podporovat připojení z mnoha systémů.
Cílem tohoto tutoriálu je nakonfigurovat základní Samba server na Ubuntu 22.04 Jammy Jellyfish pro sdílení uživatelských domovských adresářů a také poskytování anonymního přístupu pro čtení a zápis do vybraného adresáře.
Existuje nespočet možných dalších konfigurací Samby, nicméně cílem této příručky je seznámit vás se základy, které lze později rozšířit o další funkce podle vašich potřeb. Dozvíte se také, jak přistupovat k serveru Ubuntu 22.04 Samba ze systému Windows.
V tomto tutoriálu se naučíte:
- Jak nainstalovat server Samba
- Jak nakonfigurovat základní sdílení Samba
- Jak sdílet domovské adresáře uživatelů a veřejný anonymní adresář
- Jak připojit sdílení Samba na MS Windows 10
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | Ubuntu 22.04 Jammy Jellyfish |
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 |
Jak nakonfigurovat sdílení serveru Samba na Ubuntu 22.04 krok za krokem
- Začněme instalací serveru Samba. To je poměrně triviální úkol. Nejprve otevřete terminál příkazového řádku a nainstalujte
tasksel
příkaz, pokud ještě není k dispozici ve vašem systému Ubuntu 22.04. Jakmile budete připraveni, použijtetasksel
k instalaci serveru Samba.$ sudo apt update $ sudo apt install tasksel $ sudo tasksel install samba-server
- Začneme s novým čistým konfiguračním souborem, přičemž si také ponecháme výchozí konfigurační soubor jako zálohu pro referenční účely. Provedením následujících příkazů Linuxu vytvořte kopii existujícího konfiguračního souboru a vytvořte nový
/etc/samba/smb.conf
konfigurační soubor:$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup $ sudo bash -c 'grep -v -E "^#|^;" /etc/samba/smb.conf_backup | grep . > /etc/samba/smb.conf'
- Samba má svůj vlastní systém správy uživatelů. Každý uživatel na seznamu uživatelů samby však musí existovat také v
/etc/passwd
soubor. Pokud váš systémový uživatel ještě neexistuje, nelze jej tedy nalézt v/etc/passwd
nejprve vytvořte nového uživatele pomocíuseradd
před vytvořením nového uživatele Samby. Jakmile váš nový uživatel systému, např.linuxconfig
ukončete, použijtesmbpasswd
příkaz k vytvoření nového uživatele Samby:$ sudo smbpasswd -a linuxconfig New SMB password: Retype new SMB password: Added user linuxconfig.
- Dalším krokem je přidání sdílené složky domovského adresáře. Použijte svůj oblíbený textový editor, např. atom, vznešený, k úpravě našeho nového
/etc/samba/smb.conf
Konfigurační soubor Aamba a na konec souboru přidejte následující řádky:[homes] comment = Home Directories browseable = yes read only = no create mask = 0700 directory mask = 0700 valid users = %S
- Volitelně přidejte novou veřejně dostupnou sdílenou složku Samba pro čtení a zápis přístupnou anonymním/hostujícím uživatelům. Nejprve vytvořte adresář, který chcete sdílet, a změňte jeho přístupová oprávnění:
$ sudo mkdir /var/samba $ sudo chmod 777 /var/samba/
- Jakmile budete připraveni, znovu otevřete
/etc/samba/smb.conf
konfigurační soubor samba a na konec souboru přidejte následující řádky:[public] comment = public anonymous access path = /var/samba/ browsable =yes create mask = 0660 directory mask = 0771 writable = yes guest ok = yes
- Zkontrolujte svou aktuální konfiguraci. Váš
/etc/samba/smb.conf
Konfigurační soubor samby by měl v této fázi vypadat podobně jako soubor níže:
[global] workgroup = WORKGROUP server string = %h server (Samba, Ubuntu) log file = /var/log/samba/log.%m max log size = 1000 logging = file panic action = /usr/share/samba/panic-action %d server role = standalone server obey pam restrictions = yes unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes map to guest = bad user usershare allow guests = yes [printers] comment = All Printers browseable = no path = /var/spool/samba printable = yes guest ok = no read only = yes create mask = 0700 [print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = yes read only = yes guest ok = no [homes] comment = Home Directories browseable = yes read only = no create mask = 0700 directory mask = 0700 valid users = %S [public] comment = public anonymous access path = /var/samba/ browsable =yes create mask = 0660 directory mask = 0771 writable = yes guest ok = yes
- Naše základní konfigurace serveru Samba je hotová. Nezapomeňte vždy restartovat server samba po provedení jakékoli změny v
/etc/samba/smb.conf
konfigurační soubor:$ sudo systemctl restart smbd
- (volitelné) Vytvořme nějaké testovací soubory. Jakmile úspěšně připojíme naše sdílené položky Samba, měly by být k dispozici níže uvedené soubory:
$ touch /var/samba/public-share $ touch /home/linuxconfig/home-share
Přístup ke sdílení Ubuntu 22.04 Samba z MS Windows
- V této fázi jsme připraveni obrátit naši pozornost na MS Windows. Připojení adresářů síťových jednotek se může pro jednotlivé verze MS Windows mírně lišit. Tato příručka používá MS Windows 10 v roli klienta Samba. Chcete-li začít, otevřete
Windows Explorer
poté klikněte pravým tlačítkem naNetwork
a klikněte naMap network drive...
tab. - Dále vyberte písmeno jednotky a zadejte umístění sdílení Samba, což je IP adresa nebo název hostitele vašeho serveru Samba, za kterým bude následovat název domovského adresáře uživatele. Ujistěte se, že jste zaškrtli
Connect using different credentials
pokud se vaše uživatelské jméno a heslo liší od toho, které jste vytvořili Samba pomocísmbpasswd
příkaz na Ubuntu 22.04. - Zadejte heslo uživatele Samba, jak bylo vytvořeno dříve v Ubuntu 22.04.
- Procházet domovský adresář uživatele. Měli byste vidět dříve vytvořený testovací soubor. Stejně tak byste měli být schopni vytvářet nové adresáře a soubory.
- Opakujte kroky připojení také pro veřejně anonymní sdílení adresáře samba.
- Potvrďte, že máte přístup k veřejnému sdílenému adresáři samby.
Vše hotovo. Nyní neváhejte a přidejte do konfigurace sdíleného serveru Samba další funkce.
Úvahy na závěr
V tomto tutoriálu jsme se naučili, jak nainstalovat Sambu na Ubuntu 22.04 Jammy Jellyfish Linux. Také jsme viděli, jak vytvořit sdílení Samba, uživatele Samby a nakonfigurovat přístup pro čtení a zápis. Poté jsme prošli kroky pro připojení k našemu serveru Samba z klientského počítače se systémem MS Windows. 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ů.