Bru*_*ger 22
两用问题!软件考古学家或邪恶的黑客都可以使用这个问题的答案!现在,我是谁?
我总是用ps -ef
vsps -augxww
来找出我在做什么。Linux 和 System V 机器倾向于喜欢“-ef”和“-augxww”上的错误,对于 BSD 和旧的 SunOS 机器反之亦然。的输出也ps
可以让你知道很多。
如果你能以root身份登录,这是一台Linux机器,你应该做的lsusb
和lspci
-这将让你的方式80%对知道硬件是个什么情况。dmesg | more
可以帮助您了解任何当前的问题。
它开始被淘汰,但这样做ifconfig -a
通常可以告诉你很多关于网络接口和网络的信息。运行mii-tool
和/或ethtool
在您在ifconfig
输出中看到的看起来像有线以太网的接口上也可以为您提供一些信息。
Runninip route
或netstat -r
可以提供有关 Internet 协议路由的信息,也可能是有关正在使用的网络接口的信息。
一个mount
调用可以告诉你的磁盘(S)和他们是如何安装。
运行uptime
,然后last | more
可以告诉您有关当前维护状态的信息。100 多天的正常运行时间可能意味着“是时候更换机油和液体了”,打个比方。跑步who
也是
查看/etc/resolv.conf
并/etc/hosts
可以告诉您该机器的 DNS 设置。也许做nslookup google.com
或dig bing.com
看看DNS是否主要功能。
始终值得关注哪些错误(“未找到命令”)和哪些命令变体(“ps -ef”与“ps augxww”)可以确定您最终使用的是哪种 Unix 或 Linux 或 BSD 变体。
C 编译器的存在与否以及它的位置很重要。做which cc
或更好,which -a cc
找到他们。
http://bhami.com/rosetta.html可能便于查看,否则我通常会在/etc
(帐户、初始化内容、操作系统风格的提示等)下浏览crontab -l
并查看ps
列表以了解要了解的内容。
此外,“以 root 身份”也非常可怕,因为我不得不修复系统,其中 Linux 管理员进行此类调查时将所有 Solaris 主机名设置为-f
.
也是df
一个危险的命令,是一个很好的方式来解决阻塞 I/O 的问题。所以永远不要运行它,直到你至少调查了坐骑,或者知道你可以以某种方式打开另一个会话。
使用非常简单的命令 ( uname
, cd /etc; ls
, cat
, $PAGER
) 直到您弄清楚主机是什么,如果您不熟悉它,请检查 rosetta 或始终阅读手册页,然后再假设某个命令或命令的标志执行它的功能更受欢迎的系统。
dmidecode
并且lspci
通常会让您对系统上运行的硬件有一个很好的了解。如果这是通常运行的服务器,netstat -tlpn
则会泄露服务器的用途。df -hP
是检查系统上当前存储的好命令。lsb_release -a
应该让您知道您在使用什么发行版:
[root@vle02 ~]# lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 6.7 (Santiago)
Release: 6.7
Codename: Santiago
Run Code Online (Sandbox Code Playgroud)
运行last
应该让您知道谁在使用该系统。假设您已合法访问此服务器,通常您只需向登录该服务器的其中一位人员询问有关它的更多信息。
对于供应商中立的安全检查:通常防火墙将具有唯一的配置数据,因此运行 aiptables -nvL
很有用。您还应该查看发行版的 pam 配置文件,看看您是只使用本地用户还是配置为使用 ldap/kerberos/winbind/sssd/whatever。
您还可以检查netstat -tlpn
. 例如,如果您看到 apache,您可以查看/etc/http/conf/httpd.conf
(在 RHEL 上,/etc/apache2
在 Ubuntu 上)并尝试查看正在运行的网站。或者,您可以执行 aapachectl -S
来获取所有配置的虚拟主机的列表。它有点从那里出来,所以我真正能做的就是提供 apache 作为一个例子,如果它是别的东西,就说验证守护进程的配置。
在 RHEL 上,我还会检查rpm -qa --last | head
他们上次进行系统更新的时间。我还会检查是否通过以下方式启用了 SELinuxgetenforce