当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

作者:精品下载站 日期:2024-12-14 23:21:38 浏览:15 分类:玩电脑

如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码


在本文中,我们将展示您的远程用户如何在 Windows Server 2022/2019/2016/2012 R2 上具有 RD Web 访问角色的远程桌面服务 (RDS) 服务器上使用特殊 Web 表单来更改过期密码。

无法从远程桌面会话更改过期密码

在 Windows Server 2012 R2 及更高版本中,默认情况下为远程桌面连接启用NLA(网络级身份验证)。如果用户的密码已过期或在其 useraccountcontrol 用户属性中启用了“用户必须在首次登录时更改密码”选项,NLA 会阻止用户连接到 RDP/RDS 主机。您可以禁用 NLA (ref1, ref2),但这在安全性方面并不好。当您尝试使用密码过期的用户帐户连接到 RDSH 服务器(远程桌面会话主机)时,会显示以下错误消息:

An authentication error has occurred.
The Local Security Authority cannot be contacted
Remote computer: lonSrvRDS1
This could be due to an expired password
Please update your password if it has expired.

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

使用 NLA 时,如果远程 RDP 用户除了 RDS 基础设施之外没有其他方式访问企业网络,则无法更改过期密码。当然,您可以要求用户提前直接在 RDP 会话中更改密码,或者通过启用 RDS 主机的交互式登录:在过期前提示用户更改密码GPO 选项(计算机配置 -> Windows 设置 -> 本地策略 -> 安全选项),但由于用户普遍健忘,这种方法并不总是有效。

在 Windows 2012 R2 及更高版本中,远程用户可以通过服务器上具有远程桌面 Web 访问角色的特殊网页手动重置其密码(当前密码或过期密码)。要更改密码,用户必须通过 RDS-WebAccess 登录网页进行身份验证,并使用特殊的 aspx 表单更改密码。

注意。在 Windows Server 2003 中,域用户可以使用小型 Web 应用程序更改过期密码

IISADMPWD

(虽然没有官方支持)。

如何允许远程用户在 RDWeb 访问主机上重置过期密码?

具有远程桌面 Web 访问(RD Web 访问)角色的服务器上提供远程密码更改选项,但默认情况下禁用此功能。

如果您部署了 RDS 服务器场,则可以通过连接 RD 连接代理主机上的部署配置来查找安装了 RDS-WEB-Access 角色的服务器:

Get-RDServer -ConnectionBroker rdcb1.a-d.site| where {$_.roles -eq "RDS-WEB-ACCESS"}

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

要更改密码,请使用位于 C:\Windows\Web\RDWeb\Pages n-USpassword.aspx 文件中的脚本。

如果您使用的是 Windows Server 的本地化版本(没有语言包),password.aspx 文件的路径将有所不同,如下所示:

  • C:\Windows\Web\RDWeb\Pages\fr-FR - 适用于法语版 Windows Server

  • C:\Windows\Web\RDWeb\Pages\de-DE - 适用于德语版本。

要启用密码更改选项,您需要运行 IIS 管理器 控制台 (

inetmgr

)在具有配置的 RD Web 访问角色的服务器上。转到[服务器名称] -> 站点 -> 默认网站 -> RDWeb -> 页面,然后打开应用程序设置部分。

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

在右侧窗格中,找到 PasswordChangeEnabled 参数并将其值更改为 true

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

此外,您还可以在 IIS 配置文件 C:\Windows\Web\RDWeb\Pages\Web.config 中将 PasswordChangeEnabled 参数设置为 True

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

PasswordChangeEnabled 参数允许 Active Directory 用户通过 RD Web 访问门户更改过期密码。此选项不允许更改工作组环境(无域)中 RDS 主机上本地用户的密码。

从控制台重新启动 IIS Web 服务器或使用以下命令:

iisreset 

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

要检查密码更改页面的可用性,请访问以下网页:

https://lonSrvRDS1/RDWeb/Pages/en-US/password.aspx

RD Web 访问必须安装有效的 SSL 证书。您可以在 IIS 中使用免费的 Let’s Encrypt 证书。

输入用户名、旧密码和新密码两次。

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

成功更改用户密码后,应出现以下消息:

Your password has been successfully changed.

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

单击“确定”,用户将被重定向到 RD Web 登录页面。如果用户的密码与域的密码策略不匹配,则会出现警告消息:

Your new password does not meet the length, complexity, or history requirements of your domain. Try choosing a different new password.

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

仅当在 RDWA 服务器上的 IIS 上启用表单身份验证时,您才能在远程桌面 Web 访问服务器上使用此密码更改方式。如果使用Windows 身份验证方法,您将无法通过 RD Web 表单更改密码。

您可以在 IIS 管理器控制台中列出和更改支持的身份验证类型。在右侧窗格中选择“站点”->“默认网站”->“RDWeb”->“页面”,选择表单身份验证

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

现在,当用户尝试使用过期密码连接到 RD Web 访问服务器时,用户将被重定向到 password.aspx 网页并要求更改密码。

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

提示。安装特殊更新 KB2648402 后,您可以使用 RD Web 访问角色更改 Windows Server 2008 R2 上的过期密码。

将密码更改链接添加到 RD Web 访问登录表单

您可以将密码更改表单的链接直接添加到远程桌面 WebAccess 登录表单。这将允许用户随时更改密码,而无需等到密码过期。

将指向password.aspx 文件的链接插入到RDWeb 登录页面(在编辑之前创建password.aspx 文件的备份副本)。

  1. 在 RDWeb 服务器上,在任何文本编辑器(我更喜欢 Notepad++)中找到并打开文件 C:\Windows\Web\RDWeb\Pages n-US\login.aspx

  2. 转到第 429 行(在 Windows Server 2022 中,它位于以下 HTML 块之后

    <tr id="trPasswordExpiredNoChange" <%=strErrorMessageRowStyle%> > … </tr>

    )并粘贴以下代码:

  3. <!-- Begin: Add Change Password Link -->
    <tr>
    <td align="right"> <a href="password.aspx" >Click here </a>to change your password.
    </td>
    </tr>
    <!-- End: Add Change Password Link -->

    [玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

  4. 将更改保存在 login.aspx 文件中,重新启动 IIS 网站,并确保 RD Web 服务器的登录页面上显示指向密码更改页面的链接。

[玩转系统] 如何在 Windows Server 上通过远程桌面 Web 访问更改过期密码

远程用户现在可以更改 RDS 服务器上的过期密码,无需管理员干预。请注意,如果您使用域缓存凭据登录到本地计算机,则在您通过 RDWebAccess 更改 Active Directory 密码后,这些凭据不会更新。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯