Mesin Linux dalam domain Windows AD menggunakan sssd dan krb5

Ada kebutuhan untuk memasukkan mesin Ubuntu ke domain Windows. Untuk tujuan ini, Samba dan Winbind biasanya digunakan. Tetapi alternatif dimungkinkan dengan sssd, panduan singkat untuk itu di bawah ini.

Sebagai contoh, kami akan menggunakan:

Domain = contoso.com
Pengontrol domain = dc.contoso.com

Luncurkan terminal Ubuntu:

1. Beralih ke root

sudo -i 

2. Instal paket yang diperlukan

 apt install sssd heimdal-clients msktutil 

3. Kami mengedit /etc/krb5.conf, tab digunakan sebagai indentasi

 [libdefaults] default_realm = CONTOSO.COM [realms] CONTOSO.COM = { kdc = DC admin_server = dc.contoso.com default_domain = contoso.com } [login] krb4_convert = true krb4_get_tickets = false [domain_realm] .contoso.com = CONTOSO.COM contoso.com = CONTOSO.COM 

4. Edit file / etc / hosts, tentukan FQDN untuk host ini:

 127.0.0.1 localhost 127.0.1.1 <hostname>.contoso.com <hostname> 

5. Kami mencoba untuk mendapatkan tiket Kerberos atas nama administrator domain:

 root@ubuntu:~# kinit YourDomainAdmin YourDomainAdmin@CONTOSO.COM's Password: 

Kami memeriksa:

 root@ubuntu:~# klist Credentials cache: FILE:/tmp/krb5cc_0 Principal: YourDomainAdmin@CONTOSO.COM Issued Expires Principal Dec 1 15:08:27 2018 Dec 2 01:08:22 2018 krbtgt/CONTOSO.COM@CONTOSO.COM 

Jika tiket berhasil diterima, sekarang prinsipal Kerberos dapat dihasilkan untuk host ini, register penting:

 msktutil -c -b 'CN=YourComputersOU' -s HOST/HOSTNAME.contoso.com -k /etc/sssd/HOSTNAME.keytab --computer-name HOSTNAME --upn HOSTNAME$ --server dc.contoso.com β€”user-creds-only msktutil -c -b 'CN=YourComputersOU' -s HOST/HOSTNAME -k /etc/sssd/HOSTNAME.keytab --computer-name HOSTNAME --upn HOSTNAME$ --server dc.contoso.com --user-creds-only 

Sekarang tuan rumah kita akan muncul dalam daftar komputer di direktori. Jika demikian, hapus tiket Kerberos yang diterima:

 kdestroy 

6. Buat file /etc/sssd/sssd.conf dengan konten berikut:

 [sssd] services = nss, pam config_file_version = 2 domains = contoso.com [nss] entry_negative_timeout = 0 debug_level = 3 [pam] debug_level = 3 [domain/contoso.com] debug_level = 3 ad_domain = contoso.com ad_server = dc.contoso.com enumerate = false id_provider = ad auth_provider = ad chpass_provider = ad access_provider = simple simple_allow_groups = users #   ,  .   β€”       . ldap_schema = ad ldap_id_mapping = true fallback_homedir = /home/%u default_shell = /bin/bash ldap_sasl_mech = gssapi ldap_sasl_authid = <HOSTNAME>$ ldap_krb5_init_creds = true krb5_keytab = /etc/sssd/<HOSTNAME>.keytab 

Deskripsi parameter file konfigurasi sssd dapat ditemukan di sini

Tetapkan izin untuk file sssd.conf:

 chmod 600 /etc/sssd/sssd.conf 

Mulai ulang layanan SSSD

 service sssd restart 

7. Mengedit pengaturan PAM

Solusi buruk:

edit file /etc/pam.d/common-session, setelah baris

 session required pam_unix.so 

tambahkan baris

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

Solusi yang baik:

menimpa parameter melalui pengaturan sistem PAM, panggilan

 pam-auth-update 

dan periksa item sss auth dan makehomdir . Ini akan secara otomatis ditambahkan
baris di atas dalam sesi umum dan tidak akan ditimpa saat memperbarui sistem.

Sekarang kita bisa login di mesin ke pengguna domain yang diizinkan masuk.

PS: Anda dapat memberikan hak untuk menggunakan grup domain sudo. Menggunakan visudo, edit file / etc / sudoers, atau lebih baik, seperti yang disarankan maxzhurkin dan iluvar , buat file baru di /etc/sudoers.d/ dan edit

 visudo -f /etc/sudoers.d/_ 

tambahkan grup yang diperlukan - misalnya, Admin Domain (jika ada spasi dalam nama grup - mereka harus diloloskan):

 %Domain\ Admins ALL=(ALL) ALL 


PSS: Terima kasih untuk info di realmd. Sangat mudah - jika pengaturan spesifik tidak diperlukan, maka memasukkan mesin ke domain membutuhkan, pada kenyataannya, tiga perintah:
1. Instal paket yang diperlukan:
 sudo apt install realmd samba-common-bin samba-libs sssd-tools krb5-user adcli 

2. Periksa apakah domain kami terlihat di jaringan:
 realm discover contoso.com 

3. Masukkan mesin ke domain:
 sudo realm --verbose join contoso.com -U YourDomainAdmin --install=/ 

4. Mengedit pengaturan PAM
 sudo pam-auth-update 

Tambahan tambahan dari opsi ini adalah otorisasi ujung-ke-ujung pada sumber daya file domain.

Agar tidak menentukan domain selain login, Anda dapat menambahkan akhiran default. Di file /etc/sssd/sssd.conf, di blok [sssd], tambahkan baris:
 default_domain_suffix = contoso.com 

Source: https://habr.com/ru/post/id437546/


All Articles