使用一次性使用帐户或脚本重新启动 Exchange Server

使用一次性使用帐户或脚本重新启动 Exchange Server

不确定这是否是实现这一目标的最佳方式,但这是背景和目标。

背景我们是一家小公司。有时我或其他能够处理电子邮件中断的人不在场……通常只需重新启动旧的、破旧的交换箱即可使其重新上线……这显然是一个临时解决方案,直到我能找到特定中断的原因。但我们的想法是将由此导致的停机时间限制在我们的呼叫中心。

目标:我想设置一次性使用的管理员帐户。或者编写一个脚本,让用户只需重新启动服务器即可。

了解此用户当前帐户仅限于域用户,而不是任何类型的管理员。

附加信息一次性使用帐户的理念是用户只能使用一次。登录进行更改,一旦完成并注销,帐户将被锁定或密码更改或禁用。任何阻止他们再次使用它的方法。这样,用户就有责任仅在紧急情况下使用它并用于其预期目的,而不是将其作为调整其有限帐户或安装软件等的简单方法。

至于脚本,我理解由于标准用户的权限有限,该用户无法使用其当前权限远程对交换框执行 PSSHUTDOWN.EXE。因此,我们必须想出一个好方法来允许用户重新启动。应该是一个简单的 VB 脚本,这不是问题所在。我的问题是创建某种形式的安全性,允许他们输入密码即可开始该过程。如果您可以在脚本中包含停止服务,则可以获得加分。一旦我看到您如何实现第一个,我就可以填写其他内容。net stop“Microsoft Exchange Information Store”

我觉得第二个计划似乎更安全。这样我就可以通过隐蔽的方式使用安全性。不告诉他 RDP 端口,也不让他实际进入系统,而是仅使用密码来激活重启。

因此,非常感谢您的帮助。或者也欢迎您提出其他建议。

答案1

虽然有些笨拙,但也许会起作用......

在其他机器上设置计划任务,设置为通过特定用户启动 psshutdown。授予您的走狗足够的权限来启动该任务。不要给它一个时间表。当 Exchange 需要被触发时,他们可以右键单击运行它。

缺点是他们可以随时这样做,但这也是他们所能做的一切。

答案2

使用 PowerShell 我认为这应该可行,尽管出于显而易见的原因,我根本没有测试过。我建议创建一个 Exchange 管理员帐户,将其添加到 Exchange 服务器的本地管理员组。在 AD 中授予此帐户完全权限本身(我实际上不确定用户帐户是否默认能够自行禁用)。然后将下面的 PowerShell 脚本保存在网络上,并在要运行它的人的桌面上放置一个快捷方式 CMD 文件。向他们展示如何使用“以其他用户身份运行”功能(右键单击时按住 Shift)。CMD 文件只需要:

powershell .\\服务器\共享\脚本.ps1

PowerShell 脚本可以很短:

# Stop the service
(get-wmiobject win32_service -filter "name='Spooler'" -computername ComputerName).StopService()

# check service status
# Add a While loop if needed
(get-wmiobject -query "select * from win32_service where name='Spooler'" -computername ComputerName).state # this will return the state of the named service


restart-computer -computername ExchangeServerName

# Import ActiveDirectory module
Import-Module active*

# disable the account
# substitute $username with the newly created account
# or perhaps with $env:USERNAME using RunAs might work right...
set-user $username -Enabled $false

用户可以拥有密码,因为一旦运行此脚本,它将禁用该帐户,直到您或具有适当凭据的用户可以重新启用它。

此外,出于安全考虑,您可能希望将新帐户纳入策略,以防止其以交互方式或其他方式登录。在应用于 [可能是所有工作站和服务器] 的 GPO 中:计算机配置\Windows 设置\安全设置\本地策略\用户权限分配\拒绝本地登录拒绝通过远程桌面服务登录

相关内容