Ubuntu-ny Samba4 AD DC-e SSSD we Realm bilen birleşdiriň - 15-nji bölüm


Bu gollanma, Ubuntu Desktop enjamyny SSSD we Realmd hyzmatlary bilen Samba4 Active Directory domenine nädip birikdirmelidigini görkezer, ulanyjylary işjeň katalogdan tassyklamak üçin.

  1. Ubuntu-da Samba4 bilen işjeň katalog infrastrukturasyny dörediň

1-nji ädim: Başlangyç sazlamalar

1. Ubuntu-ny “Active Directory” -e goşmazdan ozal, host adynyň dogry düzülendigine göz ýetiriň. Maşynyň adyny bellemek ýa-da/etc/hostname faýlyny el bilen redaktirlemek üçin hostnamectl buýrugyny ulanyň.

$ sudo hostnamectl set-hostname your_machine_short_hostname
$ cat /etc/hostname
$ hostnamectl

2. Indiki ädimde, aşakdaky skrinshotda görkezilişi ýaly, Samba AD domen gözegçisini görkezmek üçin degişli IP konfigurasiýalaryny we dogry DNS IP serwer salgylaryny goşuň.

Jaýyňyzda DHCP serwerini degişli AD DNS IP adresleri bilen LAN enjamlaryňyz üçin IP sazlamalaryny awtomatiki bellemek üçin düzen bolsaňyz, bu ädimden geçip, öňe gidip bilersiňiz.

Aboveokardaky skrinshotda, 192.168.1.254 we 192.168.1.253 Samba4 Domain Controllers-iň IP adreslerini görkezýär.

3. GUI ulanyp ýa-da buýruk setirinden üýtgeşmeleri ulanmak üçin ulgam hyzmatlaryny täzeden açyň we DNS çözgüdiniň garaşylyşy ýaly işleýändigini ýa-da ýokdugyny barlamak üçin domen adyňyza bir topar ping buýrugy beriň. Şeýle hem, DNS çözgüdini barlamak üçin host buýrugyny ulanyň.

$ sudo systemctl restart networking.service
$ host your_domain.tld
$ ping -c2 your_domain_name
$ ping -c2 adc1
$ ping -c2 adc2

4. Netijede, maşynyň wagtynyň Samba4 AD bilen sinhrondygyny anyklaň. Aşakdaky buýruklary çykaryp, ntpdate paketini guruň we AD bilen wagt sinhronlaň.

$ sudo apt-get install ntpdate
$ sudo ntpdate your_domain_name

2-nji ädim: Gerekli paketleri guruň

5. Bu ädimde Ubuntu-ny Samba4 AD DC: Realmd we SSSD hyzmatlaryna goşmak üçin zerur programma üpjünçiligini we zerur baglylyklary guruň.

$ sudo apt install adcli realmd krb5-user samba-common-bin samba-libs samba-dsdb-modules sssd sssd-tools libnss-sss libpam-sss packagekit policykit-1 

6. Baş harplar bilen deslapky ýeriň adyny giriziň we gurnamany dowam etdirmek üçin Enter düwmesini basyň.

7. Ondan soň, aşakdaky mazmunly SSSD konfigurasiýa faýly dörediň.

$ sudo nano /etc/sssd/sssd.conf

Sssd.conf faýlyna aşakdaky setirleri goşuň.

[nss]
filter_groups = root
filter_users = root
reconnection_retries = 3

[pam]
reconnection_retries = 3

[sssd]
domains = tecmint.lan
config_file_version = 2
services = nss, pam
default_domain_suffix = TECMINT.LAN


[domain/tecmint.lan]
ad_domain = tecmint.lan
krb5_realm = TECMINT.LAN
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%d/%u
access_provider = ad

auth_provider = ad
chpass_provider = ad
access_provider = ad
ldap_schema = ad
dyndns_update = true
dyndns_refresh_interval = 43200
dyndns_update_ptr = true
dyndns_ttl = 3600

Domen adyny aşakdaky parametrlerde çalyşýandygyňyza göz ýetiriň:

domains = tecmint.lan
default_domain_suffix = TECMINT.LAN
[domain/tecmint.lan]
ad_domain = tecmint.lan
krb5_realm = TECMINT.LAN

8. Ondan soň, aşakdaky buýrugy bermek bilen SSSD faýly üçin degişli rugsatlary goşuň:

$ sudo chmod 700 /etc/sssd/sssd.conf

9. Indi Realmd konfigurasiýa faýlyny açyň we redaktirläň we aşakdaky setirleri goşuň.

$ sudo nano /etc/realmd.conf

Realmd.conf faýlyň bölegi:

[active-directory]
os-name = Linux Ubuntu
os-version = 17.04

[service]
automatic-install = yes

 [users]
default-home = /home/%d/%u
default-shell = /bin/bash

[tecmint.lan]
user-principal = yes
fully-qualified-names = no

10. Üýtgetmeli iň soňky faýl Samba daemonyna degişlidir. Redaktirlemek üçin /etc/samba/smb.conf faýly açyň we aşakdaky suratda görkezilişi ýaly [global] bölümden soň faýlyň başynda aşakdaky kod blokyny goşuň.

 workgroup = TECMINT
   client signing = yes
   client use spnego = yes
   kerberos method = secrets and keytab
   realm = TECMINT.LAN
   security = ads

Domen adynyň bahasyny, esasanam domen adyňyza gabat gelýän ýer bahasyny çalyşýandygyňyzy we konfigurasiýa faýlynda ýalňyşlyklaryň ýokdugyny barlamak üçin testparm buýrugyny işlediň.

$ sudo testparm

11. requiredhli zerur üýtgeşmeler girizeniňizden soň, AD administratiw hasaby ulanyp, Kerberos tassyklamasyny barlaň we aşakdaky buýruklary bermek bilen bileti sanaň.

$ sudo kinit [email 
$ sudo klist

3-nji ädim: Ubuntu-a Samba4 Realm-a goşulyň

12. Aşakda görkezilişi ýaly aşakdaky buýruklar tapgyryndan Samba4 Active Directory meselesine Ubuntu enjamyna goşulmak. Häkimiýetiň garaşylýan ýaly işlemegi we şoňa görä domen adynyň bahasyny çalyşmak üçin administratorlyk hukuklary bolan AD DC hasabynyň adyny ulanyň.

$ sudo realm discover -v DOMAIN.TLD
$ sudo realm list
$ sudo realm join TECMINT.LAN -U ad_admin_user -v
$ sudo net ads join -k

13. Domen baglanyşygy amala aşyrylandan soň, ähli domen hasaplarynyň enjamda tassyklanmagyna rugsat berilýändigine göz ýetirmek üçin aşakdaky buýrugy işlediň.

$ sudo realm permit --all

Netijede, aşakdaky mysallarda görkezilişi ýaly domen ulanyjy hasabyna ýa-da realm buýrugyny ulanýan topara girmäge rugsat berip ýa-da ret edip bilersiňiz.

$ sudo realm deny -a
$ realm permit --groups ‘domain.tld\Linux Admins’
$ realm permit [email 
$ realm permit DOMAIN\\User2

14. RSAT gurallary gurlan Windows enjamyndan AD UC-ny açyp, Kompýuterleriň konteýnerine geçip, enjamyňyzyň ady bilen obýekt hasaby döredilendigini ýa-da ýokdugyny barlap bilersiňiz.

4-nji ädim: AD hasaplarynyň hakykylygyny sazlaň

15. Ubuntu enjamynda domen hasaplary bilen tassyklamak üçin kök aýratynlyklary bilen pam-auth-update buýrugyny işletmeli we ilkinji girişde her bir domen hasaby üçin öý kataloglaryny awtomatiki usulda döretmek mümkinçiligini goşmak bilen pAM-auth-update buýrugyny işletmeli.

[Space] düwmesini basyp, ähli ýazgylary barlaň we konfigurasiýany ulanmak üçin ok basyň.

$ sudo pam-auth-update

16. Ulgamlarda tassyklanan domen ulanyjylary üçin awtomatiki usulda öý döretmek üçin /etc/pam.d/common-account faýlyny we aşakdaky setiri el bilen redaktirläň.

session    required    pam_mkhomedir.so    skel=/etc/skel/    umask=0022

17. “Active Directory” ulanyjylary parolyny Linux-daky buýruk setirinden üýtgedip bilmese, /etc/pam.d/common-password faýlyny açyň we aşakdaky bölekdäki ýaly görünmek üçin parol setirinden use_authtok beýanyny aýyryň.

password       [success=1 default=ignore]      pam_winbind.so try_first_pass

18. Netijede, Realmd we SSSD hyzmatyny aşakdaky buýruklary çykaryp üýtgetmeleri ulanmaga başlaň we işlediň:

$ sudo systemctl restart realmd sssd
$ sudo systemctl enable realmd sssd

19. “Ubuntu” maşynynyň “winbind” gurnama toplumyna üstünlikli birikdirilendigini ýa-da aşakda görkezilişi ýaly domen hasaplaryny we toparlaryny sanawlamak üçin wbinfo buýrugyny işletmek üçin.

$ sudo apt-get install winbind
$ wbinfo -u
$ wbinfo -g

20. Şeýle hem, belli bir domen ulanyjysyna ýa-da toparyna garşy getent buýrugy berip, Winbind nsswitch modulyny barlaň.

$ sudo getent passwd your_domain_user
$ sudo getent group ‘domain admins’

21. Şeýle hem aşakdaky buýrukda görkezilişi ýaly AD hasaby barada maglumat almak üçin Linux id buýrugyny ulanyp bilersiňiz.

$ id tecmint_user

22. Ubuntu hostynda Samba4 AD hasaby bilen tassyklamak üçin su - buýrugyndan soň domen ulanyjy adynyň parametrini ulanyň. AD hasaby barada goşmaça maglumat almak üçin id buýrugyny işlediň.

$ su - your_ad_user

Parolyňyzy üýtgetmek isleseňiz, domen ulanyjynyň häzirki iş bukjasyny we passwd buýrugyny görmek üçin pwd buýrugyny ulanyň.

23. Ubuntu enjamyňyzda kök aýratynlyklary bolan domen hasaby ulanmak üçin aşakdaky buýrugy bermek bilen sudo ulgam toparyna AD ulanyjy adyny goşmaly:

$ sudo usermod -aG sudo [email 

Domen hasaby bilen Ubuntu-a giriň we kök aýratynlyklaryny barlamak üçin apt update buýrugyny işledip ulgamyňyzy täzeläň.

24. Domen topary üçin kök artykmaçlyklaryny goşmak üçin visudo buýrugyny ulanyp, ahyrky redaktirleme/etc/sudoers faýly açyň we görkezilişi ýaly aşakdaky setiri goşuň.

%domain\ [email        		 ALL=(ALL:ALL) ALL

25 üýtgeýär.

greeter-show-manual-login=true
greeter-hide-users=true

Ubuntu Desktop-a ýa-da domain_username ýa-da_domain_user [e-poçta bilen goralan] _domain.tld sintaksisini ulanyp, domen hasaby bilen giriň.

26. Samba AD hasaplary üçin gysga at formatyny ulanmak üçin /etc/sssd/sssd.conf faýly redaktirläň, aşakda görkezilişi ýaly [sssd] blokyna aşakdaky setiri goşuň.

full_name_format = %1$s

üýtgetmeleri ulanmak üçin SSSD daemonyny täzeden açyň.

$ sudo systemctl restart sssd

Baş sözüniň domen adynyň kärdeşini goşmazdan AD ulanyjysynyň gysga adyna üýtgejekdigini görersiňiz.

27. Sssd.conf-da sanamak=hakyky argument sebäpli girip bilmeseňiz, aşakdaky buýrugy bermek bilen sssd keş keşli maglumat bazasyny arassalamaly:

$ rm /var/lib/sss/db/cache_tecmint.lan.ldb

Bu hemmesi! Bu gollanma esasan Samba4 Active Directory bilen integrasiýa gönükdirilen bolsa-da, Ubuntu-ny Realmd we SSSD hyzmatlary bilen Microsoft Windows Server Active Directory-e birikdirmek üçin şol ädimler ulanylyp bilner.