云计算运维

Windows Server 2003 - Windows Server 2019 系统工具,Linux系统脚本,Mysql、Nginx、PHP、Redis、K8S、Seafile、Weblogic 、Jenkins、DNS、DHCP、FTP、IIS、Zookeeper、Rabbitmq、Oracle、Tomcat、Mavrn等服务搭建维护,请关注我.

Active Directory 备份和恢复


1. 用户级别

1.1 备份

# AD 回收站:恢复删除的 AD 用户
# 条件:林功能级别必须在 2008R2 之上
# 保存时间:默认 180 天,可进行配置
# 默认未启用;一旦启动,无法再关闭
# 此功能只能恢复删除用户

### 开启 AD 回收站 功能
1. 打开 Active Directory 管理中心
2. 点击左边的 "本地" ,再点击右边的 "启用回收站"
 
### 修改 默认保存时间 180 天为 365 天
# 注意域名,此例子为:test.com
# 修改两个值即可:tombstoneLifetime,msDS-DeletedObjectLifetime
# 管理员打开 powershell 运行如下命令:
Set-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=test,DC=com" –Partition "CN=Configuration,DC=test,DC=com" –Replace:@{ "tombstoneLifetime" = 365 }
 
Set-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=test,DC=com" –Partition "CN=Configuration,DC=test,DC=com" –Replace:@{ "msDS-DeletedObjectLifetime" = 365 }

1.2 恢复

1. 在 Active Directory 管理中心
2. 点击左边的 "本地"
3. 点击中间的 OU : "Deleted Objects"
4. 右击需还原的被删除用户,进行还原即可

2. 域控级别

2.1 备份

# 1. 企业中一般都会部署两台域控做互为主备
# 2. 而为了防止极端情况下
       例如:两台域控的磁盘都有问题,或者黑客入侵导致的 OU 混乱等的情况,
     而需要格外对域控做备份。
# 3. 使用 Windows 自带的 Windows Server Backup 工具
     可定时计划每天备份保存到网络共享盘上
# 4. AD 域控数据在 "系统状态" 中,所有只需要备份 "系统状态" 即可
# 5. Windows Server Backup 备份完毕之后,可搭配邮件进行通知备份情况
     因 WSB 并没有邮件告警功能,所以提供 powershell 脚本+计划任务进行告警
 
### 安装 Windows Server Backup
1. 管理员方式打开 PowerShell,输入如下命令进行安装
2. 安装命令:Install-WindowsFeature -Name Windows-Server-Backup
3. 检查是否安装成功:Get-WindowsFeature Windows-Server-Backup
 
### 备份
1. 打开 Windows Server Backup
2.  "本地备份"--"备份计划"--"自定义"--"添加项目"--"系统状态"
3. 自行选择 备份时间
4. 备份到共享网络文件夹[自行准备网络共享存储,仅支持 smb]
 
### 备份成功邮件告警通知
1. 打开 "计划任务程序"--"创建基本任务"--触发器:"当特定事件被记录时(E)"
2. 日志:"Microsoft-Windows-Backup/Operational"
3. 源:选择刚才的备份名称
4. 事件 ID:4
   特别说明:成功事件 ID:4;
             失败事件的 ID:5,8,9,17,22,49,50,52,100,517,518,521,527,528,544,545,546,561,564,612
5. "启动程序"--"程序或脚本"--"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
6. "添加参数":就是选择如下脚本文件: Microsoft_Windows_Backup_Send_Mail.ps1
7. 修改刚才的计划任务的编辑触发条件
8. "自定义"--"编辑事件赛选器"--"按日志"--"Microsoft-Windows-Backup/Operational"
9. "在所有事件 ID"输入:4,5,8,9,17,22,49,50,52,100,517,518,521,527,528,544,545,546,561,564,612
10. "常规"--"不管用户是否登录都要运行"
 
## 脚本文件:Microsoft_Windows_Backup_Send_Mail.ps1 如下:邮件信息需自行变更即可
function EmailNotification()
{ 
# 定义需发送通知的邮件地址
$Sender = "xxx@xxx.com"
# 定义发送邮件的帐号与密码
$SMTPAuthUsername = "xxx@xxx.com"
$SMTPAuthPassword = "xxx"
# 定义发送邮件的 SMTP 服务器等信息
$Server = "smtp.xxx.com"
$Port = 25
$SSL = $true
  
# 定义接收通知的邮件地址
$Receipt = "xxx@xxx.com"
# 邮件主题
$Object = $env:computername+": Backup report of "+(Get-Date)
# 邮件内容:获取最近的备份情况
$Content = Get-WBJob -Previous 1 | ConvertTo-Html -As List | Out-String
 
# 初始化邮件实例
$SMTPclient = new-object System.Net.Mail.SmtpClient($Server,$Port)
# SSL 协议
$SMTPclient.Enablessl = $SSL
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($SMTPAuthUsername, $SMTPAuthPassword)
$Message = new-object System.Net.Mail.MailMessage $Sender, $Receipt, $Object, $Content $Message.IsBodyHtml = $true;
$SMTPclient.Send($Message)
} 
EmailNotification

2.2 恢复

# 1. 重启按 F8 进入"目录服务修复"模式
# 2. 使用本地账号./administrator 登录,密码为目录服务还原模式(DSRM)密码
     如果忘记此密码。管理员打开 powershell:如下命令即可进行重置密码
      PS C:\Users\Administrator> ntdsutil
      C:\Windows\system32\ntdsutil.exe: Set DSRM Password
# 3. 打开 Windows Server Backup 工具进行恢复
# 4. 恢复注意:
      选择"系统状态"进行恢复
      勾选"授权还原": 将恢复的此 AD 域控提高到最新版本,而覆盖掉其他 AD 域控。
          否则将会被其他 AD 域控给覆盖掉而恢复失败
  • 分享:
评论
还没有评论
    发表评论 说点什么