Ubuntu 21.04
Sponsored Link

Join in Active Directory Domain2021/04/29

 
Join in Windows Active Directory Domain with Realmd.
This tutorial needs Windows Active Directory Domain Service in your LAN.
This example shows to configure on the environment below.
Domain Server : Windows Server 2019
Domain Name : srv.world
Hostname : fd3s.srv.world
NetBIOS Name : FD3S01
Realm : SRV.WORLD
[1] Install some required packages.
root@dlp:~#
apt -y install realmd sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin oddjob oddjob-mkhomedir packagekit
[2] Join in Windows Active Directory Domain.
# change DNS settings to refer to AD

root@dlp:~#
vi /etc/netplan/01-netcfg.yaml
    nameservers:
        addresses: [10.0.0.100]

root@dlp:~#
netplan apply
# discover Active Directory domain

root@dlp:~#
realm discover SRV.WORLD

srv.world
  type: kerberos
  realm-name: SRV.WORLD
  domain-name: srv.world
  configured: no
  server-software: active-directory
  client-software: sssd
  required-package: sssd-tools
  required-package: sssd
  required-package: libnss-sss
  required-package: libpam-sss
  required-package: adcli
  required-package: samba-common-bin

# join in Active Directory domain

root@dlp:~#
realm join SRV.WORLD

Password for Administrator:  
# AD Administrator password
# verify it's possible to get an AD user info or not

root@dlp:~#
id Serverworld@srv.world

uid=691201105(serverworld@srv.world) gid=691200513(domain users@srv.world) groups=691200513(domain users@srv.world),691200572(denied rodc password replication group@srv.world),691200512(domain admins@srv.world)

# change setting if need

root@dlp:~#
vi /etc/pam.d/common-session
# add to the end (create Home Dir automatically when initial login)

session optional        pam_mkhomedir.so skel=/etc/skel umask=077

# verify it's possible to login as an AD user or not

root@dlp:~#
exit
logout

Ubuntu 21.04 dlp.srv.world ttyS0

dlp login: serverworld@srv.world
Password:
Welcome to Ubuntu 21.04 (GNU/Linux 5.11.0-16-generic x86_64)

.....
.....

Creating directory '/home/serverworld@srv.world'.
serverworld@srv.world@dlp:~$     # logined
[3] If you'd like to omit domain name for AD user, configure like follows.
root@dlp:~#
vi /etc/sssd/sssd.conf
# line 15 : change

use_fully_qualified_names =
False
root@dlp:~#
systemctl restart sssd

root@dlp:~#
id Administrator

uid=199600500(administrator) gid=199600513(domain users) groups=199600513(domain users),199600572(denied rodc password replication group),199600519(enterprise admins),199600518(schema admins),199600520(group policy creator owners),199600512(domain admins)
[4]
AD users UID/GID are asigned randomly, but if you'd like to asign fixed UID/GID, configure like follows.
Add UNIX attributes to AD accounts first, refer to here.
This example is based on the environment AD accounts have [uidNumber/gidNumber] attributes.
Next, change SSSD settings.
root@dlp:~#
vi /etc/sssd/sssd.conf
# line 16 : change

ldap_id_mapping =
False
# add to the end

ldap_user_uid_number = uidNumber
ldap_user_gid_number = gidNumber
# clear cache and restart sssd

root@dlp:~#
rm -f /var/lib/sss/db/*

root@dlp:~#
systemctl restart sssd
root@dlp:~#
id serverworld

uid=5000(serverworld) gid=5000 groups=5000
Matched Content