Zentyal SAMBA4: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
Autorid: Urmo Lihten A31 ja Kersti Lang A31 (2012 sügissemester) | Autorid: Urmo Lihten A31 ja Kersti Lang A31 (2012 sügissemester) | ||
=Sissejuhatus= | =Sissejuhatus= | ||
Samba 4 võimaluste rohke failiserver. | Samba 4 võimaluste rohke failiserver. | ||
=Eelised= | =Eelised= | ||
Line 14: | Line 12: | ||
* Python tugi | * Python tugi | ||
jne. | jne. | ||
=Eeldused= | =Eeldused= | ||
Line 20: | Line 17: | ||
* eelnevalt paigaldatud Bind9 domeeniga piix.ee | * eelnevalt paigaldatud Bind9 domeeniga piix.ee | ||
kasutatakse Samba 4.0.0~alpha15~git20110124 | kasutatakse Samba 4.0.0~alpha15~git20110124 | ||
=Paigaldamine= | =Paigaldamine= | ||
==Samba4 installeerimine== | ==Samba4 installeerimine== | ||
Logime sisse administraatorina: | Logime sisse administraatorina: | ||
<source lang=bash> | <source lang=bash> | ||
sudo -i | sudo -i | ||
</source> | </source> | ||
Uuendame tarkvara nimekirja: | Uuendame tarkvara nimekirja: | ||
<source lang=bash> | <source lang=bash> | ||
apt-get update | apt-get update | ||
</source> | </source> | ||
Installeerime Samba4 jaoks vajalikud paketid: | Installeerime Samba4 jaoks vajalikud paketid: | ||
<source lang=bash> | <source lang=bash> | ||
apt-get install samba4 samba4-clients | apt-get install samba4 samba4-clients | ||
</source> | </source> | ||
Juhul kui eksisteerib vana Samba konfiguratsiooni fail, siis kustutame või muudame backup'iks: | Juhul kui eksisteerib vana Samba konfiguratsiooni fail, siis kustutame või muudame backup'iks: | ||
<source lang=bash> | <source lang=bash> | ||
Line 47: | Line 39: | ||
==Bind9 konfiguratsiooni faili loomine== | ==Bind9 konfiguratsiooni faili loomine== | ||
eeldusel, et smb.conf faili pole olemas. Samuti tuleb jälgida järgnevas käsus, et --realm juures märgitud argumendiks SAMBA.PIIX.EE kõrval tuleb --domain argumendiks kirjutada SAMBA.PIIX; millegi muu korral ei hakka Kerberos soovitult tööle.<br> | |||
Samuti tuleb jälgida järgnevas käsus, et --realm juures märgitud argumendiks SAMBA.PIIX.EE kõrval tuleb --domain argumendiks kirjutada SAMBA. | |||
PIIX | |||
--adminpass ehk administraatori parool peab olema vähemalt ühe suure tähega ja ühe numbriga ning vähemalt 7 tähemärki pikk.<br> | --adminpass ehk administraatori parool peab olema vähemalt ühe suure tähega ja ühe numbriga ning vähemalt 7 tähemärki pikk.<br> | ||
<source lang=bash> | <source lang=bash> | ||
LD_PRELOAD=/usr/lib/libdcerpc.so.0.0.1 /usr/share/samba/setup/provision --realm=SAMBA.PIIX.EE | LD_PRELOAD=/usr/lib/libdcerpc.so.0.0.1 /usr/share/samba/setup/provision --realm=SAMBA.PIIX.EE --domain=SAMBA --adminpass=Student1 --server-role='domain controller' | ||
--domain=SAMBA --adminpass=Student1 --server-role='domain controller' | |||
</source> | </source> | ||
Tulemus on järgnev: | |||
<source lang=bash> | <source lang=bash> | ||
... | ... | ||
Line 80: | Line 66: | ||
</source> | </source> | ||
Lisame koodile juurde SAMBAPID kontrollimise read "log_daemon_msg "Starting Samba 4 daemon" "samba" " | Lisame koodile juurde SAMBAPID kontrollimise read "log_daemon_msg "Starting Samba 4 daemon" "samba" " järele: | ||
<source lang=bash> | <source lang=bash> | ||
log_daemon_msg "Starting Samba 4 daemon" "samba" | log_daemon_msg "Starting Samba 4 daemon" "samba" | ||
#Lisatud | #Lisatud 3 rida | ||
if [ ! -d $(dirname $SAMBAPID) ]; | if [ ! -d $(dirname $SAMBAPID) ]; | ||
then mkdir -p $(dirname $SAMBAPID) | then mkdir -p $(dirname $SAMBAPID) | ||
Line 94: | Line 80: | ||
nano /usr/local/sbin/samba | nano /usr/local/sbin/samba | ||
</source> | </source> | ||
Ning selle sisuks tuleb: | |||
<source lang=bash> | <source lang=bash> | ||
#!/bin/sh | #!/bin/sh | ||
Line 100: | Line 86: | ||
</source> | </source> | ||
Tekitame eelnevalt loodud failidele lingid: | |||
<source lang=bash> | <source lang=bash> | ||
ln -s /usr/local/sbin/samba{,_dnsupdate} | ln -s /usr/local/sbin/samba{,_dnsupdate} | ||
ln -s /usr/local/sbin/samba{,_spnupdate} | ln -s /usr/local/sbin/samba{,_spnupdate} | ||
</source> | </source>erandid | ||
Samba | Kävitane Samba: | ||
<source lang=bash> | <source lang=bash> | ||
service samba4 start | service samba4 start | ||
Line 115: | Line 101: | ||
<source lang=bash> | <source lang=bash> | ||
nano /etc/bind/named.conf.local | nano /etc/bind/named.conf.local | ||
</source> | </source>+ | ||
Kaasame Samba4 | Kaasame Samba4 raames loodud konfiratsioonifaili Bind9 seadetesse: | ||
<source lang=bash> | <source lang=bash> | ||
include "/var/lib/samba/private/named.conf"; | include "/var/lib/samba/private/named.conf"; | ||
Line 123: | Line 109: | ||
==Apparmor'i probleem== | ==Apparmor'i probleem== | ||
Kuna Apparmor kaitseb Samba4 konfiguratsiooni Bind9 eest, siis | Kuna Apparmor kaitseb Samba4 konfiguratsiooni Bind9 eest, siis lisame Apparmorisse erandid. | ||
<source lang=bash> | <source lang=bash> | ||
nano /etc/apparmor.d/usr.sbin.named | nano /etc/apparmor.d/usr.sbin.named | ||
Line 138: | Line 124: | ||
</source> | </source> | ||
==Nimeserverid paika== | ==Nimeserverid paika== | ||
Kuna Samba4 kasutab Bind9 DNS lahendust, siis oleks mõistlik lisada oma /etc/resolv.conf'i oma nimeserver kui seda juba seal pole | Kuna Samba4 kasutab Bind9 DNS lahendust, siis oleks mõistlik lisada oma /etc/resolv.conf'i oma nimeserver kui seda juba seal pole. | ||
<source lang=bash> | <source lang=bash> | ||
nano /etc/resolv.conf | nano /etc/resolv.conf | ||
</source> | </source> | ||
Meie nimeserveri aadress on 192.168.56.200 (kirje tuleb lisada teistest ip-aadressidest ettepoole, et süsteem pöörduks just Bind9 poole) | |||
<source lang=bash> | <source lang=bash> | ||
name server 192.168.56.200 | name server 192.168.56.200 | ||
</source> | </source> | ||
==Kerberose paigaldamine/seadistamine== | ==Kerberose paigaldamine/seadistamine== | ||
Tõstame Samba4 poolt loodud spetsiaalse Kerberos5 konfiguratsioonifaili kausta /etc/ | Tõstame Samba4 poolt loodud spetsiaalse Kerberos5 konfiguratsioonifaili kausta /etc/ | ||
Line 151: | Line 138: | ||
cp /var/lib/samba/private/krb5.conf /etc/ | cp /var/lib/samba/private/krb5.conf /etc/ | ||
</source> | </source> | ||
Kuna Kerberos on vaikimisi olemas Samba4 installimisega, siis oleks vaja | Kuna Kerberos on vaikimisi olemas Samba4 installimisega, siis oleks vaja selle töökorda ja seadistusi kontrollida. <br> | ||
Paigaldame krb5-user paketi | Paigaldame krb5-user paketi: | ||
<source lang=bash> | <source lang=bash> | ||
apt-get install krb5-user | apt-get install krb5-user | ||
Line 159: | Line 146: | ||
<br> | <br> | ||
==Kontroll== | ==Kontroll== | ||
Kontrollime, | Kontrollime, Samba4 töökorda: | ||
<source lang=bash> | <source lang=bash> | ||
smbclient -L SAMBA.PIIX.EE -U% | smbclient -L SAMBA.PIIX.EE -U% | ||
</source> | </source> | ||
Väljund | Väljund kuvatakse väljajagatud failide/kausta/printerite nimekiri: | ||
<source lang=bash> | <source lang=bash> | ||
Line 173: | Line 160: | ||
</source> | </source> | ||
Autentimise kontrollimiseks | Autentimise kontrollimiseks käivitame käsu: | ||
<source lang=bash> | <source lang=bash> | ||
smbclient //SAMBA.PIIX.EE/netlogon -UAdministrator%'Student1' -c 'ls' | smbclient //SAMBA.PIIX.EE/netlogon -UAdministrator%'Student1' -c 'ls' | ||
</source> | </source> | ||
Väljundiks | Väljundiks kuvatakse netlogon kausta sisu.<br> | ||
<br> | <br> | ||
Kontrollime, kas Kerberos server töötab. Küsitakse admin parooli | Kontrollime, kas Kerberos server töötab. Küsitakse admin parooli ("Student1"): | ||
<source lang=bash> | <source lang=bash> | ||
kinit Administrator@SAMBA.PIIX.EE | kinit Administrator@SAMBA.PIIX.EE | ||
</source> | </source> | ||
Töökorras olekus väljundit ei kuvata.<br> | |||
Kontrollime, kas Kerberos annab välja | Kontrollime, kas Kerberos annab välja pileti ehk Ticketi: | ||
<source lang=bash> | <source lang=bash> | ||
klist | klist | ||
</source> | </source> | ||
Tulemuks kuvatakse: | |||
<source lang=bash> | <source lang=bash> | ||
Ticket cache: FILE:/tmp/krb5cc_0 | Ticket cache: FILE:/tmp/krb5cc_0 |
Revision as of 14:04, 8 January 2013
Autorid: Urmo Lihten A31 ja Kersti Lang A31 (2012 sügissemester)
Sissejuhatus
Samba 4 võimaluste rohke failiserver.
Eelised
- 'Active Directory' sisselogimise ja administreerimise protokollide tugi Windows XP, Windows 7 ja Mac OS X klientidele.
- NTFS tugi
- Sisemine LDAP server AD omadustega.
- Sisemine Kerberos server.
- AD sidumine DNS-ga.
- Python tugi
jne.
Eeldused
- Ubuntu 11.04 või uuem
- eelnevalt paigaldatud Bind9 domeeniga piix.ee
kasutatakse Samba 4.0.0~alpha15~git20110124
Paigaldamine
Samba4 installeerimine
Logime sisse administraatorina:
sudo -i
Uuendame tarkvara nimekirja:
apt-get update
Installeerime Samba4 jaoks vajalikud paketid:
apt-get install samba4 samba4-clients
Juhul kui eksisteerib vana Samba konfiguratsiooni fail, siis kustutame või muudame backup'iks:
mv /etc/samba/smb.conf{,.old}
Bind9 konfiguratsiooni faili loomine
eeldusel, et smb.conf faili pole olemas. Samuti tuleb jälgida järgnevas käsus, et --realm juures märgitud argumendiks SAMBA.PIIX.EE kõrval tuleb --domain argumendiks kirjutada SAMBA.PIIX; millegi muu korral ei hakka Kerberos soovitult tööle.
--adminpass ehk administraatori parool peab olema vähemalt ühe suure tähega ja ühe numbriga ning vähemalt 7 tähemärki pikk.
LD_PRELOAD=/usr/lib/libdcerpc.so.0.0.1 /usr/share/samba/setup/provision --realm=SAMBA.PIIX.EE --domain=SAMBA --adminpass=Student1 --server-role='domain controller'
Tulemus on järgnev:
...
See /var/lib/samba/private/named.conf for an example configuration include file for BIND
and /var/lib/samba/private/named.txt for further documentation required for secure DNS updates
A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf
Please install the phpLDAPadmin configuration located at /var/lib/samba/private/phpldapadmin-config.php into /etc/phpldapadmin/config.php
Once the above files are installed, your Samba4 server will be ready to use
Server Role: domain controller
Hostname: ns
NetBIOS Domain: SAMBA
DNS Domain: samba.piix.ee
DOMAIN SID: S-1-5-21-115115566-1439331126-697070417
Admin password: Student1
Samba4 seonduvate skriptide muutmine ja loomine
Kuna Samba4 ei kontrolli startimisel Samba kataloogi olemasolu /var/run kaustas, siis lisame selle võimaluse:
nano /etc/init.d/samba4
Lisame koodile juurde SAMBAPID kontrollimise read "log_daemon_msg "Starting Samba 4 daemon" "samba" " järele:
log_daemon_msg "Starting Samba 4 daemon" "samba"
#Lisatud 3 rida
if [ ! -d $(dirname $SAMBAPID) ];
then mkdir -p $(dirname $SAMBAPID)
fi
Lisaks tuleb luua fail /usr/local/sbin/samba
nano /usr/local/sbin/samba
Ning selle sisuks tuleb:
#!/bin/sh
LD_PRELOAD=/usr/lib/libdcerpc.0.0.1 /usr/sbin/$(basename $0)
Tekitame eelnevalt loodud failidele lingid:
ln -s /usr/local/sbin/samba{,_dnsupdate}
ln -s /usr/local/sbin/samba{,_spnupdate}
erandid
Kävitane Samba:
service samba4 start
DNS seadistamine
Muudame Bind9 konfiguratsiooni
nano /etc/bind/named.conf.local
+
Kaasame Samba4 raames loodud konfiratsioonifaili Bind9 seadetesse:
include "/var/lib/samba/private/named.conf";
Apparmor'i probleem
Kuna Apparmor kaitseb Samba4 konfiguratsiooni Bind9 eest, siis lisame Apparmorisse erandid.
nano /etc/apparmor.d/usr.sbin.named
Lisada lõppu ennem viimast } märki järgmised read:
/var/lib/samba/private/* rw,
/var/lib/samba/private/dns/* rw,
Laeme uuesti Apparmori profiilid ja teeme Bind9'le ka restardi.
/etc/init.d/apparmor reload
/etc/init.d/bind9 restart
Nimeserverid paika
Kuna Samba4 kasutab Bind9 DNS lahendust, siis oleks mõistlik lisada oma /etc/resolv.conf'i oma nimeserver kui seda juba seal pole.
nano /etc/resolv.conf
Meie nimeserveri aadress on 192.168.56.200 (kirje tuleb lisada teistest ip-aadressidest ettepoole, et süsteem pöörduks just Bind9 poole)
name server 192.168.56.200
Kerberose paigaldamine/seadistamine
Tõstame Samba4 poolt loodud spetsiaalse Kerberos5 konfiguratsioonifaili kausta /etc/
cp /var/lib/samba/private/krb5.conf /etc/
Kuna Kerberos on vaikimisi olemas Samba4 installimisega, siis oleks vaja selle töökorda ja seadistusi kontrollida.
Paigaldame krb5-user paketi:
apt-get install krb5-user
Paigaldamise käigus küsib ta realm'i. Meie näite puhul on selleks SAMBA.PIIX.EE
Kontroll
Kontrollime, Samba4 töökorda:
smbclient -L SAMBA.PIIX.EE -U%
Väljund kuvatakse väljajagatud failide/kausta/printerite nimekiri:
Sharename Type Comment
--------- ---- -------
netlogon Disk
sysvol Disk
IPC$ IPC IPC Service
Autentimise kontrollimiseks käivitame käsu:
smbclient //SAMBA.PIIX.EE/netlogon -UAdministrator%'Student1' -c 'ls'
Väljundiks kuvatakse netlogon kausta sisu.
Kontrollime, kas Kerberos server töötab. Küsitakse admin parooli ("Student1"):
kinit Administrator@SAMBA.PIIX.EE
Töökorras olekus väljundit ei kuvata.
Kontrollime, kas Kerberos annab välja pileti ehk Ticketi:
klist
Tulemuks kuvatakse:
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: Administrator@SAMBA.PIIX.EE
Valid starting Expires Service principal
01/07/13 23:51:12 01/08/13 09:51:12 krbtgt/SAMBA.PIIX.EE@SAMBA.PIIX.EE
renew until 01/08/13 23:51:09
Kasutajate ja gruppide ning jagatavate kaustade loomine
Loome kaustad "share" ja "opilane".
mkdir -p /var/data/share
mkdir -p /var/data/profiles
Loome ka vastavad kasutajad ja grupid.
adduser share
adduser opilane
addgroup jagatud
addgroup opilane
adduser share jagatud
adduser opilane opilane
samba-tool newuser share
samba-tool newuser opilane
Anname kaustadele ka vastavad omanikud ning grupid
chown share:jagatud /var/data/share
chown opilane:opilane /var/data/profiles
Tehtud kaustade väljajagamine ja õiguste määramised
Avame Samba4 konfiguratsiooni faili smb.conf
nano /etc/samba.smb.conf
Lisame lõppu juurde järgmised read
[share]
path = /var/data/share
comment = üldine jagatud ketas
read only = No
[profiles]
path = /var/data/profiles
comment = opilaste jagatud ketas
read only = no
Nüüd teeme Samba4-le väikese restardi ja kaustad peaksid olema seejärel väljajagatud.
service samba4 restart
Kuna Samba4's enam ei saa smb.conf'i faili kaudu kaustadele õigusi lisada ja siis saab Active Directory kaudu läbi Windowsi masina Administraatori kontoga teha "profiles" kaustade alla igale kasutajale oma kausta ehk "roaming profile"-i.
Tuleb meeles pidada, et roaming profile juures peab domeenis sisselogima sama Windowsi versiooniga masinaga. Erinevate Windowsite alt sisselogides samas domeenis genereeritakse Profiles kausta topelt kasutaja kaust ja see pole esimese loodud kasutaja kaustaga ühenduses.
Windowsi klientmasinas, kuhu on installeeritud kaughalduse programm administreerimaks domeeni serverit, tuleb võtta lahti Start->Run-> dsa.msc
Avanenud aknas minna vastavate kasutajate juurde, võtta lahti parem klõpsuga nende Properties ja Profile sektsiooni lisada Profile Path: //192.168.56.200/profiles/%USERNAME%
ja muudatused ära salvestada ning käivitada Start->Run 'is käsk "gpudate /force", mis sunnib uuendama Group Policy't.
Peale seda korraks väljalogides ja vastava kasutajaga sisselogides tehakse Profiles kausta vastava kasutajanimega kaust.
Näide serverist vaadatuna:
# cd /var/data/profiles
# ls -l
drwxr-xr-x 12 3000012 users 4096 Aug 2 15:35 test