B.note
# 做题顺序:
域控
初始化
公网路由(RIP)
S2S
安装子域控
公网RIP限制内网网段
NTP服务器
NTP客户端
安装 Hyper-V
DNS、DHCP
CA、子CA(用户证书模板、web模板)
failover+Hyper-V(等待时间较长,可以做其他)
导入用户
web
failover+S2D+DFS
raid磁盘
组策略
powershell脚本
SSTP
ansible·注意:
·能写完整域名的地方尽量写完整域名
·要在timedate.cpl中配置ntp时间同步
·需要先在主dns上对子域配置委派,再安装子域(这个点可以不做,安装子域时默认就会有委派)
1、Hyper-V 最好先做,因为装机器比较费时
2、NTP客户端要配置组策略 + 控制面板中的地址:

3、crl 也要使用 file:// 将增量crl拷到 网站根目录(这个点不做也行)
4、设置证书颁发机构有效期为十年,需要在根CA上修改注册表,修改它颁发的证书的有效期,然后重启CA

5、子域的DC需要登录子域的administrator才能够对子域进行操作
·小点:
1、添加用户属性:
例如要为用户添加 QQ 属性
注意这里必须一次成功,后续再修改AD域可能会报错(提示架构没有同步)
# Win + R输入:
regsvr32 schmmgmt.dll然后打开mmc,打开 AD域架构:

随便打开一个属性,然后复制它的 OID(或者随便输入一串,例如:1.2.3.45.67.89.10.11.12):


创建属性:

粘贴刚刚复制的 OID,对其进行修改(这个值不能和其他属性的OID冲突)
LDAP Display Name 第一位会变成小写,需要手动修改一下
注意Syntax 这里要选择 不区分大小写的字符串(使用默认的类型后续添加用户时会报错的)

点击OK
然后打开 user类:

将刚刚创建的属性添加进去:


然后重启 DC即可
最后打开 adsiedit 编辑器,手动为用户添加这个属性即可:




2、重复数据删除:



3、备份AD域:
按照Windows Server Backup,将这个AD域备份即可(备份系统状态即可)4、修改新加入域的计算机存储路径:
# powershell可以补全该命令
redircmp ou=NewOU,dc=china2025,dc=org5、WAP 反向代理 web:
如果是连接server core:





输入外网和内网的域名:

点击发布即可
6、配置dns内外网解析:
这里只匹配外网网段即可,内网网段让其使用默认的本地解析
(1)创建客户端子网(匹配客户端网段):
Add-DnsServerClientSubnet -Name outside -IPv4Subnet 113.64.0.0/30,180.160.0.0/30,48.92.0.0/29show-command 配置:

(2)创建一个dns区域
Add-DnsServerZoneScope -ZoneName ecskill.org -Name outside_scope
(3)在区域中添加记录:
# 添加 @ 记录(注意 @ 必须要加上双引号):
Add-DnsServerResourceRecord -ZoneName ecskill.org -A -Name "@" -IPv4Address 180.160.0.2 -ZoneScope outside_scope
# 添加 A记录(直接写*就可以了):
Add-DnsServerResourceRecord -ZoneName ecskill.org -A -Name * -IPv4Address 180.160.0.2 -ZoneScope outside_scope

(4)创建dns策略(关联子网和dns记录):
Add-DnsServerQueryResolutionPolicy -Name policy -Action ALLOW -ClientSubnet "EQ,outside" -QType "EQ,A" -ZoneScope outside_scope -ZoneName ecskill.org带有逗号的内容才需要双引号,但是全部参数值都加上双引号也是没问题的
注意,这里需要双引号 + EQ,...


一、公网路由:
1、RIP:
不通告 内网路由:
# 需要在公网设备接口选择配置不接收指定内网邻居设备通告的路由
## 如果已经建立了RIP邻居,并且公网已经获取到了内网路由,就需要手动删除它
route delete [内网路由] mask 255.255.255.0 [网关]COGW_R1 -- CHINA_CT1 -- CHINA_CT2 -- BRGW_R2
需要在 CHINA_CT1 上配置不接收 COGW_R1 的路由
和 CHINA_CT2 上配置不接收 BRGW_CT1 的路由。CHINA_CT1:


CHINA_CT2:


2、BGP:
# HQ-R1:
add-bgprouter -BgpIdentifier 1.1.1.1 -LocalASN 100
Add-BgpPeer -LocalIPAddress 1.1.1.1 -PeerIPAddress 1.1.1.2 -PeerASN 200 -Name R1.ISP.COM# R1:
add-bgprouter -BgpIdentifier 1.1.1.2 -LocalASN 200
Add-BgpPeer -LocalIPAddress 1.1.1.2 -PeerIPAddress 1.1.1.1 -PeerASN 100 -Name HQ-R1.TEST.LOCAL
Add-BgpPeer -LocalIPAddress 2.2.2.2 -PeerIPAddress 2.2.2.3 -PeerASN 200 -Name R2.ISP.COM
Add-BgpCustomRoute -Network 1.1.1.0/24
Add-BgpCustomRoute -Network 2.2.2.0/24# R2:
add-bgprouter -BgpIdentifier 2.2.2.3 -LocalASN 200
Add-BgpPeer -LocalIPAddress 2.2.2.3 -PeerIPAddress 2.2.2.2 -PeerASN 200 -Name R1.ISP.COM
Add-BgpPeer -LocalIPAddress 3.3.3.3 -PeerIPAddress 3.3.3.1 -PeerASN 300 -Name BR-R1.WS.TEST
Add-BgpCustomRoute -Network 3.3.3.0/24
Add-BgpCustomRoute -Network 2.2.2.0/24# BR-R1:
add-bgprouter -BgpIdentifier 3.3.3.1 -LocalASN 300
Add-BgpPeer -LocalIPAddress 3.3.3.1 -PeerIPAddress 3.3.3.3 -PeerASN 200 -Name R2.ISP.COM二、配置 srv2为 dns服务器:
在 dc上开启 dns区域传输
这两个区域都要传过去


srv2配置:



大约等个10几秒就行了
最后将模式改为主:


并将SOA改为 Srv2:

点击Browse,然后找到 srv2的A记录即可

并且要允许DNS动态更新:

三、导入用户:
用户表:
选了两个比较有代表性的
# 解密密码:
FOR /F "tokens=1 delims=," %a in (f:\passwd.txt) do @echo %a
FOR /F "tokens=1 delims=," %a in (f:\passwd.txt) do powershell [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('%a')) >> f:\user2.txt
FOR /F "tokens=1 delims=," %a in (f:\user2.txt) do powershell [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('%a')) >> f:\users.txtzip code是邮政编码,需要使用 -postalcode
FOR /F "tokens=1-20 delims=;" %a in (c:\users.txt) do net group %d /add
FOR /F "tokens=1-20 delims=;" %a in (c:\users.txt) do dsadd user cn=%a,cn=users,dc=test,dc=local -pwd %c -dept "%b" -memberof cn=%d,cn=users,dc=test,dc=local -title "%f" -tel "%e"
FOR /F "tokens=1-20 delims=;" %a in (c:\users.txt) do powershell Set-ADUser %a -StreetAddress '%g' -City '%h' -State '%i' -PostalCode '%j'四、GRE S2S隧道:
1、创建隧道:
命令创建出来的隧道,机器重启之后也会自动进行连接,不用担心
# R1:
add-vpns2sinterface -name abc -destination 3.3.3.1 -sourceipaddress 1.1.1.1 -gretunnel -ipv4subnet 192.168.1.0/24:1,192.168.2.0/24:1
# R2:
add-vpns2sinterface -name abc -destination 1.1.1.1 -sourceipaddress 3.3.3.1 -gretunnel -ipv4subnet 172.16.1.0/24:1
# add-vpns2sinterface -destination [目的地址] -gretunnel -name [接口名称] -sourceipaddress [源地址] -ipv4subnet [对端内网路由]2、设置IP地址:
# R1:
New-NetIPAddress -InterfaceAlias abc -IPAddress 10.0.0.1 -PrefixLength 30
# R2:
New-NetIPAddress -InterfaceAlias abc -IPAddress 10.0.0.2 -PrefixLength 30

·查看:

3、删除隧道:
最好是一次配对,不要有错误
# 重启机器,机器启动后立马执行:
remove-vpns2sinterface -name abc -force4、设置 ipsec加密:
打开 firewall.cpl
因为我这里的机器是Server Core所以这里是mmc的,图形化正常打开防火墙就行了
注意防火墙不能是关闭状态


默认

默认

选择高级,并设置预共享密钥:



选择GRE协议即可

剩下的全部默认,然后设置一个名称,点击完成
五、ISCSI:
客户端连接时:
反向chap:

正向chap:

六、SSTP:
1、不验证证书吊销列表:
# 客户端修改注册表:
NoCertRevocationCheck 值为 1
2、将身份认证转发到后端服务器:
网关:







注意最后要手动选择,否则不生效:

后端服务器:
先配置radius:


然后正常配置策略即可:




七、组策略:
1、禁用注册表、cmd:
(1)禁用注册表:
用户配置 - 管理模板 - 系统(系统下方)

(2)禁用cmd:
用户配置 - 管理模板 - 系统(系统下方)
2、不保留打开文档历史:
用户配置 - 管理模板 - Start Menu and Taskbar(开始菜单和任务栏)
3、打开此电脑时,显示本地磁盘:

4、取消首次登录动画:
路径:
计算机配置-管理模板-系统-登陆- 显示首次登陆动画
Computer Configuration - Administrative Templates: Policy - System - Logon
5、登录系统时提示信息:
注意:必须要设置一个title,横幅才会生效

6、取消 Ctrl + Alt + Delete:

7、将powershell脚本放到用户桌面:
并且需要将 Admins组加入 Domain Admins 组,否则它没有权限打开 dnsmgmt.msc
(1)编写脚本,并将该路径共享:
在C盘创建:

核心命令:


将脚本根目录共享(C盘):



(2)放到所有用户桌面:
使用组策略快捷方式来配置:
编辑默认域策略:


Location 是要将快捷方式放置到的地方
Target path 是源文件路径修改前:

gpupdate /force
可以看到桌面有了,右键运行:

(3)组策略关闭这个警告:

用户配置 - 策略 - 管理模板 - Windows组件 - 附件管理器
将文件名后缀添加到 低风险文件列表即可(中风险文件列表也行):

(4)允许客户端执行powershell脚本:
# 虽然客户端无法打开dnsmgmt.msc这个文件,但是万一评分时测试的是使用普通用户,并显示‘No permission’这个效果呢。
# Windows客户端默认不被允许执行powershell脚本,我们需要手动修改执行策略:
Set-ExecutionPolicy bypass //执行一次本机所有用户都通用
Set-ExecutionPolicy Unrestricted //这个模式,机器首次执行还是会有Windows Server机器最好也执行一下
或者修改组策略:
路径:(计算机策略和用户策略中都有)
计算机策略/用户策略 - 管理模板 - Windows组件 - internet Explorer(IE浏览器) - 安全页面 - Intranet Sites: Include all network paths (UNCs)(记得最后这个UNCs字段即可)

八、DFS:
启用枚举:


这个有时不会生效,因为我们需要再配置一个保险,保证它百分百生效:
这里的配置无法影响文件夹的写入权限,文件夹的写入权限由 共享权限、ntfs权限来限制

选择设置额外的查看权限


九、Ansible:
1、ansible连接:
(1)winrm:
winrm quickconfig
winrm set winrm/config/service @{AllowUnencrypted="True"}
winrm set winrm/config/service/auth @{Basic="True"}
(2)ansible配置:
mkdir -p /etc/ansible/group_vars
vim /etc/ansible/group_vars/all.yml
模板:
debian离线文档路径:
/usr/lib/python3/dist-packages/ansible/plugins/connection/winrm.py
/usr/lib/python3/dist-packages/ansible_test/config/inventory.winrm.template

inventory.winrm.template:

2、剧本:
vim user.yml
# 注意事项:这里的groups 必须要用 - 来进行指定
旧:
vim add-user.yml
这样会每次都是changed,要仅首次创建时changed需要加上:update_password: on_create

·测试执行:
# 创建用户
ansible-playbook add-user.yml -e '{"new_user":{"name":"test","password":"Skills39","surname":"213"}}'
