Sdílení souborů pomocí Samby
Z MiS
Obsah |
Teorie
- Nástroj Samba představuje nejsnazší způsob přenosu souborů mezi Windows a Linuxem.
- Využívá stejný protokol jako „Sdílení souborů a tiskáren“ ve Windows.
- Sdílení ve Windows je založeno na protokolu SMB/CIFS (původně SMB, později vylepšený CIFS).
- Balík Samba je svobodná implementace protokolu SMB/CIFS v GNU/Linuxu.
Myšlenka
- Nasdílíme složku webového serveru (/var/www) jako sdílenou složku pod názvem www.
- Vytvoříme „sambového“ uživatele webmaster s vlastním heslem.
- Uživatele webmaster namapujeme ke svému vlastnímu uživatelskému účtu.
- Zařadíme vlastní účet do skupiny samba, kterou vytvoříme.
- Povolíme do složky webového serveru přístup uživatelům ze skupiny samba.
Návod (Debian Squeeze)
Výcházíme z návodu:
Nainstalujte potřebné balíky (jako správce)
- Pracujte jako správce (
sudo
), pro instalaci použijte správce balíkůaptitude
. - chcete-li sdílet disky (na serveru)
aptitude install samba aptitude install samba-common
- chcete-li připojovat disky (použití na klientu):
aptitude install samba-client aptitude install smbfs
Upravte konfiguraci serveru
- Konfigurace je uložena v souboru /etc/samba/smb.conf.
- K úpravě použijte třeba editor
nano
. - Po úpravě zkontrolujte správnost konfiguračního souboru /etc/smb.conf:
testparm konfiguracni_soubor
Dobrý zvyk radí:
- Vytvořte záložní kopii konfiguračního souboru: /etc/samba/smb.conf.orig2013-11-27.
- Ponechte originál konfiguračního souboru v /etc/samba/smb.conf.master (zde proveďte své změny)
- Pak vygenerujte konfigurační soubor příkazem: (čímž provedete i kontrolu správnosti)
testparm -s smb.conf.master > smb.conf
Podrobnější vysvětlení řádků souboru je dále.
- Konfigurace serveru:
[global] netbios name = NETBIOS_NAME workgroup = WORKGROUP_NAME security = user username map = /etc/samba/smbusers encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd interfaces = 192.168.1.1/8
- Definice sdílených disků (uvádíme pro každý sdílený disk)
[SHARE_NAME] comment = COMMENT path = /PATH/TO/SHARE writeable = yes create mode = 0664 directory mode = 0775 locking = yes
Vytvoření uživatelských účtů
- Soubor /etc/samba/smbusers:
- Definice uživatelských jmen a mapování na lokální uživatelské účty.
SMBUSERNAME = LOCALUSERNAME
Nastavení hesla uživatelům:
- Heslo se může lišit (a je to vhodné) od hesla pro lokální přihlášení!
sudo smbpasswd -L -a SMBUSERNAME
Nastavení přístupových práv ke složce webu
Restart služby Samba
- Musí provést správce počítače:
/etc/init.d/samba restart
Význam jednotlivých nastavení /etc/samba/smb.conf
- Název počítače pro protokol NETBIOS
netbios name = NETBIOS_NAME
- Název pracovní skupiny, do které je počítač zařazen:
workgroup = WORKGROUP_NAME
- Způsob autentizace uživatele:
security = user
- username map = /etc/samba/smbusers
- soubor, kde budou uživatelská jména <#ID_352388963>
- encrypt passwords = yes
- bude se používat šifrování hesel
- doporučeno!
- smb passwd file = /etc/samba/smbpasswd
- soubor s hesly uživatelů
- hesla se vytvoří dále <#ID_10080172>
- interfaces = 192.168.1.1/8
- ze kterých počítačů se lze připojovat
- [SHARE_NAME]
- název sdíleného disku
- comment = COMMENT
- popis, komentář
- path = /PATH/TO/SHARE
- cesta ke složce, kterou chceme sdílet
- writeable = yes
- je povoleno měnit obsah složky?
- create mode = 0600
- directory mode = 0700
- locking = yes
Poznámky
- Jméno počítače:
- Nesmí být delší než 15 znaků.
- Je zapsáno v konfiguračním souboru /etc/hostname.
- Pro připojení pomocí jiného uživatelského jména ve Windows je třeba zadat:
Tento počítač→ Nástroje→ Připojit síťovou jednotku→ Připojit pomocí jiného uživ. jména
Zdroje
- Dokumentace Samby
- HOW-TOs — kniha: Samba.org > Samba-HOWTO-Collection
- Zabezpečení: Samba.org > Samba-HOWTO-Collection > ServerType
- Instalace na Debianu
- Share na Squeeze pro všechny uživatele: howtoforge.com > Debian-squeeze-samba-standalone-server-with-tdbsam-backend
- Samba over SSH tunnel
- Linux → Windows share (tunnel)