Linux系统远程信息

时间:2014-04-16 07:36:40

标签: linux bash

在powerShell中,我可以获得有关其他系统的一些信息,例如:

Get-WmiObject Win32_OperatingSystem -computer  computerName 

我知道在Linux中我可以做类似的事情:

ssh computerName  uptime

但这样我必须输入密码。 可以在没有通行证的情况下完成吗?对磁盘和内存等信息感兴趣,也许都在脚本中运行。谢谢

3 个答案:

答案 0 :(得分:2)

您可以将 ssh 与已注册的 rsa密钥密码一起使用,这允许来自脚本的 ssh 命令。关注this tutorial

配置完成后,可以通过以下方式访问所有bash命令:

ssh root@remoteHost "commands"

使用vnc来查询您的服务器也是必须的,允许您使用负载很少的图形应用程序(xauth和twm就足够了)

答案 1 :(得分:1)

正如其他人所指出的那样,你可以通过使用ssh密钥(谷歌搜索“putty ssh keys”来查找大量教程)而不必每次都输入密码进入远程系统。

但是,如果您的目的是监控远程系统,我认为您提出了错误的问题。如果您想了解有关UNIX计算机的正常运行时间,负载和其他有用的统计信息,可以选择以下几种方法:

前者(SNMP)是一个简单的协议(顾名思义),用于监控网络设备,打印机,UPS系统等。我敢打赌,即使你的家用路由器支持SNMP查询。 SNMP监控工具只通过网络发送查询并解析收到的数据。

后者(Nagios)是一个框架,具有远程服务器各个方面的监控功能,如磁盘负载,应用程序状态,性能等。它可以使用SNMP,并且总体上执行相当复杂的任务,例如确保Web服务器仍在响应特定请求,SMTP服务器正在工作,网络共享未满等等。设置它有点麻烦。第一次,但如果你有一个大型基础设施,这是必须的。

答案 2 :(得分:0)

您可以使用Hping

这是一个面向命令行的TCP / IP数据包汇编器/分析器(界面受到启发ping)。

--tcp-timestamp开关将“猜测”正常运行时间(详情请见Phrack Volume 0x0b, Issue 0x3f, Phile #0x01 of 0x14)。

hping3 --tcp-timestamp -S ip.remote.host -p 80

TCP时间戳不是了解远程服务器正常运行时间的唯一方法。您可以在Why uptime can be dangerous中找到更多想法/工具。