返回列表 发帖

NT管理员的利器--PsExec

一般来说,对于远程管理NT、2000服务器的管理员而言,要在服务器上运行一些命令或执行管理任务的时候,特别是面临在大批自己管辖区的机器上远程执行同一个控制命令的时候,在没有工具或可以使用在脚本中的命令行工具的帮助下,这种工作对于管理员而言就是很烦琐的体力劳动。
目前常见的可以实现这种远程执行命令的方式有:图形远程控制工具,如pcAny,Remote XXX之类,但是显然需要在每台机器上都装一个server端,费力费资源,并且使用图形界面,无法写成脚本大批量运作;某些非图形控制的木马,不过估计很少有管理员在自己的管区内能够容忍木马横行;telnet或ssh或r系列协议,这些倒是命令行方式的方法,但是也有很明显的缺陷,比如你要执行的命令是服务器上没有的,你需要上传先,然后再执行,你也没法批处理了;还可以通过AT方式使用计划服务来在服务器上执行命令,但是由于at的先天性安全需要以及at服务只能够用system权限来行事等等缺点,还是不够完美。
综上所述,我们需要的是一个远程执行命令、能够放到脚本中批处理、非图形方式、不使用telnet,ssh,r系列协议、允许用服务器上任何用户身份执行命令的工具,下面就是我要介绍的这个工具---PsExec.exe
http://www.sysinternals.com/files/psexec.zip
它的使用方法:
Usage
usage: psexec \\computer [-u username [-p password]] [-s] [-c [-f]] [-d] program [arguments]
-u Specifies optional user name for login to remote computer.
-p Specifies optional password for user name. If you omit this you will be prompted to enter a hidden password.
-s Run remote process in the System account .
-c Copy the specified program to the remote system for execution. If you omit this option then the application must be in the system's path on the remote system.
-f Copy the specified program to the remote system even if the file already exists on the remote system.
-d Don't wait for application to terminate. Only use this option for non-interactive applications.
program Name of the program to execute.
arguments Arguments to pass (note that file paths must be absolute paths on the target system)
英文我就懒得解释了,说明一下注意的地方:
1.如果是客户端是2k的机器(就是运行psexec的机器),那么如果服务器是2k,服务器和客户端的所有数据传输都是通过445端口进行。如果是服务器非2k,需要135和139端口。
2. 进程在服务器上运行后,为后台执行,当前的控制台将看不到这个程序在运行,这个功能类似于unix下的后台执行命令。但是可以通过任务管理器看到这个在运行的程序。
3.客户端的输入可以直接传送到服务器的程序中,但是客户端看不到回显。
4.服务器端的执行结果和回显都会显示到客户端上。
5.它能够实现本文开始说的那些功能。
6.不过不要把这个程序用于其它一切不正当途径。

NT管理员的利器--PsExec

pstool

TOP

返回列表 回复 发帖