windows远程管理小结

     前段时间研究了一下Windows 的远程管理,希望可以在以后测试机房自动化管理中运用。由于对Windows 的一些工作机制与原理不熟悉,所以这个学习的过程也不是很顺利。不过也有了一些初步的认识,现在就简单的总结一下,希望对大家也能有一些帮助。

一、Atschtasks 命令

    AT 命令是Windows XP 中内置的命令,它也可以媲美Windows 中的“计划任务”,而且在计划的安排、任务的管理、工作事务的处理方面,AT 命令具有更强大更神通的功能。AT 命令可在指定时间和日期、在指定计算机上运行命令和程序 。以下是一些示例:

  1. 定时关机:at 21:00 shutdown -s -t 10 //21:00 时,电脑会出现“系统关机”对话框,并延时10 秒自动关机

  2. 定时提醒:at 10:00 net send 172.30.23.9 开会时间到了!// 其中net sendwindows 的内置命令,172.30.23.9 是本机IPnet send 依赖于“messenger ”服务,在用此命令时要将“Messenger ”服务开启。

At 命令的其它用法大家可以输入At/? 详细了解。关于在指定计算机上运行命令和程序的一点说明:

1. 当前计算机用户是必须是远程控制计算机的Administratos 组的成员(因为At 命令并没有提供用户名和口令选项)

2. 将远程计算机的注册表项HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Lsa/forceguest 的值改为 0

以下是一个示例:

Xp-01 上执行如下命令:

Xp-01 上执行如下命令:

从图上可以看到任务已成功添加,15:45xp-02 将自动打开记事本。

 

    Schtasks 命令是计划和任务的命令行版本。 安排命令和程序,使其定期运行或在指定时间运行。向计划中添加任务和从中删除任务、根据需要启动和停止任务以及显示和更改计划的任务。下面是一些示例:

1. 在本机上添加任务(添加一个打开记事本的任务,此任务只执行一次,在15:53:00 开始执行。)

2. 在远程计算机上添加任务(添加一个打开记事本的任务,此任务只执行一次,在16:20:00 开始执行。)

xp-02 截图如下:从截图上可以看到notepad 任务已成功执行。

 

二、获得远程计算机的信息

1.tasklist 命令

tasklist 可以获得计算机的进程信息。比如要获得当我的工作机中内存占用超过5000K 的进程信息,可以在Xp-01 (虚拟机)上执行以下命令:

问题:虚拟机可以查询物理机的进程信息,但物理机到虚拟机以及虚拟机之间的查询均会失败。会收到如下错误信息:

估计是虚拟网卡与物理网卡没有配置端口映射所致。

 

2.WMI

   WMI Windows 2K/XP 管理系统的核心;对于其他的Win32 操作系统,WMI 是一个有用的插件。WMICIMOM 为基础,CIMOM 即公共信息模型对象管理器(Common Information Model Object Manager ),是一个描述操作系统构成单元的对象数据库,为MMC 和脚本程序提供了一个访问操作系统构成单元的公共接口。可以简单的将WMI 理解为一个类库,通过这个类库可以很方便的查询计算机的各种信息,包括软件与硬件。WMI 遵循了很多业界的管理标准,比如CIMOMWBEMCIMDTMF 等,所以能够很方便的得到这些信息。光是这些名词就让人头大了,不过我们可以先不管它,先看看WMI 到底怎么用,最近刚好在学习Powershell ,就介绍一下在Powershell 中如何使用Powershell

 

  通过Get-wmiobject -list 命令可以列出本地计算机中可用的WMI 类列表。通过指定计算机名可以列出指定计算机中可用的WMI 类列表。在刚学到这里时,就很迫不急待想看看远程计算机中的信息,所以就输入 Get-wmiobject -list -computername 172.30.23.110 , 但结果很令我失望,是一堆错误信息。以往的经验告诉我,查看远程计算机信息时肯定需要提供用户名和密码的。所以就赶紧输入get-hlp get-wmiobject 查看帮助信息。在所有的参数中找了个遍并没有找到usernamepassword, 只看到一个 -credential 参数好像和安全验证有关系, 该怎么用呢,这又是一个问题。经过不断的尝试,终于搞定。原来powershell 中还有一个 get-credential 命令,专门用来获得用户名和密码作为一个安全凭据保存起来。下面我们就可以很方便的获得远程计算机上的信息了。

 

上面的例子演示了在powershell 中如何使用WMI 获得远程计算机的BIOS 信息和进程信息。当然WMI 还能得到诸如显卡、网卡、磁盘、OS 等其它信息。我这里只是起个抛砖引玉的作用。WMI 只是提供了管理windowsr 的接口,除Powershll 之外其它脚本语言如VBScript 等也可以调用WMI 管理API

 

3.WINRM

      Windows 远程管理(WinRM )是Windows Server 2003 R2Windows VistaWindows Server 2008 中一种新式的方便远程管理的服务。WinRM 是远程管理应用的“服务器”组成部分,并且WinRSWindows 远程Shell )是WinRM 的“客户端”,它在远程管理WinRM 服务器的计算机上运行。然而,我们应该注意到两个计算机必须手动安装WinRS ,还要使WinRM 能够启动并从远程系统传回信息。
   WinRM
基于Web 服务管理(WS-Management )标准。这么说的意思是:WinRM 使用HTTP 协议(80 端口)并且用SOAP 来请求它工作。这样的好处在于HTTP 请求能够非常容易的穿过防火墙进行收发。因而它的好坏在于:它使通过Internet 管理远程Windows PC 更为容易,或者它更容易适合Internet 上存心不良的远程Windows 攻击者。WinRM 使用HTTP 的其它好处在于:如果HTTP 入站通讯被允许,就没有其它端口必需在服务器和客户端上被开放。

   要在Xp 上使用winrm, 需要到微软网站下一个winrm1.1Hotfix package 。下面介绍一下winrm 如何使用. 我在xp2003 server 上安装了Winrm1.1

(1) 2003 上开启Winrm

 

因为我之前曾开启了winrm ,所以会出现上图的情况。若是第一次配置,直接输入winrm quickconfig 回车即可。

(2) xp 上配置winrm 并远程执行命令

首先在xp 上也要开启Winrm ,操作同2003 上一样。然后执行下面的命令:

 

图中,172.30.23.1502003IPwinrm 默认使用Kerberos 认证,要求两台机器在同一域内。因为xp2003 不在同一域内,所以要将2003 加入xp 的信任域。winrs 就是执行远程命令的程序了。从图上我们可以看到在2003 上执行了dir 命令,并且将结果也返回了。我们再执行

 

注意提示符的变化,第一行还是在Xp 机器上,到了第二行与第三行就已经在2003 上了,我们执行了两个notepad 但并没有任何返回。 我们可以去2003 上看一看这两个notepad 到底有没有执行。

 

从图上可以看到,两个notepad 确实运行了,但在2003 上并没有记事本打开,xp 上也没有数据返回。这个问题的原因还不清楚。

powershell V1 对远程的支持很弱,只能通过WMI 。据说V2 加强了远程功能,在我下载的powershell v2 CTP V2 中还无法很好的支持winrm, 正式版可能会解决这个问题。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值