18、Windows 10 系统配置与管理全解析

Windows 10 系统配置与管理全解析

在当今数字化办公和教育环境中,Windows 10 系统的配置与管理对于系统管理员来说至关重要。本文将深入探讨 Windows 10 在 VDI 配置、Windows ICD、Kiosk 模式、AutoPilot 模式、Set up School PCs 应用以及设备锁定等方面的相关内容,为管理员提供全面的指导。

1. VDI 配置考量

系统管理员在为运行于 VDI 配置的 Windows 10 创建镜像时,可参考一些优质信息源。ProjectVRC(http://www.projectvrc.com/)曾多年来是很好的信息来源,他们发布过关于 VDI 在各种工作负载下性能指标的白皮书研究,发现浏览器中的基于网络的广告是 VDI 实施中 CPU 消耗的主要原因等有价值信息。虽然该网站近期较为沉寂,但值得收藏以防备用。Brian Madden(http://www.brianmadden.com/)也是不错的知识源,其网站有丰富的 VDI 相关文章。

在 Windows 7 和 8.x 中,管理员通常使用供应商提供的脚本来配置 Windows 镜像以使其成为虚拟机。对于 Windows 10,这种方式仍可行,但微软开始重视 VDI 和远程桌面的使用。微软与 Citrix 合作在 Azure 中为 Windows 10 提供桌面,AWS 也有类似服务。随着这类配置日益普遍,预计微软会提供更简化的 VDI 配置指南。

VDI 部署中常被忽视的一点是从虚拟客户机收集诊断数据的能力。例如,在需要时如何收集完整的内存转储,是否进行用户模式应用程序的错误报告,以及应用程序和监控软件(如数据丢失防护套件)对性能的影响等。这些问题最好在紧急情况下联系微软或其他支持工程师之前就考虑清楚。总之,VDI 解决方案的关键是投入足够资金以确保正确实施,因为很少有神奇的注册表调整能解决 VDI 用户后端存储缓慢的问题。

2. Windows ICD

过去,IT 管理员常购买预装了良好 Windows 操作系统的计算机,然后用企业镜像重新映像以用于企业环境。原因包括原始设备制造商(OEM)预装的无用软件、试用应用程序或错误的 Windows SKU 等。但这是一种低效的过程,实际上只需重新配置一小部分系统。

Windows 10 引入了配置包技术来改变这种情况。配置包是一种配置捆绑包,可设置核心操作系统设置、安装驱动程序或应用程序。微软将设计工具更名为 Windows 配置设计器(WCD,原 Windows 映像和配置设计器),这表明其结束新计算机重新映像的决心。WCD 可在 Windows 10 评估和部署工具包(ADK)的 1703 版本中获取,可单独安装,也可作为新的映像和配置设计捆绑包的一部分,该捆绑包还包括用户状态迁移工具(USMT)和 Windows PE 等以映像为中心的实用工具。

启动新的 WCD 控制台后,IT 管理员会看到几个向导,用于为以下设备创建配置包:
- 桌面设备
- 移动设备
- Surface 集线器
- 信息亭

这些向导会引导管理员完成从设置命名方案、升级到更高的操作系统 SKU、加入 Active Directory(AD)或 Azure AD、卸载预装应用程序到安装应用程序包等所有配置步骤。此外,还有一个高级配置界面,可显示所有配置运行时选项,但一旦项目转换为高级配置,就无法再转换回基于向导的简单项目。

项目配置完成后,IT 管理员可将其导出为可分发和安装的配置包。导出过程可通过加密和签名证书保护配置包,但需注意只有配置包被加密,项目文件中的密码仍为明文。

要将使用可安装客户端驱动程序(ICD)创建的配置包部署到 Windows 10 桌面版,可在设备初始设置时通过 USB 磁盘安装,也可在设置后通过 USB、网络共享或企业端点管理系统安装。设置后部署可通过导航到配置包并双击,或使用 Add - ProvisioningPackage PowerShell cmdlet 以更自动化的方式进行。对于移动设备,可使用“设置”应用中“账户 | 访问工作或学校”区域的“添加或删除配置包”向导,或通过将配置包拖到通过 USB 连接到 Windows PC 的移动设备上来添加配置包。微软现已发布了官方建议,可参考:https://docs.microsoft.com/en - us/windows - server/remote/remote - desktop - services/rds - vdi - recommendations 。不过在撰写本文时,执行这些步骤后无法对镜像进行 sysprep 操作,或许微软会在未来解决这个问题。

3. Windows 10 Kiosk 模式

Windows 10 Kiosk 模式是为有限安全或多用户环境设计的功能,用于限制对单个应用程序的访问。例如,在建筑物大厅的交互式目录场景中,设备需为众多用户提供建筑物目录功能,且无需用户进行身份验证,同时要限制用户访问目录应用程序之外的任何应用程序。

为实现这一目标,Kiosk 模式会用管理员指定的替代应用程序替换默认的 Windows Explorer 外壳。通过替换默认外壳,用户无法访问底层的 Windows 安装,只能使用指定的应用程序。当替换的外壳应用程序关闭时,用户会话结束,无法访问底层操作系统。

管理员在指定 Kiosk 模式应用程序时,需在两种应用程序技术中选择:
- 通用 Windows 平台(UWP):使用 UWP 的现代应用程序可在运行 Windows 10 的任何设备上运行,如平板电脑甚至 Xbox。
- 经典 Windows 应用程序:使用传统 API(如 Win32 或组件对象模型(COM))编写的传统应用程序,仅可在 PC 上运行。

根据所选的信息亭应用程序类型和要配置的 Windows 10 版本,可通过多种方式配置 Kiosk 模式。UWP 应用程序的 Kiosk 模式在 Windows 10 Pro、教育版或企业版中可用,而经典 Win32 应用程序仅在 Windows 10 企业版或教育版中可用。

在 Windows 10 版本 1607 中引入的“配置信息亭设备”向导,可让管理员创建配置包来配置 Windows 10 设备的 Kiosk 模式,而无需重新映像。使用该向导,管理员可配置本章 ICD 中涵盖的各种设置,以及本地信息亭用户账户、自动登录设置和作为外壳的 UWP 或经典应用程序。

如果使用 UWP 应用程序作为信息亭应用程序,可通过“设置”应用手动配置,也可使用 PowerShell 脚本更自动化地配置。Windows 10 企业版或教育版还可使用移动设备管理(MDM)策略或配置包来配置 UWP 信息亭应用程序。

要将经典 Windows 应用程序配置为信息亭应用程序,管理员必须使用 Windows 10 的 Shell 启动器功能,该功能需使用“程序和功能”向导或部署映像服务和管理(DISM)进行安装。启用后,可使用 root\standardcimv2\embedded WMI 命名空间为用户或组配置默认外壳,以及在外壳应用程序退出时应执行的操作,如重新启动外壳应用程序、重启计算机或关闭计算机。

4. AutoPilot 模式

Windows AutoPilot 是一种无需服务器的系统管理方式,类似于微软的 InTune 或 SCCM,可用于管理设备。它需要 Azure AD 和一些基于云的服务,但结果是可以轻松配置和调整设备,并且在恢复或重新配置设备时无需像传统 SCCM 多站点部署架构那样承担高昂的基础设施成本。

在撰写本文时,AutoPilot 的当前功能包括:
- 自动将设备加入 Azure AD
- 自动将设备注册到 MDM 服务(如 Microsoft Intune,需要 Azure AD 高级订阅:https://docs.microsoft.com/en - us/windows/deployment/windows - 10 - auto - pilot#prerequisites)
- 限制管理员账户的创建
- 根据设备配置文件创建并自动将设备分配到配置组
- 自定义特定于组织的开箱即用体验(OOBE)内容

OOBE 的调整是关键。企业现在使用 SCCM 或 MDT 对设备上的 Windows 安装进行一些调整工作,而现在使用 AutoPilot 则是基于云的(当然需要 Azure AD 高级订阅)。这可能最终会让专门从事部署的 IT 专业人员担心他们的长期生存能力,就像现在与 10 年前相比,Exchange 服务器管理员数量减少一样,部署工程师可能也会面临类似情况。预计打包应用程序和调整 unattend.xml 文件的工作将逐渐减少,相关人员最好提前做好准备。由于这是一项相对较新的服务,目前关于它的信息有限,但可以确定的是,与传统部署方式相比,它将带来更轻松的部署体验。

5. Set up School PCs 应用

微软最近发布了一款名为“Set up School PCs”的应用,类似于 WCD,是供教师或学校 IT 人员为学生设置计算机的应用程序。

该应用的特点包括:
- 安装简单,可直接在 Windows 应用商店中安装。该应用与 Azure AD 有紧密联系。
- 向导会引导用户创建一个主 USB 映像,用于操作 Windows 10 设备上的现有映像。虽然该应用可以在不使用 Azure AD 的情况下使用,但为了实现其全部功能,最好使用 Azure AD。否则,在后续集中管理设备时可能会遇到问题。
- 该应用可以创建机器名变量供管理员使用。其最大的亮点是可以移除设备制造商预装的应用程序,这对于任何使用过商店购买的 Windows 设备的人来说都是一大福音,因为这些设备通常预装了很多无用的软件,且有些软件很难正确卸载。用户只需按照向导操作,最终会在 USB 闪存驱动器上获得一个模板,可用于为学校的计算机进行正确配置,以满足学生的使用需求。

6. 设备锁定

Windows 8 是微软最后一个将嵌入式版本作为正式 SKU 发布的操作系统。在 Windows 10 中,可直接对 Windows 10 企业版(或教育版)安装或映像文件进行定制。可用于修改映像的定制选项位于设备锁定区域的 Windows 功能中。过去为 Windows Embedded 创建映像的人员会熟悉这些选项和功能。这些功能仅在 Windows 10 企业版和教育版中可用,虽然在 Windows 10 专业版安装中也可见,但在专业版中可能无法正常工作,甚至可能违反许可条款。

设备锁定包括以下几个方面:
- 自定义登录 :可修改登录屏幕以移除某些系统组件。具体的注册表设置包括:
- AnimationDisabled:禁用新 Windows 登录时显示的动画屏幕,避免出现“嗨,我正在整理你的文件”这样烦人的提示。
- BrandingNeutral:可禁用电源按钮、语言按钮、辅助功能、切换用户等。
- HideAutoLogonUI:如果为设备启用自动登录,此设置可隐藏或显示登录过程中的 Windows 欢迎屏幕。
- NoLockScreen:对于信息亭和其他设备很有用,可在机器空闲时不显示锁定屏幕。
- 键盘过滤器 :用于防止诸如 PrtScrn 键和 Ctrl + Alt + Delete 组合键等执行其正常功能。对于可能被未知人员使用的受管理工作站或站点(如机场的信息亭、ATM 机、医疗设备等),这是一种很好的锁定方式,可防止篡改。以下是一个修改键行为的示例 PowerShell 脚本:

#
# Copyright (C) Microsoft. All rights reserved.
#
<#
.Synopsis
    This script shows how to use the built in WMI providers to enable and add 
    keyboard filter rules through Windows PowerShell on the local computer.
.Parameter ComputerName
    Optional parameter to specify a remote machine that this script should
    manage. If not specified, the script will execute all WMI operations
    locally.
#>
param (
    [String] $ComputerName
)

$CommonParams = @{"namespace"="root\standardcimv2\embedded"}
$CommonParams += $PSBoundParameters

function Enable-Predefined-Key($Id) {
    <#
    .Synopsis
        Toggle on a Predefined Key keyboard filter Rule
    .Description
        Use Get-WMIObject to enumerate all WEKF_PredefinedKey instances,
        filter against key value "Id", and set that instance's "Enabled"
        property to 1/true.
    .Example
        Enable-Predefined-Key "Ctrl+Alt+Delete"

        Enable CAD filtering
    #>

    $predefined = Get-WMIObject -class WEKF_PredefinedKey @CommonParams |
        where {
            $_.Id -eq "$Id"
        };

    if ($predefined) {
        $predefined.Enabled = 1;
        $predefined.Put() | Out-Null;
        Write-Host Enabled $Id

    } else {
        Write-Error “$Id is not a valid predefined key”
    }
}


function Enable-Custom-Key($Id) {
    <#
    .Synopsis
        Toggle on a Custom Key keyboard filter Rule
    .Description
        Use Get-WMIObject to enumerate all WEKF_CustomKey instances,
        filter against key value "Id", and set that instance's "Enabled"
        property to 1/true.

        In the case that the Custom instance does not exist, add a new
        instance of WEKF_CustomKey using Set-WMIInstance.
    .Example
        Enable-Custom-Key "Ctrl+V"

        Enable filtering of the Ctrl + V sequence.
    #>

    $custom = Get-WMIObject -class WEKF_CustomKey @CommonParams |
        where {
            $_.Id -eq "$Id"
        };

    if ($custom) {
        # Rule exists. Just enable it.
        $custom.Enabled = 1;
        $custom.Put() | Out-Null;
        "Enabled Custom Filter $Id.";

    } else {
        Set-WMIInstance -class WEKF_CustomKey -argument @{Id="$Id"} @CommonParams | Out-Null

        "Added Custom Filter $Id.";
    }
}

# Some example uses of the functions defined above.
Enable-Predefined-Key "Ctrl+Alt+Del"
Enable-Predefined-Key "Ctrl+Esc"
Enable-Custom-Key "Ctrl+V"
  • Shell 启动器 :微软允许开发人员为 Windows 创建自己的外壳。目前关于在 Windows 10 中使用此功能的文档尚不完整,但预计其遵循与 Windows Embedded 类似的指南,相关内容可在 MSDN 和 TechNet 上找到。这也是指定 Windows 10 为瘦客户端启动 Citrix 或 VMWare 启动器的方法。在版本 1511 中,此功能称为嵌入式 Shell 启动器,在较新版本中称为自定义 Shell 启动器。通常,需要指定哪些用户使用自定义外壳,目前只能通过 PowerShell 进行控制,相关文档可参考:https://docs.microsoft.com/en - us/windows - hardware/customize/enterprise/shell - launcher 。其概念是让标准或信息亭账户使用自定义外壳登录,而管理员账户可使用默认外壳以执行必要的管理任务。例如,要创建一个互联网浏览信息亭,可编写一个脚本来执行 Internet Explorer 作为启动命令:
start-process -wait -WindowStyle Maximized -FilePath 'c:\program files\internet explorer\iexp

然后使用以下 PowerShell 脚本将其设置为自定义 Shell 启动器:

NET USER kiosk "P@ssw0rd" /ADD
$COMPUTER = "localhost"
$NAMESPACE = "root\standardcimv2\embedded"
# Create a handle to the class instance so we can call the static methods.
$ShellLauncherClass = [wmiclass]"\\$COMPUTER\${NAMESPACE}:WESL_UserSetting"
# This well-known security identifier (SID) corresponds to the BUILTIN\Administrators group.
$Admins_SID = "S-1-5-32-544"
# Create a function to retrieve the SID for a user account on a machine.
function Get-UsernameSID($AccountName) {
    $NTUserObject = New-Object System.Security.Principal.NTAccount($AccountName)
    $NTUserSID = $NTUserObject.Translate([System.Security.Principal.SecurityIdentifier])
    return $NTUserSID.Value
}
# Get the SID for a user account named "Cashier". Rename "Cashier" to an existing account on 
$Cashier_SID = Get-UsernameSID("kiosk")

# Define actions to take when the shell program exits.
$restart_shell = 0
$restart_device = 1
$shutdown_device = 2
# Examples
# Set the command prompt as the default shell, and restart the device if it's closed.
#$ShellLauncherClass.SetDefaultShell("explorer.exe", $restart_device)
# Set Internet Explorer as the shell for "Cashier", and restart the machine if it's closed.
$ShellLauncherClass.SetCustomShell($Cashier_SID, "powershell -executionpolicy bypass -windows
# Set Explorer as the shell for administrators.
$ShellLauncherClass.SetCustomShell($Admins_SID, "explorer.exe")
# View all the custom shells defined.
"`nCurrent settings for custom shells:"
Get-WmiObject -namespace $NAMESPACE -computer $COMPUTER -class WESL_UserSetting | Select Sid,
# Enable Shell Launcher
$ShellLauncherClass.SetEnabled($TRUE)
$ShellLauncherClass.RemoveCustomShell($Admins_SID) 
  • 无品牌启动 :抑制 Windows 启动、恢复或遇到错误时显示的元素。
  • 统一写入过滤器 :安装服务和工具以保护物理媒体免受写入操作。

需要注意的是,勾选这些选项仅启用了功能的配置,还需要进行额外的工作才能正确实现这些功能。

综上所述,Windows 10 在系统配置和管理方面提供了丰富的功能和工具,管理员可根据实际需求进行灵活配置和使用,以满足不同场景下的使用要求。

Windows 10 系统配置与管理全解析

7. 各功能对比总结

为了更清晰地展示 Windows 10 不同配置功能的特点和适用场景,下面将对前面介绍的主要功能进行对比总结:
| 功能名称 | 适用场景 | 主要特点 | 所需版本 |
| — | — | — | — |
| VDI 配置 | 企业虚拟桌面部署 | 需考虑多方面因素,如诊断数据收集等;可参考特定信息源 | 无特定版本限制 |
| Windows ICD | 企业计算机系统配置 | 通过配置包设置系统,避免重新映像;有向导和高级配置界面 | Windows 10 及以上 |
| Windows 10 Kiosk 模式 | 有限安全或多用户环境,如信息亭 | 限制访问单个应用,可选择 UWP 或经典应用 | Pro、教育版、企业版 |
| AutoPilot 模式 | 设备管理 | 无需服务器,基于云服务,可自动完成多项配置 | 需 Azure AD 高级订阅 |
| Set up School PCs 应用 | 学校计算机配置 | 移除预装软件,与 Azure AD 紧密联系 | 无特定版本限制 |
| 设备锁定 | 企业或特定设备安全管理 | 包括自定义登录、键盘过滤等多种锁定方式 | 企业版、教育版 |

通过这个表格,管理员可以快速根据自身需求选择合适的配置功能。

8. 配置流程示例

为了帮助管理员更好地理解如何运用这些功能进行系统配置,下面给出一个综合的配置流程示例,以学校计算机配置为例:

graph LR
    A[开始] --> B[使用 Set up School PCs 应用]
    B --> C{是否使用 Azure AD}
    C -- 是 --> D[创建主 USB 映像并操作现有映像]
    C -- 否 --> E[可能在后续管理中受限,仍可创建 USB 映像]
    D --> F[移除预装应用程序]
    E --> F
    F --> G[配置机器名变量]
    G --> H[考虑是否启用 Kiosk 模式]
    H -- 是 --> I[选择应用类型(UWP 或经典)]
    I -- UWP --> J[使用 Settings 或 PowerShell 配置]
    I -- 经典 --> K[安装 Shell 启动器并配置]
    H -- 否 --> L[跳过 Kiosk 配置]
    J --> M[完成配置,生成模板用于学生计算机]
    K --> M
    L --> M
    M --> N[结束]

这个流程图展示了从开始使用 Set up School PCs 应用到最终完成学校计算机配置的整个过程,其中包含了是否使用 Azure AD、是否启用 Kiosk 模式等关键决策点。

9. 配置注意事项

在进行 Windows 10 系统配置时,还需要注意以下一些事项:
- VDI 配置
- 提前规划好诊断数据收集方式,避免在紧急情况下无法获取所需信息。
- 不要期望通过简单的注册表调整解决后端存储缓慢的问题,应从根本上优化存储方案。
- Windows ICD
- 导出配置包时,注意密码仍为明文,要妥善保管项目文件。
- 执行微软官方建议步骤后,目前可能无法进行 sysprep 操作,需关注后续更新。
- Windows 10 Kiosk 模式
- 根据不同版本和应用类型选择合适的配置方法。
- 配置经典应用为信息亭应用时,要正确安装和使用 Shell 启动器。
- AutoPilot 模式
- 了解 Azure AD 高级订阅的费用和要求。
- 专门从事部署的 IT 人员要提前做好职业规划。
- Set up School PCs 应用
- 为实现全部功能,建议使用 Azure AD 进行集中管理。
- 设备锁定
- 勾选设备锁定功能选项后,要进行额外的配置工作才能使其生效。
- 在专业版中使用设备锁定功能可能违反许可条款,需谨慎操作。

10. 未来趋势展望

随着技术的不断发展,Windows 10 的配置和管理功能也可能会有进一步的变化和发展。例如,AutoPilot 模式可能会更加成熟和普及,减少对传统部署方式的依赖;设备锁定功能可能会增加更多的安全选项,以应对日益复杂的安全威胁;Windows ICD 可能会进一步简化配置过程,提高配置效率。同时,微软可能会加强不同功能之间的集成,使管理员能够更方便地进行综合配置。管理员需要持续关注这些变化,不断学习和掌握新的配置技术,以适应未来的工作需求。

总之,Windows 10 系统的配置与管理是一个复杂而又重要的工作,涉及到多个方面的知识和技能。通过深入了解各功能的特点、适用场景和配置方法,以及注意相关事项和关注未来趋势,管理员可以更好地完成系统配置任务,为企业和学校等组织提供稳定、安全、高效的计算机环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值