你怎么能告诉服务器实际上做了什么?

我已经交了3个Linux的盒子,其中一个正面临着apache,另外两个,据我所知,并没有做太多的事情。 所有在Redhat上运行。

问题很简单:我怎么知道服务器在做什么? 零文档可从创build者处获得。

拔下以太网电缆,看看谁不高兴。

但严重的是,这样的神秘机器为团队造成了很大的精神负担,而且往往不能提供商业价值。 和老板交谈,如果没有人知道它的作用,也许没有人关心它的作用。

对于Serverfault格式,这是一个相当广泛的问题,但这是一个好的开始:

  • 检查正在运行的进程以及计划在系统启动时运行的进程。
    • 检查每个的运行configuration。
    • 查看任何已定义的数据目录。 (也许有人安装MySQL并打开它,但没有数据库。)
  • 检查计划的任务。
  • 检查日志,看看;
    • 谁最近login(并询问他们)
    • 并了解正在运行的内容。

你没有提到版本,所以我省略了具体细节。

有几件事你可以做,以确定你的系统上运行的是什么。

您可以检查服务器正在侦听的端口,以了解其中的内容。 一个好的命令是:

[root@server ~]# netstat -tulpn Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address Stat e PID/Program name tcp 0 0 0.0.0.0:139 0.0.0.0:* LIST EN 1880/smbd tcp 0 0 0.0.0.0:5666 0.0.0.0:* LIST EN 1911/nrpe tcp 0 0 0.0.0.0:22 0.0.0.0:* LIST EN 1759/sshd 

从上面的示例输出中可以看到,它向您显示协议版本(tcp或udp),正在侦听的地址,打开的端口以及正在侦听的程序。

在上面截断的例子(服务器机器)中,您可以看到tcp端口139,5666和22正在侦听。 这些解决scheme分别parsing为samba,nrpe(Nagios代理)和ssh,并在您检查在该端口上侦听的程序时得到确认。

此外,您可以检查configuration为在启动时启动的守护程序列表,为此,请运行: chkconfig --list | grep "3:on" chkconfig --list | grep "3:on"

例:

 [root@server ~]# chkconfig --list | grep "3:on" NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off acpid 0:off 1:off 2:on 3:on 4:on 5:on 6:off sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off sysstat 0:off 1:on 2:on 3:on 4:on 5:on 6:off udev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off vncserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off webmin 0:off 1:off 2:on 3:on 4:off 5:on 6:off x2gocleansessions 0:off 1:off 2:on 3:on 4:on 5:on 6:off . . . 

要么 :

service --status-all

另一种方法是检查/etc目录并查看修改date。 全新安装后,该目录中的所有文件应该具有大致相同的date/时间。 而且由于安装通常会安装很多人们通常不用的东西,只有修改date较晚文件反映了服务器的实际用途 。 如果这是ext4,你也应该能够提取目录的出生date,所以任务可以很容易。

另一种方法是检查.bash_history文件以查看pipe理员所要做的事情。 这个文件可以提供丰富的知识。

检查防火墙规则。 有一点运气,它被configuration为默认拒绝。 这意味着每个允许的服务都有一个明确的规则。

这比netstat更好,因为它也可以显示为夜间备份打开的端口。

我还没有看到一个答案:检查最近修改的文件。 日志,数据库文件,其他输出文件等可能会被写入仍可能提供的线索:

 find . -mtime -3 

那会在当前目录中find修改过的文件,并在最近3天内发生更改。 将数字3增加到一个有教养的猜测,直到你得到一些你可以调查的输出。

不是简单的,因为这些框可能只是处理一些Web服务调用,返回一些数据,而不会写任何东西。 但是,在上面提到的大混合中,它可能只是产生一些线索。