共计 2697 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | 在本文中,我们将在 Ubuntu 20.04 中安装并配置 PowerBroker Identity Services(PBIS),以便与 Windows 的域控制器连接在一起。 |
我们需要从 Github 中下载 PBIS 工具,可以使用下面的命令下载当前版本适用 Ubuntu 的 PBIS 工具。
github 下载连接为:https://github.com/BeyondTrust/pbis-open/releases/
# 该链接是 64 位版本的
bob@bob-ubu:~$ wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.deb.sh
# 该连接是 32 位版本的
bob@bob-ubu:~$ wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86.deb.sh
下面步骤开始安装 PBIS,安装很简单,只需要将下载的文件添加执行权限,并执行即可:
bob@bob-ubu:~$ chmod +x pbis-open-9.1.0.551.linux.x86_64.deb.sh
bob@bob-ubu:~$ sudo ./pbis-open-9.1.0.551.linux.x86_64.deb.sh
PBIS 已经安装成功,下面进入 /opt/pbis/bin
目录,来执行 domainjoin-cli
命令让系统加入域吧。
domainjoin-cli join
的用法如下:
$ sudo domainjoin-cli join DomainName AdminUser
下面将系统加入到 pangzb.com 域中:
bob@bob-ubu:/opt/pbis/bin$ cd /opt/pbis/bin/
bob@bob-ubu:/opt/pbis/bin$ sudo domainjoin-cli join pangzb.com administrator
- DomainName: 是你的域环境的域名
- AdminUser: 是域管理员用户
出现提示时,请提供 Active Directory 管理员的密码。成功验证后,PBIS 工具会将 Ubuntu 计算机添加为域的成员。该命令还会在 /etc/hosts 文件中添加条目。
下面图片中,实在 AD 域控制器中看到 Ubuntu 系统已成为域的成员了。
通过 domainjoin-cli query
来查看是否以加入域成功:
bob@bob-ubu:/opt/pbis/bin$ sudo domainjoin-cli query
Name = bob-ubu
Domain = PANGZB.COM
Distinguished Name = CN=BOB-UBU,CN=Computers,DC=pangzb,DC=com
bob@bob-ubu:/opt/pbis/bin$
可以看到主机名、域名、和 DN 名称。
如果该计算机想要退出域,则需要使用 leave
选项了:
bob@bob-ubu:/opt/pbis/bin$ sudo domainjoin-cli leave
加入域之后重要的事情是限制域用户使用 sudo 命令提权。这可以通过使用 visudo
命令添加 %domain^admins ALL=(ALL) ALL
来完成,这样只允许域管理员用户才能使用 sudo 命令:
bob@bob-ubu:~$ sudo visudo
# 打开之后,在配置文件中添加如下行
%domain^admins ALL=(ALL) NOPASSWD: ALL
使用 PBIS 的有点是,它允许以多种方式自定义登录、域名前缀、登录 shell、文件夹名称等。通过下面功能调试,可以使域用户更好的访问 ubuntu 系统。
默认的 shell 为 sh,看起来太单调,在这里可以设置成 bash shell,使用 LoginShellTemplate
参数。
bob@bob-ubu:~$ sudo /opt/pbis/bin/config LoginShellTemplate /bin/bash
更改为 bash shell 之后,用与用户登录的效果:
默认域用户登录之后目录结构为 /home/local/Domain/User
,如果嫌目录太长,可以修改,使用HomeDirTemplate
参数:
bob@bob-ubu:~$ sudo /opt/pbis/bin/config HomeDirTemplate %H/%U@%D
其中 %H
参数表示 home 目录,%D
表示域名,%U
表示域用户名,@
表示用来分隔的符号。
可以将域用户和域名之间的 @
符号转义,就可以登录了。
PANGZB\user01@bob-ubu:~$ ssh user01\@pangzb.com@localhost
不需要设置其他,直接输入域用户:
然后输入密码:
即可进入系统啦:
PBIS 的守护进程是 lwsmd
,该守护进程位于/opt/pbis/sbin/lwsmd
。这个守护进程包括lsass
服务,它处理身份验证、授权、缓存和 ldmap 查找。因为身份验证服务只在启动时注册信任,所以在修改信任关系后,应该使用
bob@bob-ubu:~$ sudo /opt/pbis/bin/lwsm restart lsass
使用下面的命令退出域:
bob@bob-ubu:~$ sudo /opt/pbis/bin/domainjoin-cli leave
Leaving AD Domain: PANGZB.COM
SUCCESS
然后使用自带的脚本 uninstall.sh
来卸载干净 pbis:
bob@bob-ubu:~$ sudo /opt/pbis/bin/uninstall.sh purge
在域控制器中,打开 powershell,输入如下命令:
# 列出至少 1 星期没有启动的机器,并禁用
dsquery computer -inactive | dsmod computer -disabled yes
# 列出已禁用的主机,并删除
dsquery computer -disabled | dsrm -noprompt
本文介绍了在 Ubuntu 中安装并配置 PowerBroker Identity Services(PBIS),以便与 Windows 的域控制器连接在一起。