Samba 4 kasutamine

Allikas: Kuutõrvaja

Samba 4 is a combined set of daemons, client utilities, and Python bindings that allow communicating using SMB1, SMB2, and soon SMB3 protocols. It also implements Active Directory domain controller (DC) functionality as an integrated Kerberos DC, LDAP server, DNS server, and SMB/CIFS server.

Samba domeen

nö AD domeeninimi ei tohi olla sama, mis üldises DNS-is registreeritud, muid teenuseid pakkuv domeeninimi, sest domeenikontrolleri taga olevad kliendid satuvad segadusse:

  • väljastpoolt tulevad päringud zoo.ee kohta vastab tavaline nimeserver.
  • seestpoolt tulevad päringud nt samba.zoo.ee kohta suunab DC edasi tavalisele nimeserverile, kuna see on talle võõras nimi
  • seestpoolt tulevad päringud zoo.ee kohta vastab DC ise, kuna ta peab iseennast selleks masinaks ja võib siis tihti valetada (nt maskeerides A kirje või öeldes, et MX kirjet pole vmt).

Seega oleks domeeninimeks vaja panna zoo.ee domeenis näiteks intra.zoo.ee

Samba paigaldamine nt debianis

# apt-get install samba smbclient

Samba 4 tuleb koos haldustöövahendiga samba-tool millega on võimalik teostada suurem osa konfigureerimist. Vaja on vaid õigeid käsurea võtmeid lisada

Debianis tekib samba preconfigureeritult, reconfigureerimiseks oleks mõistlik algseadistus eemladada

# service smbd stop
# mv /etc/samba/smb.conf /etc/samba/smb.conf.dist

Alljärgnev käsk seadistab Samba LDAP suffixiga: DC=example,DC=com (ja NETBIOS domeeniks EXAMPLE), kasutama sisemist DNS serverit ja lisab UNIXI lisad (rfc2307) skeemasse.

# samba-tool domain provision --use-rfc2307 --dns-backend=SAMBA_INTERNAL --server-role=dc --option="interfaces=lo eth0" \
--option="bind interfaces only=yes" --option="dns forwarder = 192.168.0.1" \
--adminpass='Pa$$w0rd' --realm='example.com' --domain='example'

Seejuures tuleks jälgida, et sobivaks saaksid kohandatud järgnevad parameetrid:

Vajalik selleks, et samba kuulaks õiget võrguseadet

--option="interfaces=lo eth0" --option="bind interfaces only=yes"

Kuna samba server on ise DNS serveriks peab ta teadma kuhu päringuid edasi suunata

--option="dns forwarder = 192.168.0.1"

Selle käsu tulemusena tekib järgnev konf /etc/samba/smb.conf

# Global parameters
[global] 
	netbios name = NUHVELDAJA
	realm = TEST.EENET.EE
	workgroup = TEST
	dns forwarder = 193.40.0.12
	server role = active directory domain controller
	idmap_ldb:use rfc2307 = yes

[netlogon]
	path = /var/lib/samba/sysvol/test.eenet.ee/scripts
	read only = No

[sysvol]
	path = /var/lib/samba/sysvol
	read only = No

Samba serveri nimeserver tuleb samuti seadistada /etc/resolv.conf failist endale viitama

domain example.com
nameserver 192.168.0.1

Vaikimisi on Samba 4 paroolid seadistatud aeguma 42 päevaga

# samba-tool domain passwordsettings set --min-pwd-age=0 --max-pwd-age=0

Võib muuta paroolide aegumise kehtetuks ainult administraatorile

# samba-tool user setexpiry Administrator --noexpiry

Samba startimine

# service samba-ad-dc start

Kasutajate haldus

Kasutaja loomine

# samba-tool user add mart
New Password:# set password
Retype Password:
User 'mart' created successfully 

Kasutajate nimekiri

# samba-tool user list
Administrator
krbtgt
Guest
mart

Parooli muutmine

# samba-tool user setpassword mart
New Password:
Changed password OK 

Kasutaja kustutamine

# samba-tool user delete mart
Deleted user mart

Konfiguratsioon ja shared

Seadistusfail tekib /etc/samba/smb.conf kausta nt jagamiseks

mkdir /srv/testshare
nano /etc/samba/smb.conf

ja lisame sinna kausta:

[testshare]
path = /srv/testshare
comment = authenticated users only
read only = no
guest ok = no

Taaslaadime samba seadistuse ja testime:

# smbcontrol all reload-config
# smbclient //nuhveldaja/testshare -U testija <parool>

Tulemus:

Domain=[TEST] OS=[Windows 6.1] Server=[Samba 4.5.1]
smb: \> ls
  .                                   D        0  Wed Nov 30 17:20:08 2016
  ..                                  D        0  Wed Nov 30 17:20:08 2016

		102686648 blocks of size 1024. 97318836 blocks available

Kerberose paigaldamine ja testimine

apt-get install krb5-user

Konfiguratsioon tuleb sambast

rm -rv /etc/krb5.conf
ln -vs /var/lib/samba/private/krb5.conf /etc/krb5.conf

Konf võiks välja näha järgnev

[logging]
	default = SYSLOG:INFO:DAEMON 

[libdefaults]
	default_realm = TEST.EENET.EE 
	dns_lookup_realm = false
	dns_lookup_kdc = true
	rdns = no

Kerberose testimine

kinit **username**
_parool_
klist
kdestroy

Konfime DNSi

Loome PTR tsooni

# samba-tool dns zonecreate nuhveldaja.test.eenet.ee 0.40.193.in-addr.arpa -U Administrator

Tulemuseks:

Password for [TEST\Administrator]:
Zone 0.40.193.in-addr.arpa created successfully

Loome PTR nimekirje

# samba-tool dns add nuhveldaja.test.eenet.ee 0.40.193.in-addr.arpa 155 PTR nuhveldaja.test.eenet.ee -U Administrator

Tulemuseks:

Record added successfully

Taaskäivitame samba ja kontrollime

# sc restart samba
# host -t PTR 193.40.0.155

Tulemuseks:

155.0.40.193.in-addr.arpa domain name pointer nuhveldaja.test.eenet.ee.

Mitu domeenikontrollerit

# samba-tool drs showrepl
Default-First-Site-Name\NUHVELDAJA
DSA Options: 0x00000001
DSA object GUID: ecfddf39-c731-43d7-89e6-f65f13ec2234
DSA invocationId: f0fc9d7a-1fc6-4640-bb2e-c10b53670d25

==== INBOUND NEIGHBORS ====

==== OUTBOUND NEIGHBORS ====

==== KCC CONNECTION OBJECTS ====

OpenChange

OpenChange on samba4 plugin, mis kasutab samba kasutajate infot, autentimist ja muud. Pakkudes mapi (exchange rpc protokolli) ühendusi outloogile. Osa infot hoiab ta seejuures mysqlis Ehk siis Samba4/Openchange annab täieliku AD ja exchange serveri võimekuse

Sogo on groupware tarkvara, põhimõtteliselt siis veebiliides mis pakub kalendreid, aadressiraamatut, webmaili ja muud head. Sodib ta ühtlasi samas andmebaasis kus ka openxchange Sogo kasutab ise imapi serverit nt dovecoti.

Lisaks on veel olemas jubin nimega iGestis, mis on vinge kasutajate haldusliides

Tegelikult kui süveneda siis on selle kompoti installimine päris kerge, näiteks debianil ei võta sellise asja ise kokku klopsimine isegi eriti higiseks mitte http://iabsis.com/en/community/tuto/openchange-samba4-debian

Viited

https://wiki.samba.org/index.php/Join_an_additional_Samba_DC_to_an_existing_Active_Directory Backup domeenikontroller

https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller

https://wiki.gentoo.org/wiki/Samba/Samba_4_Migration