在无公网环境中用wsus实现补丁导入,本质是将联网下载的补丁文件(wsuscontent)、元数据(.cab+.log)和数据库状态(susdb)三类数据完整导出再导入,缺一不可;需正确配置端口、ntfs存储及注册表策略以确保客户端识别与安装。
在无公网环境中用 wsus 实现补丁导入,本质是“把能联网下载的补丁和元数据,安全搬运到隔离网络里”,不能靠自动同步,必须手动导出再导入。关键不是工具本身多复杂,而是三类数据缺一不可:补丁文件(wsuscontent)、元数据(wsusutil export 生成的 .cab + .log)、数据库状态(susdb)。漏掉任何一类,客户端就检测不到更新或安装失败。
确保 WSUS 服务器基础配置正确
- 安装前停用 IIS 默认网站,或为 WSUS 单独创建网站并指定非 80 端口(如 8530),避免端口冲突导致客户端 Selfupdate 失败。
- 存储路径必须是 NTFS 分区,且预留至少 100GB 空间(补丁体积持续增长,Windows 10 累积更新单个版本常超 2GB)。
- 不要只复制
WsusContent文件夹——它只是二进制包,没有审批状态、依赖关系和分类信息,单独复制后在控制台能看到更新但无法批准或安装。
从联网服务器导出完整补丁数据
- 在能上网的 WSUS 服务器上,先完成一次完整同步(含质量更新、安全更新、定义更新等所需分类)。
- 打开管理员命令提示符,进入
%ProgramFiles%\Update Services\Tools,运行:wsusutil export C:\export\updates.cab C:\export\export.log - 同时完整复制整个
WsusContent目录(默认路径如D:\WSUS\WsusContent)到同一U盘或共享位置。 - 导出 SUSDB 数据库:用 SQL Server Management Studio 分离
SUSDB数据库 → 拷贝.mdf和.ldf文件 → 再在目标服务器上附加。不能仅靠备份还原,否则服务启动报错 “Database is in use”。
在隔离网络 WSUS 服务器上导入
- 先将
WsusContent整个目录复制到目标服务器对应路径(如D:\WSUS\WsusContent),保持目录结构不变。 - 运行导入命令:
wsusutil import C:\export\updates.cab C:\export\export.log - 附加已拷贝的 SUSDB 数据库文件,重启
WSUSService服务。 - 检查 WSUS 控制台:确认“所有更新”中 KB 编号可见、状态为“未审批”,说明元数据导入成功;右键任意更新 → “查看依赖项”能正常显示,说明关系数据完整。
让 Windows 10 客户端识别并应用这些补丁
- 客户端必须同时配置两项注册表值(域环境用 GPO,非域可用
.reg文件导入):HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate-
"WUServer"="http://your-wsus-server:8530"(含端口,IP 或主机名需可解析) -
"UseWUServer"=dword:00000001
-
- 执行
gpupdate /force刷新策略,然后重启wuauserv服务,或运行wuauclt /detectnow触发检测。 - 验证是否生效:打开“设置 > 更新与安全 > Windows 更新”,点击“检查更新”,应显示“正在检查更新…”而非直接跳转微软官网;也可运行
netsh winhttp show proxy确认未使用代理。
不复杂但容易忽略











