下载:
由于博客附件上传有大小限制,因此,只能把下载链接放到论坛了,在此处:
经过一段时间的修改,增加了一些功能。修改了一些bug。
功能变化如下
(1):把cmserver制作成daemon程序运行。
(2):cmserver运行时标准错误的信息能够返回.
(3):为了安全期间,增加了server端的授权功能,使用机器IP地址作为授权信息,如果某个机器上没有远端机器的IP授权,将不会执行远端机器发送过来的命令。
(4):把cmclient-cmserver-cmctl做成了系统service,随系统自启动,用户可以通过service cmserverd start/stop来控制服务的启动和结束.
(5):增加了主机名解析功能,以前考虑的不充分,只是根据IP去访问,现在增加了gethostbyname来转换成IP地址。
关于授权说明
通过IP地址来授权,比如安装了2000台机器,想通过A机器来访问这2000台机器,使用cmctl工具进行授权
允许A机器访问
cmctl add A机器的IP地址 cmserver.lst
然后把cmserver.lst拷贝到2000台被访问的机器上的/etc目录下。
重启服务
service cmserverd stop
service cmserverd start
即可从A机器去访问2000台客户端了,发送命令能够返回结果。
同样,要禁止某台机器的访问,通过如下方法.
cmctl del A机器IP地址 cmserver.lst
拷贝文件到目标机器的/etc目录下,重启服务。
说明下,cmserver.lst文件是一个加密的队列。
因此,你可以通过多次add操作来添加多个授权IP,也可以通过多次del来去除多个授权IP。
运行环境
linux 2.6.18 bit 32
gcc version 4.1.1 20070105 (Red Hat 4.1.1-52)
安装启动与卸载方法
安装
rpm -ivh cmtools-1.0.0-4.el5.i386.rpm
ldconfig
service cmserverd start
这样客户端就安装启动好了。
试着执行:
root@localhost redhat]# cmclient -p 12345 -h localhost -c "date"
(localhost):[127.0.0.1]
you are not authorized to run command on this host
提示无权运行,因此要进行授权
授权如下:
cmctl add 192.168.1.100 /etc/cmserver.lst
然后再测试"
root@localhost redhat]# cmctl add 192.168.1.100 /etc/cmserver.lst
[root@localhost redhat]# service cmserverd stop
[root@localhost redhat]# service cmserverd start
[root@localhost redhat]# cmclient -p 12345 -h 192.168.1.100 -c "unset LANG;date"
(192.168.1.100):[192.168.1.100]
Thu Jun 2 21:26:51 CST 2011
卸载
rpm -e cmtools
包含的文件列表
会向你的机器部署以下文件
/etc/init.d/cmserverd
/lib/libIce.so.3.3.1
/lib/libIceUtil.so.3.3.1
/usr/bin/cmclient
/usr/bin/cmctl
/usr/bin/cmserver
版权与责任
本软件仅供测试交流使用,如果引起任何可能损失,与作者无关。
欢迎下载测试,有问题及时与我联系喔