我是服务器管理领域的新手,我确信我的服务器非常不安全。我已经通过了 WHM CPanel 安全检查,但我确信,对于真正的专家来说,这种检查很愚蠢,远远没有达到应有的水平。我应该注意哪些事情?
答案1
前几天我在这里回答了一个类似的问题:
检查是否存在妥协......
/tmp 中的可疑文件。Web 树中的文件是意外的。
加载的内核模块看起来可疑。(lsmod
)
不应该运行的进程正在运行。(ps aufx
)
活动网络连接。(netstat
)
当前打开的文件描述符。(lsof
)
最终,如果服务器受到威胁,正确的做法是隔离、映像和重建。
编辑1
巴特提出了非常好的观点;特别是如果你认为本地系统受到了损害,你就根本不能信任它。
一旦成像,您就可以使用已知的可信实用程序来操作图像(和文件系统)以进行进一步的取证。
在交换机上转储流量或tcpdump
在本地系统上运行也可能有用。
编辑2
我实际上曾经从已知良好的系统复制过实用程序,并在远程服务器上使用过。虽然不理想,但总比没有好。
答案2
我已经在评论中提出了一些观点,但为了巩固一些想法......
你问的是什么?潜在的攻击媒介?
开箱即用,当今的 Linux 安装中通常没有太多需要您立即担心的问题。大多数人通过安装新程序和更改配置在 Linux 系统中引入漏洞。
为了给您提供更好的建议,您需要明确自己在做什么。家庭服务器?数据库服务器?Web 服务器?工作站?
如果您运行的数据库服务器没有清理输入并且设法对后端数据库进行 SQL 注入攻击,那么即使安装了所有补丁和更新的系统仍会暴露信息。
一般来说,您可以按照在任何其他系统上需要的方式进行操作。定期更新。使用执行某些操作所需的最小权限(不要一直以 root 身份运行)。不要使用明文密码登录(使用 SSH 远程管理系统)。不要运行不必要的服务(如果您不使用远程桌面/VNC,请将其关闭;如果您不使用 Web 服务器,请将其运行,等等)。使用强密码。定期检查日志以查找异常行为。了解您的系统如何运行,以便您知道什么是“奇怪的”。监控日志以查找异常访问尝试。安装拒绝主机并将其配置为锁定尝试通过 SSH 进行登录访问的 IP,或将其移动几个端口,使其不受机器人攻击。使用 NMAP 检查您打开了哪些端口(从另一台机器)。使用 SAINT 之类的工具(在谷歌上搜索漏洞审计工具)审计您的机器。离开时不要让您的工作站保持登录状态。
chkrootkit 和 rkhunter 之类的工具有助于提供一些指导和安心,tripwire 之类的哈希实用程序也是如此,但它们会增加您的维护工作量。您需要坐下来平衡可用性与安全性需求,并根据需要应用它们(每次更改一组文件或运行系统更新时,额外的哈希生成和存储是否值得,与服务器丢失时可能造成的时间和金钱损失相比?)
确保你有良好的备份习惯。如果有人入侵了服务器,而你最早的备份包含这种入侵行为,那么实时数据的副本就毫无用处了。
如果您认为系统已被破解,则切勿信任它。我喜欢将 devil linux 用于设备用途,因为除了数据暂存区(例如代理服务器)之外,破解它是不可能做到的;它从 CD 启动并运行,因此没有人可以替换二进制文件。我想他们可以在内存中修补它们,但重新启动会清除它。
如果您需要处理更严格的安全需求,请将您的日志回显到另一台服务器。不要对所有东西都使用相同的密码。如果您的服务器受到攻击,他们就会获得所有密码(我曾经读到过有人建立了一个色情网站,然后监视登录名和电子邮件地址等进入日志的信息……他们认为他们可以转而使用相同的密码破解其他网站,因为大多数人在工作场所和家中使用的密码方案与商业网站相同)。
这些是最重要的问题。同样,这完全是在可用性和安全性之间取得平衡的问题,以及如果服务器和网络上的东西丢失,您将会损失多少。如果有人接管了一个不起眼的小型文件服务器或很少使用的内部 Web 服务器,Linux 很容易被用来重定向 ARP 请求并充当路由器来嗅探流量,以便它可以看到网络上的其他东西,因此即使是微不足道的服务器也可能成为重大威胁。由于您没有说明服务器和角色是什么或位置是什么,因此很难告诉您具体情况(例如,“哇!如果您不得不问起信用卡信息存储,您不会想碰它!这些东西受到严格监管!”或“永远不要存储未散列的密码。永远不要以纯文本形式存储。”)
答案3
答案4
虽然这非常复杂(不要说我没有警告过你)。NeXpose 有社区版[rapid7.com] 可用于扫描漏洞。您还可以将其与Metasploit[www.metaploit.com]。准备好阅读一些繁琐的内容。但如果你仔细阅读,你会变得更聪明。这些甚至是一些安全专家使用的工具。
参与社区并进行研究!被攻击(以及攻击他人)可能非常复杂。
如果您已经或怀疑自己受到了攻击,最好的办法是从备份重新安装或进行全新安装。使用提供校验和[en.wikipedia.com] 下载
如果他们知道自己在做什么,他们甚至可以修改系统上的编译器,在新的编译中编译“恶意软件”。
编辑:这些工具用于检查您是否可以被利用。它们不会检查您是否受到攻击。