Zentyal SAMBA4: Difference between revisions

From ICO wiki
Jump to navigationJump to search
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. <br>
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.<br>
 
PIIX või millegi muu korral ei hakka Kerberos tööle korralikult.<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>
--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>
Tulemuse lõpuosa peaks olema midagi sarnast:
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" "alla:
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 juurde 3 rida
                 #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>
Selle sisuks tuleb
Ning selle sisuks tuleb:
<source lang=bash>
<source lang=bash>
#!/bin/sh
#!/bin/sh
Line 100: Line 86:
</source>
</source>


Teeme eelnevale ka lingid
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 4 käivitamine
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 poolt loodud konfiratsiooni Bind9 seadetesse
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 peab tegema erandid Apparmorisse.
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>
Näiteks on meil nimeserveri aadress 192.168.56.200. (tuleb lisada teistest nimekirjas olevatest nimeserveritest ettepoole, muidu pole asjast kasu ja ei võta Bind9'st vastuseid)
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 ka seda kontrollida, et kas töötab korralikult ja kas seadistused said õigesti. <br>
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, kas Samba4 töötab:
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 peaks olema midagi sarnast ehk näitab väljajagatud failide/kausta/printerite nimekirjasid:
Väljund kuvatakse väljajagatud failide/kausta/printerite nimekiri:
<source lang=bash>
<source lang=bash>


Line 173: Line 160:


</source>
</source>
Autentimise kontrollimiseks võiks käivitada järgneva käsu:
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 peaks tulema netlogon kausta sisu.<br>
Väljundiks kuvatakse netlogon kausta sisu.<br>
<br>
<br>
Kontrollime, kas Kerberos server töötab. Küsitakse admin parooli ehk praegusel juhul on Student1 selleks:
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>
Edukal töötamisel ta mingit väljundit ei anna.<br>
Töökorras olekus väljundit ei kuvata.<br>
Kontrollime, kas Kerberos annab välja ka pileti ehk Ticketi:
Kontrollime, kas Kerberos annab välja pileti ehk Ticketi:
<source lang=bash>
<source lang=bash>
klist
klist
</source>
</source>
Tulemus peaks olema midagi sarnast:
Tulemuks kuvatakse:
<source lang=bash>
<source lang=bash>
Ticket cache: FILE:/tmp/krb5cc_0
Ticket cache: FILE:/tmp/krb5cc_0

Revision as of 15: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

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%

Profile path

ja muudatused ära salvestada ning käivitada Start->Run 'is käsk "gpudate /force", mis sunnib uuendama Group Policy't.

gpupdate


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