【问题标题】:Disable cmd and PowerShell on Windows Server 2012 for clients在 Windows Server 2012 上为客户端禁用 cmd 和 PowerShell
【发布时间】:2015-06-24 07:30:27
【问题描述】:

我使用的是 Windows Server 2012,我想为客户端禁用 cmd 和 PowerShell。我在组策略中进行了搜索,但没有找到可以执行此操作的位置。请问有人可以帮我吗?

【问题讨论】:

  • 对于运行 powershell 脚本,您应该在组策略中配置执行策略时更改执行策略,用户无法运行脚本以更改设置计算机配置 -> 管理模板 -> Windows 组件 -> Windows PowerShell 并配置打开脚本执行设置->只允许签名脚本“脚本必须有数字签名才能运行”
  • @SoheilHashemi - 这不是安全措施,因为用户仍然可以运行 powershell 提示并将执行策略设置回无限制...

标签: cmd server windows-server-2012 clients policies


【解决方案1】:

用户配置 - 管理模板 - 系统 - 阻止访问命令提示符

阻止用户运行交互式命令提示符 Cmd.exe。此设置还确定批处理文件(.cmd 和 .bat)是否可以在计算机上运行。

如果您启用此设置并且用户尝试打开命令窗口,系统会显示一条消息,说明设置阻止该操作。

注意:如果计算机使用登录、注销、启动或关闭批处理文件脚本,或者对于使用终端服务的用户,请不要阻止计算机运行批处理文件。

我对powershell一无所知。

【讨论】:

  • 这里没有安全措施,这只是一种不便。如果仍然允许批处理,那么您可以编写一个 4 行批处理程序作为交互式命令提示符。命令仍然像cmd /c dir 一样运行。用 vbscript/jscript(使用记事本)或大多数其他语言实现一个基本的命令提示符需要 3 分钟。
  • 更多信息:top-password.com/blog/…
【解决方案2】:

禁用对 powershell 的访问:

在这些用户的组策略窗口的左侧,向下滚动到用户配置 > 管理模板 > 系统 > 不要运行指定的 Windows 应用程序。

在打开的属性窗口中,单击“启用”选项,然后单击“显示”按钮。

在“显示内容”窗口中添加 --> powershell.exe

【讨论】:

  • 请注意...用户只需复制并重命名 .exe 即可解决此问题。带有签名的 AppLocker 是我唯一确定的方法......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-31
  • 2016-09-29
  • 1970-01-01
  • 1970-01-01
  • 2015-10-15
  • 2016-10-09
  • 2020-11-19
相关资源
最近更新 更多