返回顶部
首页 > 资讯 > 精选 >如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录
  • 418
分享到

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

2023-06-16 14:06:09 418人浏览 八月长安
摘要

小编给大家分享一下如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!需求:在 ubuntu

小编给大家分享一下如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

需求:

ubuntu 系统上使用 Samba4 来创建活动目录架构

linux 命令行下管理 Samba4 AD 架构

使用 windows 10 的 RSAT 工具来管理 Samba4 活动目录架构

在 Windows 下管理 Samba4 AD 域管制器 DNS 和组策略

将另一台 Ubuntu DC 服务器加入到 Samba4 AD DC 实现双域控主机模式

***步:配置 DC 服务器时间同步

在两个域控制器之间复制 sysvol 目录的内容之前,你得保证这两个服务器时间设置准确且一致。

如果这两个服务器的时间延迟大于 5 分钟,并且时钟也不同步,你将会遇到 AD 账号和域复制的各种问题。

为了解决多个域控制器之间时间漂移的问题,你需要在服务器上执行如下命令来安装和配置 NTP 服务。

# apt-get install ntp

在 NTP 服务安装完成之后,打开主配置文件,把默认的 pool 值注释(在每行 pool 参数前添加 # ),并且添加新的 pool  值,指向已安装了 NTP 服务端的主 Samba4 AD DC FQDN,如下所示。

# nano /etc/ntp.conf

把下面几行添加到 ntp.conf 配置文件。

pool 0.ubuntu.pool.ntp.org iburst #pool 1.ubuntu.pool.ntp.org iburst #pool 2.ubuntu.pool.ntp.org iburst #pool 3.ubuntu.pool.ntp.org iburst pool adc1.tecmint.lan # Use Ubuntu's ntp server as a fallback. pool ntp.ubuntu.com

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

Samba4 配置 NTP 服务

先不要关闭该文件,在文件末尾添加如下内容,这是为了让其它客户端能够查询并与这个 NTP 服务器同步时间,并发出 NTP 签署请求,以防主 DC  离线:

restrict source notrap nomodify noquery mssntp ntpsigndSocket /var/lib/samba/ntp_signd/

***,关闭并保存该配置文件,然后重启 NTP 服务以应用更改。等待几分钟后时间同步完成,执行 ntpq 命令打印出 adc1 时间同步情况。

# systemctl restart ntp # ntpq -p

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

与 Samba4 AD 同步 NTP 时间

第二步:通过 Rsync 命令来复制***个 DC 服务器上的 SysVol 目录

默认情况下,Samba4 AD DC 不会通过 DFS-R(分布式文件系统复制Distributed File System Replication)或者  FRS(文件复制服务File Replication Service)来复制 SysVol 目录。

这意味着只有在***个域控制器联机时,组策略对象Group Policy objects才可用。否则组策略设置和登录脚本不会应用到已加入域的  Windosws 机器上。

为了克服这个障碍,以及基本实现 SysVol 目录复制的目的,我们通过执行一个基于 ssh 的身份认证并使用 SSH 加密通道的Linux  同步命令来从***个域控制器安全地传输 GPO 对象到第二个域控制器。

这种方式能够确保 GPO 对象在域控制器之间的一致性,但是也有一个很大的缺点。它只能进行单向同步,因为在同步 GPO 目录的时候, rsync 命令会从源  DC 服务器传输所有的更改到目标 DC 服务器,

源 DC 服务器上不存在的组策略对象也会从目标 DC 服务器上删除,为了限制并避免任何冲突,所有的 GPO 编辑操作只能在***个 DC  服务器上执行。

要进行 SysVol 复制,先到***个 AD DC 服务器上生成 SSH 密钥,然后使用下面的命令把该密钥传输到第二个 DC 服务器。

在生成密钥的过程中不要设置密码,以便在无用户干预的情况下进行传输。

# ssh-keygen -t RSA   # ssh-copy-id root@adc2   # ssh adc2  # exit

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

在 Samba4 DC 服务器上生成 SSH 密钥

当你确认 root 用户可以从***个 DC 服务器以免密码方式登录到第二个 DC 服务器时,执行下面的 rsync 命令,加上 --dry-run  参数来模拟 SysVol 复制过程。注意把对应的参数值替换成你自己的数据。

# rsync --dry-run -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/

如果模拟复制过程正常,那么再次执行去掉 --dry-run 参数的 rsync 命令,来真实的在域控制器之间复制 GPO 对象。

# rsync -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

Samba4 AD DC SysVol 复制

在 SysVol 复制完成之后,登录到目标域控制器,然后执行下面的命令来列出其中一个 GPO 对象目录的内容。

从***个 DC 服务器上执行这个命令时,列出的 GPO 对象也要相同。

# ls -alh /var/lib/samba/sysvol/your_domain/Policiers/

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

验证 Samba4 DC SysVol 复制结果是否正常

为了自动完成组策略复制的过程(通过网络传输 sysvol 目录),你可以使用 root 账号设置一个任务来执行同步命令,如下所示,设置为每隔 5  分钟执行一次该命令。

# crontab -e

添加一条每隔 5 分钟运行的同步命令,并把执行结果以及错误信息输出到日志文件 /var/log/sysvol-replication.log  。如果执行命令异常,你可以查看该文件来定位问题。

*/5 * * * * rsync -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/ > /var/log/sysvol-replication.log 2>&1

如果以后 SysVol ACL 权限有问题,你可以通过下面的命令来检测和修复这些异常。

# samba-tool ntacl sysvolcheck # samba-tool ntacl sysvolreset

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

修复 SysVol ACL 权限问题

如果***个 Samba4 AD DC 的 FSMO 角色,即“PDC 模拟器”不可用,你可以强制 Microsoft Windows  系统上的组策略管理控制台只连接到第二个域控制器,通过选择更改域控制器选项和手动选择目标机器,如下图所示。

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

更改 Samba4 域控制器

如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

选择 Samba4 域控制器

当你从组策略管理控制台连接到第二个 DC 服务器时,你应该避免对组策略做任何更改。否则,当***个 DC 服务器恢复正常后, rsync  命令将会删除在第二个 DC 服务器上所做的更改。

以上是“如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录

本文链接: https://lsjlt.com/news/283863.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录
    小编给大家分享一下如何使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!需求:在 Ubuntu...
    99+
    2023-06-16
  • 如何使用CMD下一个命令遍历目录并删除相同文件
    这篇文章将为大家详细讲解有关如何使用CMD下一个命令遍历目录并删除相同文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。如果不小心安装了些制造垃圾的小工具,在系统中各个盘符下都产生了相同的垃圾文件,如我系...
    99+
    2023-06-08
  • Linux如何使用diff命令比较文件找出文件之间相同的部分
    本篇内容主要讲解“Linux如何使用diff命令比较文件找出文件之间相同的部分”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux如何使用diff命令比较文件找出文件之间相同的部分”吧!  ...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作