Windows系统初始化脚本
一键自动化配置Windows服务器的用户、远程桌面、防火墙等基础设置
  
✨ 特性
- 🚀 一键部署 - 支持PowerShell直接执行,无需手动下载
- 👥 多用户管理 - 支持管理员、高级用户、普通用户三种权限类型
- 🖥️ 远程桌面配置 - 自动启用和配置远程桌面连接
- 🛡️ 防火墙配置 - 自动配置Windows防火墙规则
- ⚙️ 系统服务优化 - 禁用不必要的系统服务
- 📊 详细日志 - 完整的操作记录和结果汇总
- ✅ 独立验证 - 提供专门的配置验证工具
功能说明
这个脚本用于自动化Windows系统的初始化配置,包括:
- 用户管理 - 创建管理员账户和多个应用账户
- 远程桌面 - 启用远程桌面并配置端口
- 防火墙配置 - 配置Windows防火墙规则
- 系统服务 - 优化系统服务配置
- Windows Update - 配置自动更新策略
- 安全策略 - 配置密码复杂度等安全设置
快速开始
一键安装(推荐)
# 以管理员身份运行PowerShell,然后执行:
PowerShell -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://api.asfor.cn/shellscript/install_windows.ps1'))"
手动安装
# 下载文件
Invoke-WebRequest -Uri "https://api.asfor.cn/shellscript/system_init_windows.conf" -OutFile "system_init_windows.conf"
Invoke-WebRequest -Uri "https://api.asfor.cn/shellscript/init_windows.ps1" -OutFile "init_windows.ps1"
# 修改配置文件(可选)
notepad system_init_windows.conf
# 执行脚本
.\init_windows.ps1
配置文件说明
用户账户配置
# 管理员账户
$ADMIN_USER = "dxcadmin"
$ADMIN_PASSWORD = "your_password"
# 应用账户
$APP_USERS = @(
@{Username="app1"; Password="password"; Permission="admin"}, # 管理员权限
@{Username="app2"; Password="password"; Permission="power"}, # 高级用户权限
@{Username="app3"; Password="password"; Permission="user"} # 普通用户权限
)
权限类型说明
- admin: 管理员权限,加入Administrators组
- power: 高级用户权限,加入Power Users组
- user: 普通用户权限,仅在Users组
远程桌面配置
$ENABLE_RDP = $true # 启用远程桌面
$RDP_PORT = 3389 # 远程桌面端口
防火墙配置
$CONFIGURE_FIREWALL = $true # 配置防火墙
$ALLOW_RDP_FIREWALL = $true # 允许远程桌面通过防火墙
系统配置
$CONFIGURE_WINDOWS_UPDATE = $true # 配置Windows Update
$AUTO_UPDATE_ENABLED = $false # 禁用自动更新
$DISABLE_UNNECESSARY_SERVICES = $true # 禁用不必要的服务
执行结果示例
==============================================
账户信息汇总
==============================================
【管理员账户】
用户名: dxcadmin
密码: Hyz4jDcnfs@2025
权限: 管理员权限
【应用账户】
用户名: crmadmin
密码: L38@Nz%4KQc%i9
权限: 管理员权限
用户名: crmsvc
密码: 6yCL*R@&v!88in
权限: 普通用户权限
用户名: crmro
密码: 5Z%G#6!Y2y!e7!
权限: 普通用户权限
==============================================
成功创建账户总数: 4 个
- 管理员账户: 1 个
- 应用账户: 3 个
==============================================
独立验证工具
一键验证(推荐)
# 自动下载配置文件和验证脚本
PowerShell -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://api.asfor.cn/shellscript/install_verify_windows.ps1'))"
手动验证
# 下载验证脚本
Invoke-WebRequest -Uri "https://api.asfor.cn/shellscript/verify_windows.ps1" -OutFile "verify_windows.ps1"
# 使用配置文件验证(推荐)
.\verify_windows.ps1
# 自动检测模式验证
.\verify_windows.ps1 -AutoDetect
# 显示帮助信息
.\verify_windows.ps1 -Help
验证内容
- 系统基本信息:操作系统、版本、运行时间
- 远程桌面验证:RDP启用状态、端口配置
- 用户账户验证:账户存在性、权限配置正确性
- 系统服务验证:关键服务运行状态
- 防火墙配置验证:防火墙规则状态
- 网络连接验证:RDP端口监听状态
部署说明
云端部署文件
需要上传到云端的文件:
install_windows.ps1- 一键安装脚本init_windows.ps1- 主初始化脚本system_init_windows.conf- 配置文件verify_windows.ps1- 验证脚本install_verify_windows.ps1- 验证脚本安装器
文件结构
https://api.asfor.cn/shellscript/
├── install_windows.ps1 # Windows一键安装入口
├── install_verify_windows.ps1 # Windows验证脚本安装器
├── init_windows.ps1 # Windows主脚本
├── system_init_windows.conf # Windows配置文件
└── verify_windows.ps1 # Windows验证脚本
安全特性
- 权限检查 - 确保以管理员权限运行
- 配置备份 - 注册表配置自动备份
- 权限验证 - 用户组权限配置验证
- 服务安全 - 禁用不必要的系统服务
- 防火墙配置 - 自动配置安全的防火墙规则
注意事项
- 权限要求 - 脚本必须以管理员权限运行
- 执行策略 - 可能需要临时修改PowerShell执行策略
- 配置检查 - 建议在运行前检查配置文件
- 测试环境 - 建议先在测试环境验证功能
- 密码安全 - 建议使用复杂密码组合
- 网络要求 - 确保服务器能访问下载地址
故障排除
常见问题
- 执行策略限制
# 临时允许脚本执行
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
- 远程桌面连接问题
# 检查远程桌面状态
Get-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections"
# 重启远程桌面服务
Restart-Service TermService
- 用户创建失败
# 检查用户
Get-LocalUser
# 检查用户组
Get-LocalGroupMember -Group "Administrators"
- 防火墙问题
# 检查防火墙规则
Get-NetFirewallRule -DisplayGroup "Remote Desktop"
# 手动启用远程桌面规则
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
验证配置
# 一键验证
PowerShell -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://api.asfor.cn/shellscript/install_verify_windows.ps1'))"
支持的系统
- Windows Server 2016+
- Windows Server 2019
- Windows Server 2022
- Windows 10 Pro/Enterprise
- Windows 11 Pro/Enterprise
更新日志
- v1.0 - 基础功能实现
- v1.1 - 添加防火墙配置
- v1.2 - 独立验证脚本
- v1.3 - 改进用户权限管理
许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
免责声明: 本脚本会修改系统配置,请在生产环境使用前充分测试。作者不对使用本脚本造成的任何损失承担责任。