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. Návod lze samozřejmě použít pro libovolnou jinou složku.
- Vytvoříme „sambového“ uživatele webmaster. Nastavíme mu heslo pro Sambu.
- Uživatele webmaster namapujeme k 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.
Poznámky
- Návod je vyzkoušen na distribuci Debian ve verzi Wheezy.
- Předpokládáme nainstalovaný stroj s GNU/Linuxem Debian Wheezy.
- Pokud zpřístupňujete složku webového serveru, návod pro instalaci webového serveru je zde.
Instalace balíků na server
- Pracujte jako správce (
sudo
), pro instalaci použijte správce balíkůaptitude
.
aptitude install samba samba-common
Pozn: Pro Raspbian (Raspberry Pi) je třeba ještě doinstalovat:
aptitude install samba-common-bin
Konfigurace serveru
- Soubor /etc/samba/smb.conf
- 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
- Pro přesměrování výstupu do souboru smb.conf potřebujete být správce (
sudo su
), nestačí zde napsat před příkazsudo
(neuplatnilo by se na přesměrování).
- Komentáře
- Řádky začínající znakem # nebo středníkem (;) jsou pouze komentáře.
- Znak # uvozuje vysvětlení významu jednotlivých voleb.
- Středník obvykle používáme k „vykomentování“ řádku, tedy zrušení jeho platnosti (ale přitom ho máme k dipozici pro budoucí použití).
Podrobnější vysvětlení voleb konfigurace Samby.
- Konfigurace serveru
- V části týkající se konfigurace serveru povolte následující volby:
[global] workgroup = WORKGROUP security = user username map = /etc/samba/smbusers encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd ; unix password sync = yes
- Definice sdílených disků (uvádíme pro každý sdílený disk, v našem případě stačí jeden)
- Zakomentujte položku
[homes]
a všechny řádky pod ní
; [homes] ; comments = Home Directories ; browsable = no ; read only = yes ; create mask = 0700 ; directory mask = 0700
- Vytvořte sdílenou složku
[web]
[web] comment = Hlavni slozka weboveho serveru path = /var/www writeable = yes create mode = 0664 directory mode = 0775 locking = yes
Restart služby Samba
- Musí provést správce počítače:
/etc/init.d/samba restart
- Vytvořené svazky můžeme ověřit:
(Jako heslo zadáme vlastní heslo k systémovému účtu.)
smbclient -L localhost
Vytvoření uživatelských účtů
- Přidání účtů
- Přidejte do systému uživatelský účet webmaster, který se nemůže přihlásit do systému, ale bude používán pro přihlášení přes Sambu.
useradd webmaster --shell /bin/false
- Do souboru /etc/samba/smbusers (nejspíš neexistuje) přidejte položku pro uživatele webmaster.
vase_uzivatelske_jmeno = webmaster
- Pokud se tedy přihlásíte prostřednictvím Samby jako webmaster budou se používat pro přístup k souborům práva vašeho lokálního uživatelského jména.
- Nastavení hesla
- Nastavte pro své uživatelské jméno vhodné heslo pro přístup přes Sambu. Doporučujeme jiné heslo než to pro přihlášení do systému.
- V příkazovém řádku spusťte:
smbpasswd
- Nastavení přístupových práv
- Pro váš uživatelský účet je třeba povolit přístup do složky webu (/var/www).
- Opět musíme pracovat jako správce počítače.
- Vytvoříme uživatelskou skupinu web, které práva nastavíme a přidáme do ní svůj uživatelský účet.
groupadd web usermod -aG web uzivatelske_jmeno chown -R uzivatelske_jmeno /var/www chgrp -R web /var/www chmod 775 /var/www chmod g+s /var/www chmod -R g+w /var/www
- Další materiály: Samba - konfigurace, Oprávnění pro přístup k souborům, Správa uživatelských účtů, Nastavování práv, Konfigurační soubory, Speciální bity.
Restart služby Samba
- Musí provést správce počítače:
/etc/init.d/samba restart
Připojení sdílené složky ze druhého počítače
- GNU/Linux
- Pokud se k serveru chcete připojovat z GNU/Linuxu, je třeba na klientském počítači nainstalovat:
aptitude install samba-client smbfs
- Výpis dostupných složek
smbclient -L //server
- Připojení složky:
- Může být problém s připojováním starších zařízení nepodporujících novější způsoby autentizace uživatele.
mount -t cifs //server/slozka do-ktereho-adresare
- Windows
- Chcete-li se k serveru připojit z Windows, lze použít standardní sdílení souborů — není třeba nic instalovat.
net use z: \\server\web
- Další materiály