使用PBIS将Linux加入域
很多企业已经部署的微软的活动目录,为了方便管理,可以把Linux加入域。网上流传了很多把Linux加入域的方法,感觉比较复杂,并且似乎并没有真正的加入域。只是完成了创建计算账户。使用我提到的方法可以让我这种Linux外行也能很快的将Linux加入Windows活动目录,并且使用域账户登录系统。并且可以给不同的用户或组添加sudo权限,并且不必告知他们root的密码。
PowerBroker Identity Services 的Open Edition可以在这里下载到
我这里以CentOS为例。
首先把下载到安装文件放到Linux上,然后添加运行的权限。我习惯放到/usr/local目录下。
chmod a+x pbis-open-8.2.1.2979.linux.x86_64.rpm.sh
然后运行安装。安装过程中输入几次Y就可以了。
./pbis-open-8.2.1.2979.linux.x86_64.rpm.sh
接下去使用命令将计算机加入域。过程中会提示输入domainaccount的密码。
/opt/pbis/bin/domainjoin-cli join contoso.com domainaccount
更改域账户默认的shell
/opt/pbis/bin/config LoginShellTemplate /bin/bash
设置用户域的前缀
/opt/pbis/bin/config UserDomainPrefix contoso.com
设置默认登录域
/opt/pbis/bin/config AssumeDefaultDomain true
设置可以登录这台Linux的用户。用户需要在这个AD组中。这里需要用2个\来分隔域名和组名。
/opt/pbis/bin/config Requiremembershipof "contoso\\linuxusers"
查看配置
/opt/pbis/bin/config --dump 里面有很多可以配置的地方。
更新DNS,自动注册A记录
/opt/pbis/bin/update-dns
接下来就需要更改sudo的设置了,以配置哪些用户可以使用sudo,来执行需要权限的操作。
Sudo中的以下符号需要用\来转义:@ ! = : , ( ) \
visudo
其中%表示这是一个组。NOPASSWD表示在sudo时不用再次输入账户密码。加入用户时域名似乎需要大写(这一点我试了很多次)。
如果用户中间有点,比如user.name可以直接写。如果组名中间有空格可以用^来代替。但是也有些文章说需要用 \空格来转义;\\或者\^都有,可能是和不同的Linux有关吧。
重新启动,就可以用域账户登录了。
登录时可以是contoso\username或者直接username。因为前面已经指定了默认域名。