如何使用命令行界面连接到Windows服务器?(CLI)


90

尤其是可以在Server 2008及更高版本中安装Server Core的选项,通过一种CLI功能连接到Windows服务器变得越来越有用,即使这不是Windows管理员中非常普遍的一种功能。

实际上每一个Windows GUI管理工具必须连接到远程计算机的选项,但目前在没有这样的选项,内置的Windows CLIcmd.exe),它给人的最初印象,这也许是不可能的。

是否可以使用CLI远程管理或管理Windows Server?如果是这样,有什么选择可以实现这一目标?

Answers:


102

有几个相当简单的选项可用于使用命令行远程管理远程Windows Server,包括一些本机选项。

本机选项:

  1. WinRS / WinRM

    • Windows远程命令行管理程序/管理工具是在命令行实用程序中远程管理远程Windows服务器的最简单方法,并且与大多数Windows命令行实用程序一样,ss64在其选项和语法上有不错的介绍
    • 尽管没有在Microsoft文档中明确说明,但可以将其用于启动的远程实例cmd.exe,该实例在远程系统上创建交互式命令行,而不是用作在远程服务器上执行单个命令的命令行选项。
      • 与: winrs -r:myserver.mydomain.tld cmd
    • 这也是本机支持的选项BSD,对于主要CLI基于其他系统的其他系统(* nix 等)的管理员可能最熟悉。

  2. 电源外壳

  3. 远程桌面

    • 作为Window CLI选项,可能并不是第一件事,但是,当然,使用mstsc.exe通过远程桌面协议(RDP)连接到服务器确实可以在远程服务器上使用命令行。
    • RDP实际上,可以通过服务器连接到Server Core安装,并且将提供与连接控制台相同的界面-的实例cmd.exe

热门的非本机选项:

即使Windows现在提供了一些本机选项来访问上的远程服务器CLI,但情况并非总是如此,因此,创建了许多相当受欢迎的第三方解决方案。以下是最值得注意的三个。

  1. 在Windows Server上安装SSH

    • 如果您只是必须具备SSH,这也是一个选择,并且social.technet上一个指南,介绍如何在Server 2008上安装OpenSSH。
    • 对于为此目的BSD大量使用的其他系统(* nix 等)的管理员来说,这可能是最有用的SSH,尽管对于只有Windows的管理员来说,使用单个终端仿真器客户端(如PuTTY)存储许多目标计算机和每个计算机的自定义(或标准化)设置。

  2. PSExec

    • 最初是通过Windows在Windows盒子上执行远程命令的选项CLI,这是出色的SysInternals套件的一部分。SysInternals工具是Windows管理员为数不多的“必备”软件包之一,它受到广泛的尊重和使用,以至于SyInternals被Microsoft收购,现在这些工具已得到Microsoft的正式支持。
    • WinRS/一样RMPSExec可用于向远程服务器发出单个命令,或cmd.exe在远程计算机上启动交互式实例。
      • 与: psexec \\myserver.mydomain.tld cmd
    • 与其他选项一样,必须首先执行一些步骤,以确保PSExec实际上能够连接到目标计算机

  3. 将实用程序文件夹添加到服务器,并将其值存储在%PATH%系统变量中

    • 正如评论中所指出的那样,有许多优秀的SysInternals程序可以在命令行上执行并针对远程系统,这不仅仅是SysInternals的事实。
    • 基本上,将一包您喜欢的Windows实用程序打包成一个文件夹,然后将其%PATH%推送到所有服务器,然后将该文件夹添加到系统的环境变量中。两者都很容易完成GPO
      • (我将SysInternals SuitePuTTYWinDirStat和一堆我发现自己正在重复使用的自定义脚本包含在一个文件夹中,该文件夹被推送到我的所有服务器上
    • 显然,这不仅对通过进行Windows系统管理有用CLI,但我发现它是如此有用,无论如何我还是认为值得。

6
不要忘记其他PSTools,例如PSList,PSKill等。PSExec只是该工具集的一小部分,而且大多数未被充分利用。
John Gardeniers 2012年

4
我还要添加一些命令行实用程序,例如shutdowniisreset(如果已安装IIS),它们可以指定要在其上执行的计算机,因此可以远程使用。
Joshua Drake 2012年

1
您为什么不提及Telnet服务器功能?
abatishchev

3
@abatishchev因为在这个时代,没有人可以为任何东西运行telnet服务器。
HopelessN00b 2013年

1
正确配置并在安全环境中运行时,可以很好地执行控制台命令。
abatishchev

5

仅出于完整性考虑:尽管由于各种原因它可能不是最佳解决方案,但是每个Windows系统都支持Telnet服务,可以从功能列表中启用该服务。

微软的telnet实现也支持NTLM身份验证,因此,与标准telnet到Unix系统不同,使用telnet时不会在网络上发送明文密码。


telnet服务器已在Windows 10中删除
typelogic

仅在没有其他安全方法可行时才使用此功能。流量仍应通过安全的vpn
mit
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.