Samba 系列（九）：将 CentOS 7 桌面系统加入到 Samba4 AD 域环境中
这篇文章讲述了如何使用 Authconfig-gtk 工具将 CentOS 7 桌面系统加入到 Samba4 AD 域环境中，并使用域帐号登录到 CentOS 系统。
samba
118.122.120.11
没有必要编辑网络适配器的配置文件，7 的话完全可以用 nmcli 这种 help 的命令行工具，当然也无需重启服务。域名 .lan 估计也有问题，因为 SAMBA 强烈建议选用在互联网广泛使用的顶级域名，否则在实际使用会遇到一系列问题，比如拿不到针对该域名的数字证书。我看 .lan 并不是被广泛使用的域名。
来自四川成都的 Chrome 57.0|GNU/Linux 用户
2017-05-17T16:45:24.000
122.192.13.116
加域只需要安装samba-winbind这个包就可以了，其他的多余。
来自江苏的 UC Browser 11.3|Android 6.0 用户
2017-05-18T07:40:01.000
111.201.14.82
.lan 并非有效的顶级域吧。
linux [Chrome 58.0|Mac 10.11]
2017-05-18T08:07:48.000
119.145.5.245
大佬，我按您的方法还是加入不进去。提示：Failed to join domain: failed to connect to AD: No logon servers are currently available to service the logon request.
来自广东深圳的 Internet Explorer 11.0|Windows 10 用户
2020-05-21T18:37:44.000
这篇文章讲述了如何使用 Authconfig-gtk 工具将 CentOS 7 桌面系统加入到 Samba4 AD 域环境中，并使用域帐号登录到 CentOS 系统。
这篇文章讲述了如何使用 Authconfig-gtk 工具将 CentOS 7 桌面系统加入到 Samba4 AD 域环境中，并使用域帐号登录到 CentOS 系统。


![](/data/attachment/album/201705/17/145148z2z2sccj8cp7sj68.jpg)


### 要求


1、[在 Ubuntu 系统中使用 Samba4 创建活动目录架构](/article-8065-1.html)


2、[CentOS 7.3 安装指南](/article-8048-1.html)


### 第一步：在 CentOS 系统中配置 Samba4 AD DC


1、在将 CentOS 7 加入到 Samba4 域环境之前，你得先配置 CentOS 系统的网络环境，确保在 CentOS 系统中通过 DNS 可以解析到域名。


打开网络设置，关闭有线网卡。打开下方的设置按钮，手动编辑网络设置，指定 DNS 的 IP 地址为 Samba4 AD DC 服务器的 IP 地址。


设置完成之后，应用配置，并打开有线网卡。


![](/data/attachment/album/201705/17/151749pea8111tatjfaab0.jpg)


*网络设置*


![](/data/attachment/album/201705/17/151847kzmmfcsmcfe1cycc.jpg)


*配置网络*


2、下一步，打开网络配置文件，在文件末尾添加一行域名信息。这样能确保当你仅使用主机名来查询域中的 DNS 记录时， DNS 解析器会自动把域名添加进来。



```
$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eno16777736

```

添加下面一行：



```
SEARCH="your_domain_name"

```

*![](/data/attachment/album/201705/17/151948qgykbe7emeeeejb9.jpg)*


*网卡配置*


3、最后，重启网卡服务以应用更改，并验证解析器的配置文件是否正确配置。我们通过使用 ping 命令加上 DC 服务器的主机名或域名以验证 DNS 解析能否正常运行。



```
$ sudo systemctl restart network
$ cat /etc/resolv.conf
$ ping -c1 adc1
$ ping -c1 adc2
$ ping tecmint.lan

```

![](/data/attachment/album/201705/17/153310yn797h2h71029akh.jpg)


*验证网络配置是否正常*


4、同时，使用下面的命令来配置你的主机名，然后重启计算机以应用更改：



```
$ sudo hostnamectl set-hostname your_hostname
$ sudo init 6

```

使用下面的命令来验证主机名是否正确配置：



```
$ cat /etc/hostname
$ hostname

```

5、最后一步配置是使用下面的命令来保证系统时间跟 Samba4 AD DC 服务器的时间同步：



```
$ sudo yum install ntpdate
$ sudo ntpdate -ud domain.tld

```

### 第二步：安装要加入 Samba4 AD DC 所必需的软件包


6、为了将 CentOS 7 加入到活动目录域中，你需要使用下面的命令来安装相关的软件包：



```
$ sudo yum install samba samba samba-winbind krb5-workstation

```

7、最后，安装 CentOS 软件库中提供的图形化界面软件包： Authconfig-gtk 。该软件用于将 CentOS 系统集成到域环境中。



```
$ sudo yum install authconfig-gtk

```

### 第三步：将 CentOS 7 桌面系统集成到 Samba4 AD DC 域环境中


8、将 CentOS 加入到域的过程非常简单。使用有 root 权限的帐号在命令行下打开 Authconfig-gtk 程序，然后按下图所示修改相关配置即可：



```
$ sudo authconfig-gtk

```

打开身份或认证配置页面：


* 用户帐号数据库 ： 选择 Winbind
* Winbind 域 ： 你的域名
* 安全模式 ： ADS
* Winbind ADS 域 ： 你的域名.TLD
* 域控制器 ： 域控服务器的全域名
* 默认Shell ： /bin/bash
* 勾选允许离线登录


![](/data/attachment/album/201705/17/153602abqcq3zcbca7gb8s.jpg)


*域认证配置*


打开高级选项配置页面：


* 本地认证选项 ： 支持指纹识别
* 其它认证选项 ： 用户首次登录创建家目录


![](/data/attachment/album/201705/17/154238js2imzui2bg9k0zi.jpg)


*高级认证配置*


9、修改完上面的配置之后，返回到身份或认证配置页面，点击加入域按钮，在弹出的提示框点保存即可。


![](/data/attachment/album/201705/17/155141gyif2gezyoee9nie.jpg)


*身份和认证*


![](/data/attachment/album/201705/17/155212i33k3v47r3okuhuk.jpg)


*保存认证配置*


10、保存配置之后，系统将会提示你提供域管理员信息以将 CentOS 系统加入到域中。输入域管理员帐号及密码后点击 OK 按钮，加入域完成。


![](/data/attachment/album/201705/17/155243dpw45pt5w2zor2r2.jpg)


*加入 Winbind 域环境*


11、加入域后，点击应用按钮以让配置生效，选择所有的 windows 并重启机器。


![](/data/attachment/album/201705/17/155411mwicfmkxuuu9bmeo.jpg)


*应用认证配置*


12、要验证 CentOS 是否已成功加入到 Samba4 AD DC 中，你可以在安装了 [RSAT 工具](/article-8097-1.html) 的 windows 机器上，打开 AD 用户和计算机工具，点击域中的计算机。


你将会在右侧看到 CentOS 主机信息。


![](/data/attachment/album/201705/17/155526hpm72apmm1zcm1rm.jpg)


*活动目录用户和计算机*


### 第四步：使用 Samba4 AD DC 帐号登录 CentOS 桌面系统


13、选择使用其它账户，然后输入域帐号和密码进行登录，如下图所示：



```
Domain\domain_account
或
Domain_user@domain.tld

```

*![](/data/attachment/album/201705/17/155649u8yikss7f11r7c6f.jpg)*


*使用其它账户*


*![](/data/attachment/album/201705/17/155725qqrshhhho6c9hhee.jpg)*


*输入域用户名*


14、在 CentOS 系统的命令行中，你也可以使用下面的任一方式来切换到域帐号进行登录：



```
$ su - domain\domain_user
$ su - domain_user@domain.tld

```

*![](/data/attachment/album/201705/17/155752f3wkw7k8f87kr4k9.jpg)*


*使用域帐号登录*


![](/data/attachment/album/201705/17/160019veb3gwqm39b5ququ.jpg)


*使用域帐号邮箱登录*


15、要为域用户或组添加 root 权限，在命令行下使用 root 权限帐号打开 `sudoers` 配置文件，添加下面一行内容：



```
YOUR_DOMAIN\\domain_username             ALL=(ALL:ALL) ALL      #For domain users
%YOUR_DOMAIN\\your_domain\  group            ALL=(ALL:ALL) ALL  #For domain groups

```

*![](/data/attachment/album/201705/17/160103lvbzs440fbybxvy2.jpg)*


*指定用户和用户组权限*


16、使用下面的命令来查看域控制器信息：



```
$ sudo net ads info

```

*![](/data/attachment/album/201705/17/160132dcu17qvmmi7xkmtd.jpg)*


*查看域控制器信息*


17、你可以在安装了 Winbind 客户端的机器上使用下面的命令来验证 CentOS 加入到 Samba4 AD DC 后的信任关系是否正常：



```
$ sudo yum install samba-winbind-clients

```

然后，执行下面的一些命令来查看 Samba4 AD DC 的相关信息：



```
$ wbinfo -p ### Ping 域名
$ wbinfo -t ### 检查信任关系
$ wbinfo -u ### 列出域用户帐号
$ wbinfo -g ### 列出域用户组
$ wbinfo -n domain_account ### 查看域帐号的 SID 信息

```

*![](/data/attachment/album/201705/17/160159s63la9k0ljz69ll2.jpg)*


*查看 Samba4 AD DC 信息*


18、如果你想让 CentOS 系统退出域环境，使用具有管理员权限的帐号执行下面的命令，后面加上域名及域管理员帐号，如下图所示：



```
$ sudo net ads leave your_domain -U domain_admin_username

```

*![](/data/attachment/album/201705/17/160232kv0bljvl81v5khzk.jpg)*


*退出 Samba4 AD 域*


这篇文章就写到这里吧！尽管上面的这些操作步骤是将 CentOS 7 系统加入到 Samba4 AD DC 域中，其实这些步骤也同样适用于将 CentOS 7 桌面系统加入到 Microsoft Windows Server 2008 或 2012 的域中。




---


作者简介：


我是一个电脑迷，开源 Linux 系统和软件爱好者，有 4 年多的 Linux 桌面、服务器系统使用和 Base 编程经验。




---


via: <http://www.tecmint.com/join-centos-7-to-samba4-active-directory/>


作者：[Matei Cezar](http://www.tecmint.com/author/cezarmatei/) 译者：[rusking](https://github.com/rusking) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出

