用于Windows的SSH替代scheme

可能重复:
什么是应用程序部署的stream行(免费)选项?

我的办公室里有20-30个Windows客户端。 我需要以编程方式访问它们中的每一个,并在其上安装一些软件。

什么是最简单的方式来实现这样的东西,而不使用任何货架软件,但只是从编码?

我会在Linux上做的是我会使用scp来传输文件的可执行文件,并通过SSH连接运行该可执行文件(我甚至不知道这是在Linux上正确的方式)。

一个非常常用且非常有用的工具是psexec ,它将允许您在远程计算机上执行命令,并在必要时将该文件复制到目标计算机。 你会发现其他的方便。

只是一个单挑 – 大多数杀毒软件反对psexec,所以你需要为它设置一个例外。

来自Sysinternals / Microsoft的psexec将允许您在远程服务器上执行命令。 您可以使用标准networking驱动器将文件放到每台计算机上。

如果是MSI文件,则可以通过Active Directory系统上的GPO策略运行。

另一种方法是获得以编程方式运行的脚本软件,因此您需要将安装程序软件放在共享位置,然后转到每台计算机并运行脚本文件以执行所有操作,如AutoIT(免费)。

我们已经看过自动安装方法,并且我们还没有发现任何安装程序的每种forms都是可靠的。 有时候,我们发现某些工作已经接近完成,但是会在相当不方便的时候中断,而其他时候,我们发现一个安装程序不会对我们所find的自动化方法做任何事情。 这也取决于你的环境是多么一致,因为有时候你可能会有一个configuration引发一个错误或者你没有testing的exception对话框,而且自动化似乎不是那样的。

无论select哪种方法,都要确保对它进行testing,然后再进行testing,然后再进行testing,并忘记testing结果,认为这只是起作用。

如果你的机器在一个域中,你可以使用组策略来部署软件,也许这会适合你?

http://support.microsoft.com/kb/816102

您还可以使用PowerShell远程pipe理这些框。 使用PowerShell,您可以执行许多任务,包括pipe理他们的软件。

根据Windows的版本,他们可能已经安装了PowerShell。 NT6及以上已经安装,只需要configuration…你可以很容易地通过组策略对象。 如果他们是Windows XP客户端(对不起!),那么您将需要安装位。

基本上你需要configurationPowerShell,打开这些客户端上的防火墙,然后走开。 PowerShell使用WS-Management协议(开放标准是好的)。