问:Linux 客户端是否可以加入 Samba4 域服务器吗?
答:是的,可以。
我们可以使用第三方客户端工具来执行相同的操作,例如:Power Breaker 集成服务,例如:PBIS 之前称为 Likely,现在已由 BeyondTrust 购买。
对于本文,我假设我们已经拥有一个可以工作的 Samba 4 域控制器.
登录到客户端 Linux 机器并从以下链接下载 pbis 包
下载适用于 linux 或者 Mac 的 BeyondTrust PBIS 包
本教程将在 RedHatLinux上完成。
下载包后,使文件可执行,如下所示
# chmod +x pbis-open-8.0.0.2014.linux.x86_64.rpm.sh
安装包
# ./pbis-open-8.0.0.2014.linux.x86_64.rpm.sh Creating directory pbis-open-8.0.0.2014.linux.x86_64.rpm Verifying archive integrity... All good. Uncompressing pbis-open-8.0.0.2014.linux.x86_64.rpm............ Would you like to install package for legacy links? (i.e. /opt/likewise/bin/lw-find-user-by-name -> /opt/pbis/bin/find-user-by-name) (yes/no) yes Would you like to install now? (yes/no) yes Installing packages and old packages will be removed Preparing... ########################################### [100%] 1:pbis-open-upgrade ########################################### [100%] Preparing... ########################################### [100%] 1:pbis-open ########################################### [100%] Setting up SELinux Policy Module Importing registry... Preparing... ########################################### [100%] 1:pbis-open-gui ########################################### [100%] Preparing... ########################################### [100%] 1:pbis-open-legacy ########################################### [100%]
已为 PAM 和 NSS 安装了新的库和配置。
请重新启动,以便所有进程都选择新版本。
以 root 身份运行 domainjoin-gui 或者 domainjoin-cli 以加入具有 Active Directory 凭据的域。
例如:
domainjoin-cli join MYonitroad.com MyJoinAccount
安装步骤已经成功完成,
现在可以将linux 客户端加入域服务器了:
# domainjoin-cli join TEST.COM administrator Joining to AD Domain: TEST.COM With Computer DNS Name: server2.test.com administrator@TEST.COM's password: [administrator password of Samba4 Domain server] Warning: System restart required Your system has been configured to authenticate to Active Directory for the first time. It is recommended that you restart your system to ensure that all applications recognize the new settings. SUCCESS
成功加入机器后,重新启动客户端机器以使更改生效
重启后验证域服务器下的所有用户是否都反映在客户端上
说明:由于我们使用的是 pbis,因此列出用户的命令会有所不同,因此我们可以获取 /opt/likewise/bin 或者 /opt/pbis/bin 下所有命令的列表
使用以下命令和语法 domain\username
# /opt/pbis/bin/find-user-by-name test.com\administrator User info (Level-0): ==================== Name: administrator SID: S-1-5-21-2928479140-2576742891-3975546437-500 Uid: 1709179380 Gid: 1709179393 Gecos: Shell: /bin/sh Home dir: /home/administrator Logon restriction: NO
因此,正如我们所看到的,我的域服务器中的管理员用户在我的客户端上是可见的。
现在我的域服务器上还有一个域用户“jack”。
在客户端上尝试使用 jack 登录
login as: test.com\jack Using keyboard-interactive authentication. Password: [password for jack] Last login: Wed Jan 7 11:16:29 2014 from 192.168.1.2 sh-4.1$pwd /home/local/TEST/jack
限制已经成功登录但进入“sh”shell,我的home位置也显示不同。
好吧,这些是必须手动更改的几件事。
按照以下步骤执行相同的操作
在客户端上
我们可以使用以下命令查看所有配置
# /opt/pbis/bin/config --dump
注意要更改的参数。
避免每次为用户登录时都使用域名(以防客户端只添加了一个域)
# /opt/pbis/bin/config AssumeDefaultDomain true
更改域用户的默认主目录位置
# /opt/pbis/bin/config HomeDirTemplate "%H/%U" # /opt/pbis/bin/config Local_HomeDirTemplate "%H/%U"
更改默认登录 shell
# /opt/pbis/bin/config LoginShellTemplate /bin/bash # /opt/pbis/bin/config Local_LoginShellTemplate /bin/bash
接下来尝试查看域用户
# /opt/pbis/bin/find-user-by-name jack User info (Level-0): ==================== Name: jack SID: S-1-5-21-2928479140-2576742891-3975546437-1107 Uid: 1709179987 Gid: 1709179393 Gecos: jack Shell: /bin/bash Home dir: /home/jack Logon restriction: NO
现在我们可以尝试使用域用户登录。