Zentyal SAMBA4

From ICO wiki
Jump to navigationJump to search

Autorid: Urmo Lihten A31 ja Kersti Lang A31 (2012 sügissemester)

Sissejuhatus

Samba 4 võimaluste rohke failiserver. Suurimad omadused:

  • '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

ja palju muud.

Eeldused

Kasutusel on Ubuntu 11.04, millel on juba Bind9 paigaldatud domeeniga piix.ee. Kasutusele läheb Samba 4.0.0~alpha15~git20110124.

Paigaldamine

Samba4 installeerimine

Logida sisse administraatorina:

sudo -i

Teha tarkvara nimekirja uuendamine:

apt-get update

Installeerida Samba4 jaoks vajalikud paketid:

apt-get install samba4 samba4-clients

Juhul kui eksisteerib vana Samba konfiguratsiooni fail, siis see kas kustutada või teha backupiks:

mv /etc/samba/smb.conf{,.old}

Bind9 konfiguratsiooni faili loomine

Eeldab, 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 või millegi muu korral ei hakka Kerberos tööle korralikult.
--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'

Tulemuse lõpuosa peaks olema midagi sarnast:

...
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" "alla:

                log_daemon_msg "Starting Samba 4 daemon" "samba"

                #Lisatud juurde 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

Selle sisuks tuleb

#!/bin/sh
LD_PRELOAD=/usr/lib/libdcerpc.0.0.1 /usr/sbin/$(basename $0)

Teeme eelnevale ka lingid

ln -s /usr/local/sbin/samba{,_dnsupdate}
ln -s /usr/local/sbin/samba{,_spnupdate}

Samba 4 käivitamine

service samba4 start

DNS seadistamine

Muudame Bind9 konfiguratsiooni

nano /etc/bind/named.conf.local

Kaasame Samba4 poolt loodud konfiratsiooni Bind9 seadetesse

include "/var/lib/samba/private/named.conf";

Apparmor'i probleem

Kuna Apparmor kaitseb Samba4 konfiguratsiooni Bind9 eest, siis peab tegema erandid Apparmorisse.

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

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)

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 ka seda kontrollida, et kas töötab korralikult ja kas seadistused said õigesti.
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, kas Samba4 töötab:

smbclient -L SAMBA.PIIX.EE -U%

Väljund peaks olema midagi sarnast ehk näitab väljajagatud failide/kausta/printerite nimekirjasid:

	Sharename       Type       Comment
	---------       ----       -------
	netlogon        Disk       
	sysvol          Disk       
	IPC$            IPC        IPC Service

Autentimise kontrollimiseks võiks käivitada järgneva käsu:

smbclient //SAMBA.PIIX.EE/netlogon -UAdministrator%'Student1' -c 'ls'

Väljundiks peaks tulema netlogon kausta sisu.

Kontrollime, kas Kerberos server töötab. Küsitakse admin parooli ehk praegusel juhul on Student1 selleks:

kinit Administrator@SAMBA.PIIX.EE

Edukal töötamisel ta mingit väljundit ei anna.
Kontrollime, kas Kerberos annab välja ka pileti ehk Ticketi:

klist

Tulemus peaks olema midagi sarnast:

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