导读 本文展示如何使用 realmd ,sssd将 Centos7 / 8 加入到 Active Directory 域。 本文还进一步为通过 AD 登录的域用户配置 sudo 规则。
设置主机名和DNS

下面命令用来设置正确的主机名和dns服务器地址:

[root@Centos8-1 ~]# hostnamectl set-hostname Centos8-1.pangzb.com
[root@Centos8-1 ~]# hostnamectl


配置可以和AD域控制器通信的DNS地址:

[root@Centos8-1 ~]# nmcli con modi enp1s0 ipv4.method manual ipv4.addresses 10.111.127.125/18 ipv4.gateway 10.111.127.254 ipv4.dns 10.111.87.200  autoconnect yes

查看当前的dns服务器地址:

[root@Centos8-1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search pangzb.com
nameserver 10.111.87.200

安装需要用到的软件包

如果想要加入AD域,在Linux中需要安装一些软件包才行:

[root@Centos8-1 ~]# yum -y install  sssd oddjob oddjob-mkhomedir adcli samba-common-tools

发现域

realm discover 命令会显示完整的域配置和需要安装的软件包列表,只有安装了系统才能在域中注册。

[root@Centos8-1 ~]# realm discover pangzb.com
pangzb.com
  type: kerberos
  realm-name: PANGZB.COM
  domain-name: pangzb.com
  configured: no
  server-software: active-directory
  client-software: sssd
  required-package: oddjob
  required-package: oddjob-mkhomedir
  required-package: sssd
  required-package: adcli
  required-package: samba-common-tools

可以看到图中required-package列出的软件包就是刚刚我们安装的。

将操作系统加入域中

使用realm join命令将系统加入域中。realm join --help可以看到相关帮助,里面有许多选项可供使用,下面使用-U选项来指定域控管理员账号,然后输入密码:

[root@Centos8-1 ~]# realm join -U administrator pangzb.com
Password for administrator:

查看是否成功加入域:

[root@Centos8-1 ~]# realm list
pangzb.com
  type: kerberos
  realm-name: PANGZB.COM
  domain-name: pangzb.com
  configured: kerberos-member
  server-software: active-directory
  client-software: sssd
  required-package: oddjob
  required-package: oddjob-mkhomedir
  required-package: sssd
  required-package: adcli
  required-package: samba-common-tools
  login-formats: %U@pangzb.com
  login-policy: allow-realm-logins

可以看到加入域之后的相关信息了。

在域控里面也可以看到该计算机了。

登录域用户来测试一下吧

下面通过切换至域用户测试一下,可以看到当域用户登录之后自动创建了home目录。

[root@Centos8-1 ~]# su - user01@pangzb.com
Creating home directory for user01@pangzb.com.

设置访问控制列表

可以通过realm工具自带的访问控制列表来禁止或允许用户和组的登录访问。

例如:拒绝user02@pangzb.com登录本机:

[root@Centos8-1 ~]# realm deny user02@pangzb.com
realm: Specifying deny without --all is deprecated. Use realm permit --withdraw

登录时提示permission denied

允许用户组登录就是sudo realm permit -g 'Domain Users'

允许用户登录就是sudo realm permit Adinistrator

允许或拒绝所有用户登录:sudo realm permit --all / sudo realm deny --all

配置用户sudo访问

加入域之后重要的事情是限制域用户使用sudo命令提权。 这可以通过使用visudo命令添加%domain^admins ALL=(ALL) ALL来完成,这样只允许域管理员用户才能使用sudo命令:

[root@Centos8-1 ~]# visudo
# 打开之后,在配置文件中添加如下行
%domain^admins ALL=(ALL) NOPASSWD: ALL

总结

本文展示如何使用 realmd ,sssd将 Ubuntu 20.04加入到 Active Directory 域。 本文还进一步为通过 AD 登录的域用户配置 sudo 规则。

本文原创地址:https://www.linuxprobe.com/centos8-reamld-domain.html编辑:逄增宝,审核员:逄增宝