加入一个额外的Ubuntu DC到Samba4 AD DC用于FailOver复制 - 第5部分

本教程将告诉您如何在现有的 Samba AD DC林中添加第二个 Samba4域控制器(在 Ubuntu 16.04服务器上配置),以便为一些关键的AD DC服务提供一定程度的负载平衡/故障转移,特别是对于DNS和AD DC LDAP模式与SAM数据库。

要求

  1. 在Ubuntu上使用Samba4创建Active Directory基础架构 - 第1部分
本文是 Samba4 AD DC系列的 第5部分 ,如下所示:
第2部分从Linux命令行管理Samba4 AD基础结构
第3部分通过RSAT从Windows10管理Samba4 Active Directory基础结构
第4部分从Windows管理Samba4 AD域控制器DNS和组策略

第1步:Samba4安装程序的初始配置

1.在开始为第二个DC实际执行域加入之前,您需要注意几个初始设置。 首先,确保要集成到 Samba4 AD DC中的系统的 主机名包含一个描述性名称。 假设第一个配置的域的 主机名称adc1 ,您可以使用adc2命名第二个DC,以便在您的域控制器上提供一致的命名方案。 要更改系统 主机名,您可以发出以下命令。
# hostnamectl set-hostname adc2
否则可以手动编辑 / etc / hostname文件并添加一个具有所需名称的新行。
# nano /etc/hostname
这里添加主机名。
adc2
2.接下来,打开本地系统解析文件,并添加一个IP地址指向主域控制器的短名称和 FQDN的条目,如下面的屏幕截图所示。 通过本教程,主DC名称为 adc1.youcl.lan ,并解析为IP地址 192.168.1.254
# nano /etc/hosts
添加以下行:
IP_of_main_DC		FQDN_of_main_DC 	short_name_of_main_DC

设置Samba4 AD DC的主机名

3.在下一步中,打开 / etc / network / interfaces并为您的系统分配静态IP地址,如下面的截图所示。 注意 dnsNameserversdns搜索变量。 应将这些值配置为指向主 Samba4 AD DC和域的IP地址,以便DNS解析正常工作。 重新启动网络守护程序以反映更改。验证 /etc/resolv.conf文件,以确保来自网络接口的两个DNS值都更新到此文件。
# nano /etc/network/interfaces
编辑并替换您的自定义IP设置:
auto ens33
iface ens33 inet static
address 192.168.1.253
netmask 255.255.255.0
brodcast 192.168.1.1
gateway 192.168.1.1
dns-nameservers 192.168.1.254
dns-search youcl.lan
重新启动网络服务并确认更改。
# systemctl restart networking.service
# cat /etc/resolv.conf

为Samba4 AD配置DNS

当您通过其短名称(将形成FQD​​N)查询主机时, dns搜索值将自动附加域名。 4.为了测试DNS解析是否正常工作,请对您的域短名称,FQDN和领域发出一系列 ping命令,如下面的屏幕截图所示。 在所有这些情况下, Samba4 AD DC DNS服务器应回复您的主要DC的IP地址。

验证Samba4 AD的DNS解析

5.您需要注意的最后一个附加步骤是与主域控制器的时间同步。 这可以通过以下命令在系统上安装 NTP客户端实用程序来实现:
# apt-get install ntpdate
6.假设您想手动强制与 samba4 AD DC进行时间同步,请通过发出以下命令针对主DC运行 ntpdate命令。
# ntpdate adc1

时间与Samba4 AD同步

第2步:使用必需的依赖关系安装Samba4

7.为了注册 Ubuntu 16.04系统到您的域,首先安装 Samba4Kerberos客户端和一些其他重要的软件包,以便以后使用从Ubuntu官方知识库通过发出以下命令:
# apt-get install samba krb5-user krb5-config winbind libpam-winbind libnss-winbind

在Ubuntu中安装Samba4

8.在安装过程中,您需要提供Kerberos域名。 用大写字母写域名,然后按 [Enter]键完成安装过程。

为Samba4配置Kerberos身份验证

9.软件包安装完成后,通过使用 kinit命令为域管理员请求Kerberos票证来验证设置。 使用 klist命令列出已授予的Kerberos票证。
# kinit domain-admin-user@YOUR_DOMAIN.TLD
# klist

在Samba4域上验证Kerberos

第3步:加入Samba4 AD DC作为域控制器

10.在将机器集成到 Samba4 DC之前,首先确保系统上运行的所有Samba4守护程序都已停止,并重命名默认Samba配置文件以便开始清理。在配置域控制器时,samba将从头创建一个新的配置文件。
# systemctl stop samba-ad-dc smbd nmbd winbind
# mv /etc/samba/smb.conf /etc/samba/smb.conf.initial
11.为了启动域加入过程,首先只启动 samba-ad-dc守护程序,然后您将使用具有您域上的管理权限的帐户运行 samba-tool命令来加入领域。
# samba-tool domain join your_domain -U "your_domain_admin"
域集成摘录:
# samba-tool domain join youcl.lan DC -U"youcl_user"
示例输出
Finding a writeable DC for domain 'youcl.lan'
Found DC adc1.youcl.lan
Password for [WORKGROUP\youcl_user]:
workgroup is youcl
realm is youcl.lan
checking sAMAccountName
Deleted CN=ADC2,CN=Computers,DC=youcl,DC=lan
Adding CN=ADC2,OU=Domain Controllers,DC=youcl,DC=lan
Adding CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=youcl,DC=lan
Adding CN=NTDS Settings,CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=youcl,DC=lan
Adding SPNs to CN=ADC2,OU=Domain Controllers,DC=youcl,DC=lan
Setting account password for ADC2$
Enabling account
Calling bare provision
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf
Provision OK for domain DN DC=youcl,DC=lan
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=youcl,DC=lan] objects[402/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=youcl,DC=lan] objects[804/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=youcl,DC=lan] objects[1206/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=youcl,DC=lan] objects[1550/1550] linked_values[0/0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=youcl,DC=lan] objects[402/1614] linked_values[0/0]
Partition[CN=Configuration,DC=youcl,DC=lan] objects[804/1614] linked_values[0/0]
Partition[CN=Configuration,DC=youcl,DC=lan] objects[1206/1614] linked_values[0/0]
Partition[CN=Configuration,DC=youcl,DC=lan] objects[1608/1614] linked_values[0/0]
Partition[CN=Configuration,DC=youcl,DC=lan] objects[1614/1614] linked_values[28/0]
Replicating critical objects from the base DN of the domain
Partition[DC=youcl,DC=lan] objects[97/97] linked_values[24/0]
Partition[DC=youcl,DC=lan] objects[380/283] linked_values[27/0]
Done with always replicated NC (base, config, schema)
Replicating DC=DomainDnsZones,DC=youcl,DC=lan
Partition[DC=DomainDnsZones,DC=youcl,DC=lan] objects[45/45] linked_values[0/0]
Replicating DC=ForestDnsZones,DC=youcl,DC=lan
Partition[DC=ForestDnsZones,DC=youcl,DC=lan] objects[18/18] linked_values[0/0]
Committing SAM database
Sending DsReplicaUpdateRefs for all the replicated partitions
Setting isSynchronized and dsServiceName
Setting up secrets database
Joined domain youcl (SID S-1-5-21-715537322-3397311598-55032968) as a DC

加入域到Samba4 AD DC

12.将Ubuntu与samba4软件集成到域中后,打开samba主配置文件并添加以下行:
# nano /etc/samba/smb.conf
添加以下摘录到smb.conf文件。
dns forwarder = 192.168.1.1
idmap_ldb:use rfc2307 = yes
template shell = /bin/bash
winbind use default domain = true
winbind offline logon = false
winbind nss info = rfc2307
winbind enum users = yes
winbind enum groups = yes
dns转发器IP地址替换为您自己的DNS转发器IP。 Samba将所有域名权限区域之外的所有DNS解析查询转发到此IP地址。 13.最后,重新启动samba守护程序以反映更改并通过执行以下命令检查活动目录复制。
# systemctl restart samba-ad-dc
# samba-tool drs showrepl

配置Samba4 DNS

14.此外,从 / etc路径重命名初始Kerberos配置文件,并在配置域时将其替换为samba生成的新 krb5.conf配置文件。 该文件位于 / var / lib / samba / private目录中。 使用Linux符号链接将此文件链接到 / etc目录。
# mv /etc/krb6.conf /etc/krb5.conf.initial
# ln -s /var/lib/samba/private/krb5.conf /etc/
# cat /etc/krb5.conf

配置Kerberos

此外,使用samba krb5.conf文件验证Kerberos身份验证。请求管理员用户的票证,并通过发出以下命令列出缓存的票证。
# kinit administrator
# klist

使用Samba验证Kerberos身份验证

第4步:其他域服务验证

16.您需要执行的第一个测试是 Samba4 DC DNS解析。 要验证您的域DNS解析,请使用 主机命令对一些关键的AD DNS记录查询域名,如下面的截图所示。 DNS服务器现在应该为每个查询使用两个IP地址重播。
# host your_domain.tld
# host -t SRV _kerberos._udp.your_domain.tld  # UDP Kerberos SRV record
# host -t SRV _ldap._tcp.your_domain.tld  # TCP LDAP SRV record

验证Samba4 DC DNS

17.这些DNS记录也应该从安装了 RSAT工具的已注册 Windows计算机中可见 。打开DNS管理器并展开到您的域tcp记录,如下图所示。

在Windows RSAT工具上验证DNS记录

18.下一个测试应该指示域LDAP复制是否按预期工作。 使用 samba工具 ,在第二个域控制器上创建一个帐户,并验证该帐户是否在第一个Samba4 AD DC上自动复制。
关于adc2:
# samba-tool user add test_user
关于adc1:
# samba-tool user list | grep test_user

在Samba4 AD上创建用户帐户

验证Samba4 AD上的复制

19.您还可以从 Microsoft AD UC控制台创建帐户,并验证帐户是否显示在两个域控制器上。 默认情况下,应在两个samba域控制器上自动创建帐户。使用 wbinfo命令从 adc1查询帐户名称。

从Microsoft AD UC创建帐户

验证Samba4 AD上的帐户复制

20.事实上,从Windows打开 AD UC控制台,展开到域控制器,你应该看到两个注册的直流电机。

验证Samba4域控制器

第5步:启用Samba4 AD DC服务

21.为了在系统范围内启用samba4 AD DC服务,请首先禁用某些旧的和未使用的Samba守护进程,并通过运行以下命令仅启用 samba-ad-dc服务:
# systemctl disable smbd nmbd winbind
# systemctl enable samba-ad-dc

启用S​​amba4 AD DC服务

22.如果从Microsoft客户端远程管理Samba4域控制器,或者将其他Linux或Windows客户端集成到您的域中,请确保将 adc2计算机的IP地址提及其网络接口DNS服务器IP设置,以获得冗余级别。 下面的屏幕截图说明了Windows或Debian / Ubuntu客户端所需的配置。

配置客户端以管理Samba4 DC

配置Linux客户端以管理Samba4 DC

假设与 192.168.1.254的第一个 DC脱机,逆转在配置文件中的DNS服务器IP地址的顺序,所以它不会尝试首先查询一个不可用的DNS服务器。 最后,如果要在具有Samba4 Active Directory帐户的Linux系统上执行本地身份验证或为Linux中的AD LDAP帐户授予root权限,请阅读 从Linux命令行管理Samba4 AD基础结构的教程中的第2步和3。
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏