Active Directory 01 – 测试环境搭建

背景

为了更加高效测试各种 Active Directory Exploit,搭建一个本地的 AD 环境。

环境组成如下:

  • 两个 Forest,互相信任
    • ECORP.COM -> DEV.ECORP.COM,两个域,互相信任
      • Windows Server 2019
        • 2个 Domain Controller,E-RDC01,E-DC02
          • E-RDC01
            • 2个 Windows 10 Enterprise Client(E1,E2)
            • 3个 Linked SQL Server
              • 1个带 SQL Server 的 Web Server(Web03,Web03\SQLEXPRESS)
              • 2个独立的 SQL Server(SQL03\SQLEXPRESS,SQL11\SQLEXPRESS)
          • E-DC02
            • 1个 Windows 10 Enterprise Client(E3)
            • 1个独立 SQL Server(SQL13\SQLEXPRESS)(后期测试时再添加)
    • FSOCIETY.COM
      • Windows Server 2019
        • 1个 Domain Controller,F-RDC01
        • 2个独立的 SQL Server(SQL05\SQLEXPRESS,SQL07\SQLEXPRESS)
      • Windows 10 Enterprise
        • 2个用户机器,(F1,F2)

如图:

在这里插入图片描述

有需要的小伙伴可以到到这里下载 Windows Server 2019 的评估版,这里下载 Windows 10 Enterprise 评估版。

这篇文章,我们先介绍一个环境搭建的过程。如果大家不想搭建测试环境的,可以掠过,等待接下来的内容。

搭建过程中,大家先把刚装好的 Windows Server 2019 和 Windows 10 Enterprise 打上快照,好随时回滚。保留新安装的状态,还有个好处就是可以复制,不然安装那么多个机器可不是一时半会儿的事情。

建议在配置好 AD 环境之后,也打上快照,有备无患。

这篇文章大家当工具书一样使用,目录中涵盖了各种配置,按需阅读即可。

环境搭建

ECORP.COM/E-RDC01

VMWare 安装 Windows Server 2019 的过程不赘述了。注意选择 WIndows Server 2019 Desktop Experience

安装完成启动虚拟机,首选更改主机名字。

配置 Domain Controller

在这里插入图片描述
在这里插入图片描述
更改完成之后重启主机。

在这里插入图片描述
重启之后,点击 Service Manager 右上角的 Manage,选择 Add Roles and Features

在这里插入图片描述

勾上 Active Directory Domain Service

在这里插入图片描述
在这里插入图片描述

一路 Next 到如下页面,选择 Install

在这里插入图片描述

等待安装完成,关闭对话框。

在这里插入图片描述

在这里插入图片描述

点击右上角黄色三角。

在这里插入图片描述

选择 Promote this server to a domain controller

在这里插入图片描述

输入域名(任意)。

在这里插入图片描述

输入密码(同 Admin 密码或任意)。
在这里插入图片描述
等待此处填补上主机名。

在这里插入图片描述
在这里插入图片描述
选择 Install

在这里插入图片描述
安装完成会自动重启。

在这里插入图片描述

至此,Domain Controller 的功能完成了。

在这里插入图片描述

添加用户

接下来,我们添加用户,然后设置Service Principle Name

点击右上角 Tools,选择 Active Directory Users and Computers

在这里插入图片描述

右键点击域名,选择 New -> Organizational Unit
在这里插入图片描述
输入名字 Groups
在这里插入图片描述
Users 一栏中非 AdministratorGuest 的条目全部拉到 Groups 当中。

在这里插入图片描述
弹窗选择 Yes

在这里插入图片描述
添加第一个普通用户。在 Users 一栏,空白处右键选择用户。

在这里插入图片描述
用户名随意。
在这里插入图片描述
设置密码,记得勾选 Password never expires。然后完成添加。

在这里插入图片描述
右键点击 Administrator,选择 Copy

在这里插入图片描述
添加一个 Domain Admin

在这里插入图片描述
查看该用户的属性,跟 Admin 是一样的。

在这里插入图片描述
在这里插入图片描述
添加该域中的 SQL Service 用户,两个,sqlsvc03sqlsvc11

在这里插入图片描述
添加 sqlsvc11 的时候,我们选择从 Administrator 复制,将他设置成 Domain Admin 的角色。
在这里插入图片描述
右键 sqlsvc11 查看 Properties

在这里插入图片描述
General , Description 一栏填入 My password is: Password123!11。模拟不当配置。
在这里插入图片描述
添加 apachesvc03 用户。

在这里插入图片描述
当前用户列表如下。
在这里插入图片描述

配置目录分享

接下来设置 Shares

选择左侧 File and Storage Services

在这里插入图片描述

选择 Shares,点击右上角 Tasks -> New Share

在这里插入图片描述

默认设置一路 Next。
在这里插入图片描述
这里填入分享文件夹的名称,任意,此处为 Shares
在这里插入图片描述

选择 Create
在这里插入图片描述
分享创建好了,可以在列表中看到。

在这里插入图片描述

配置 SPN

接下来设置 Service Principle Name,打开命令行(以 Admin 运行)。

设置 SQL Service。

setspn -a E-RDC01/sqlsvc03.ECORP.COM:1433 ECOPR\sqlsvc03

setspn -a E-RDC01/sqlsvc11.ECORP.COM:1433 ECOPR\sqlsvc11

在这里插入图片描述
查看设置。

setspn -T ECORP.COM -Q */*

在这里插入图片描述

设置 web03

setspn -a E-RDC01/web03.ECORP.COM:1433 ECOPR\apachesvc03

在这里插入图片描述
查看。

setspn -T ECORP.COM -Q */*

在这里插入图片描述

配置网络

接下来,配置静态 IP。打开控制面板。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
右键选择 Properties
在这里插入图片描述

选择 TCP/IPv4

在这里插入图片描述
设置一个网段里的空余地址。DNS 服务器跟网关一样即可。

在这里插入图片描述

关闭 Windows Defender

最后,配置 Group Policy 关闭 Windows Defender。我先把步骤放出来,但是可以先不做。借此练习和应用一下免杀。

在这里插入图片描述

右键域名,选择第一项。
在这里插入图片描述

输入策略名字 Disable Windows Defender

右键刚创建的策略,选择编辑。
在这里插入图片描述

Policies -> Administrative Templates... -> Windows Components -> Windows Defender Antivirus

在这里插入图片描述

选择右侧 Turn off Windows Defender Antivirus
在这里插入图片描述

选择 Enabled -> Apply -> OK

在这里插入图片描述

回到上一对话框,右键如下条目,选择 Enforced
在这里插入图片描述
最终效果如图。

在这里插入图片描述
至此,ECORP.COM 域下的 Domain Controller E-RDC02 就配置好了。

不要忘记关机,然后打上快照,好随时回滚。

接下来,我们要配置 ECORP.COM 域下的子域 DEV.ECORP.COM 以及他的 Domain Controller E-DC02

NOTE:
我们这个环境有很多的机器,我采用了复制 VMWare 主机文件夹的方式来创建新的 Server 或者 Client,不然一个一个安装太费时间。但是要注意,Domain Controller 在 Promote 那一步的时候,如果两个 Domain Controller 是复制的,他们会有相同的 SID,那么第二个 Domain Controller 会 Promote 失败。解决方式是使用 Sysprep 工具来做恢复出厂设置一样的操作,可以刷新主机的 SID。我并没有测试,我把链接放在这里,大家遇到这个问题的话,可以尝试使用。

在这里插入图片描述

配置SQLAdmins组

E-RDC01 中,打开用户和组的管理界面。

在这里插入图片描述

新建组。

在这里插入图片描述

输入组名,点击 OK 添加。

在这里插入图片描述

双击该组。

在这里插入图片描述

添加用户。

在这里插入图片描述

SQL11 加入到改组,记得 sqlsvc11 是 Domain Admin,现在同时也是 SQL Admins。

在这里插入图片描述

SQL Admins 用户添加完毕。Apply -> OK

在这里插入图片描述

接着大家可以将 sqlsvc11 添加到各个 SQL Server 的本地 Admin 组,或者添加 sqlsvc11 到各个 SQL Server 实例的 sysadmin。

DEV.ECORP.COM/E-DC02

安装新的 Windows Server 2019 主机,或者复制一份(注意一定是复制刚安装好状态的主机,而不是配置过的)。

配置子域信任

开始的步骤都一样,更改主机名,添加功能。参见上一章节。

直到点击了右上角黄色三角形,要 Promote this server to a domain controller 的时候,首先打开网络设置。

在这里插入图片描述

在这里插入图片描述

如果该方法报错,就使用上一章节中控制面板打开网络适配器属性的方法。

选择 Properties
在这里插入图片描述
选择 TCP/IPv4

在这里插入图片描述

设置一个静态 IP,最重要的是,将 DNS 服务器指向 E-RDC01。配置一个备用 DNS 服务器到网关可以让本主机正确解析域名,不过没有也没事,我们是内网测试,没有公网流量。

在这里插入图片描述
接着,就是添加子域名到父域名。点击右上角黄色三角,选择 Promote this server to a domain controller

如果选择。
在这里插入图片描述

点击 Select

在这里插入图片描述
在对话框中输入父域名的 Administrator 账号和密码。大家的可能不一样,在我这的情况就是:

ECORP\Administrator
Password123!

验证通过就会自动弹出父域,选择 OK

在这里插入图片描述

接着天上子域的名称。这里解释一下什么是 Distinguished Name,什么是 Fully Qualified Domain Name

NOTE
用我们这里举例,下图中,只需要输入 DN(Distinguished Name)即可,Windows 会自动添加该 DN 到父域 ECORP.COM 前,组成 FQDN(Fully Qualified Domain Name),也就是 DEV.ECOPR.COM。以后在测试过程中,有些地方使用 DN,有些地方则必须使用 FQDN。

在这里插入图片描述

Next。

在这里插入图片描述
在这里插入图片描述

点击 Install,等待安装结束。

在这里插入图片描述

重启之后,我们就在子域 DEV 下了。

在这里插入图片描述

接着,我们可以回到 E-RDC01,点击右上角 Tools,选择如图。

在这里插入图片描述

我们可以看到子域的情况。

在这里插入图片描述

我们可以右键分别查看两个域的属性,都可以在 Trusts 一栏下看到对方。这是一个双向的父子信任。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

添加用户

我们可以在 E-RDC01 上对 E-DC02 进行配置。

选择如图。

在这里插入图片描述

添加一个普通用户。

在这里插入图片描述

添加一个 Domain Admin。

在这里插入图片描述

最后,E-DC02 的用户列表如下。

在这里插入图片描述

至此,E-DC02 配置完毕。

接下来,我们要配置另一个域 FSOCIETY.COM,并配置 Forest Trust

FSOCIETY.COM/F-RDC01

NOTE
sysprep.exe 已测试,可用。只需按照这个链接操作即可。以后复制 VM,然后用 sysprep.exe 重置,刷新 SID。

重置完成会重启。

在这里插入图片描述

需要重新配置。

在这里插入图片描述

重新设置 Admin 的密码。

在这里插入图片描述

配置 Forest Trust

这个域的 DC 配置大家参考 E-RDC01 来操作。直到 Promote this server to a domain controller 这一步做完,机器重启。

在这里插入图片描述

并且参照前两章的方式配置好静态 IP,DNS 使用网关即可。

下一步,我们设置两个 Forest(ECORP.COMFSOCIETY.COM) 互相信任。

F-RDC01,点击右上角 Tools,操作如下图。

在这里插入图片描述

右键点击左侧域名,选择属性。然后选择 Trust -> New Trust...

在这里插入图片描述

指定 ECORP.COM 为目标域。

在这里插入图片描述

之后的操作如图。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

设置一个 Trust Password,这个密码等会儿要用。
在这里插入图片描述

设置完成。提示说,我们需要到目标域也执行如上操作,才能完成互相信任。

在这里插入图片描述

现在,ECORP.COM 出现在 FSOCIETY.COM 的信任列表里。

在这里插入图片描述

按照指示,我们去 E-RDC01 下,配置一下 Forest Trust。
在这里插入图片描述

在这里插入图片描述

注意,之后要输入之前设置的信任密码。

设置完成。
在这里插入图片描述

FSOCIETY.COM 出现在 ECORP.COM 的信任列表里。
在这里插入图片描述

Forest Trust 配置完成。

添加用户

接下来,我们在 F-RDC01 中添加一些用户。

添加一个普通用户 john doe

添加一个 Domain Admin mfsociety

添加两个普通 SQL Service 账号。

在这里插入图片描述
在这里插入图片描述

最终用户列表如图。

在这里插入图片描述

配置 SPN

F-RDC01 执行

setspn -a F-RDC01/sqlsvc05.FSOCIETY.COM:1433 ECOPR\sqlsvc05

setspn -a F-RDC01/sqlsvc07.FSOCIETY.COM:1433 ECOPR\sqlsvc07

在这里插入图片描述
查看结果。

setspn -T FSOCIETY.COM -Q */*

在这里插入图片描述

到此,F-RDC01 配置完毕。

接下来,我们要配置两个 Forest 中的客户机,加入到我们的域中去。

客户机配置示例

E1 和 E2 是 ECORP.COM 域下两个客户机。

安装 Windows 10 Enterprise,然后打上快照。之后可以复制。

我们配置一个 E1,其他的机器配置都一样。

客户机配置

使用 sysprep 刷新机器,获取新的 SID,避免 SID 重复。路径在 \windows\system32\sysprep.exe
在这里插入图片描述

在这里插入图片描述

重启之后需要重新配置键盘等设置,初始化(安装过的应用都还在)。

更改主机名字

本例中改为 E1E2,大家任意。

配置分享

C:\ 下建立 Shares 文件夹,右键点击属性,分享,分享该文件夹。用于 Samba 445 端口测试。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
如有弹窗选择 Yes 开启网络发现。

在这里插入图片描述

配置静态 IP 和 DNS

打开网络管理。
在这里插入图片描述

适配器信息。

在这里插入图片描述
添加静态 IP,将主 DNS 服务器指向 E-RDC01(大家的 IP会和我的不同)。

在这里插入图片描述

加入 ECORP.COM 域

搜索 Access work or school
在这里插入图片描述
点击 Connect

在这里插入图片描述
下一步如图。
在这里插入图片描述

输入要加入的域域名。

在这里插入图片描述
输入域 Admin 账号密码。

在这里插入图片描述
选择 Skip
在这里插入图片描述
重启电脑。

在这里插入图片描述

现在,你可以用 E-RDC01 中创建的任意一个用户名/密码登录。

在这里插入图片描述

配置 Local Admin

用域 Administrator 账号登录 E1

在这里插入图片描述

右键开始菜单,选择 Computer Management

在这里插入图片描述

操作如图。

在这里插入图片描述
点击 Add...

在这里插入图片描述

填写一个普通用户账号,让他成为本机 E1 的本地 Admin。

在这里插入图片描述
在这里插入图片描述
到此,客户机配置完毕。

每台客户机配置都是如此,只是需要加入不同的域,域名的填写需要注意。另外,需要添加什么用户成为本地 Admin,大家自行决定。

SQL Server 配置示例

接下来,我们配置几台 SQL Server。我们将在 WEB03SQL03SQL05SQL07SQL11 上安装 SQL Server 2019 Express 以及 SQL Server Management Studio (SMSS)。

我们配置一台作为模板,其他的大家自行配置。

我们说 Web 服务器 WEB03 也是自带 SQL Server 的,所以我们先配置这个 WEB03,并将此作为模板,其他机器配置都是一样的。

Web03 配置

首先一样,使用 sysprep 重置一下。

然后设置主机名(WEB03),添加静态 IP,DNS 设置为 E-RDC01 的 IP,最后添加一个 Shares 分享到 C:\

添加 Windows Server 到域

接着,我们要将 WEB03 主机添加到 ECORP.COM 域。

Windows Server 添加到域的方式和 Windows Client(Windows 10)有所不同。看步骤。

在 Server Manager 中,点击 Local Server -> WORKGROUP

在这里插入图片描述
点击 Change
在这里插入图片描述

选择 Domain,输入要加入的域,ECORP.COM
在这里插入图片描述

输入 Admin 账户密码。
在这里插入图片描述
OK
在这里插入图片描述
点击 OK。准备重启。

在这里插入图片描述
重启。
在这里插入图片描述

重启之后,就可以用域管理员账号登录了。
在这里插入图片描述
查看 E-RDC01,可以在 Computers 中看到 WEB03

在这里插入图片描述

安装 SQL Server 2019 Express

这里下载 SQL Server 2019 Express。

这里下载 SMSS。
在这里插入图片描述

首先安装 SQL Server 2019 Express。

双击安装包。

在这里插入图片描述

选择 Basic

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

等待安装完成。

在这里插入图片描述

关闭窗口。

在这里插入图片描述

安装 SQL Server Management Studio

双击安装包,接收默认设置,开始安装。

在这里插入图片描述

安装完成之后,点击开始菜单,搜索 SQL Server Management Studio,打开应用。

按照默认配置选择 Connect 即可连接到安装好的 SQL Server。

在这里插入图片描述

设置 SQL Server 监听 1433 端口

现在查看一下,1433 端口是否开启。

结果是没有。

在这里插入图片描述

原因是 SQL Server 默认在启动服务的时候,会请求一个动态的空闲端口,而没有监听固定端口。

接下来我们需要配置一下,让其监听 1433 端口,一边今后测试。

打开开始菜单,搜索 SQL Server Configuration Manager,打开应用。

找到如图所示条目。

在这里插入图片描述

右键将 TCP/IP 设置为 Enable

在这里插入图片描述

点击 OK,先不重启服务,继续配置。

在这里插入图片描述

右键 TCP/IP,选择属性。

在这里插入图片描述

IP2 (IPv4) 的 Enablled 设置为 Yes

在这里插入图片描述

然后拉到最底下,如下图设置端口 1433Apply -> OK

在这里插入图片描述

然后重启 SQL Service。

在这里插入图片描述

查看 1433 端口状态,已经开启。

在这里插入图片描述

配置 Windows Network Firewall 允许 1433 端口流量

如果现在我们想从其他主机连接到本机的 SQL Server 端口,流量是被拦截的。

在这里插入图片描述

我们必须配置防火墙,允许 1433 流量进入。

搜索 Control Panel

在这里插入图片描述

如图依次操作。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

添加新规则。

在这里插入图片描述

依次操作。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

可以不勾选 Public,方便起见,全部勾选。

在这里插入图片描述

在这里插入图片描述

新规则已启用。

在这里插入图片描述

再次尝试从其他主机连接,连接成功。

在这里插入图片描述

配置 Apache 服务器

我们使用非常方便的 XAMPP 程序来配置 Apache 服务器。

下载 XAMPP

在这里插入图片描述

双击安装包。

选择 OK,我们将把 XAMPP 安装到 C:\ 目录。

在这里插入图片描述

在这里插入图片描述
一路 NEXT 到安装界面。

在这里插入图片描述

Finish。

在这里插入图片描述

管理界面。

在这里插入图片描述

总结

至此,我们已经可以配置所有的目标机器,无论是平常的工作站,或者是 SQL Server。

剩下的 FSOCIETY.COM 域下面还有两个 SQL Server 和工作站,大家自行参照上面的教程来配置。

有任何问题,大家可以留言。