从 Linux 安全角度来看,我需要关注哪些服务或程序

从 Linux 安全角度来看,我需要关注哪些服务或程序

我刚刚查看了我的 Web 服务器的日志文件,看到了一些 SSHD 的日志条目。我发现有人不断尝试使用错误的用户名和密码通过 ssh 进行连接。

我只是偶然看到了它。

除了 sshd 日志之外,我还应该关注哪些其他程序/服务/日志以防范可能的黑客攻击。

答案1

只要您设置了强密码、ssh 密钥和类似的保护措施,Linux、ssh、Apache 和其他服务器的基本构建块就相当安全。掌握基本知识是必不可少的。

但!

更有可能的是,在这些构建块上运行的应用程序(例如 WordPress、Drupal 或您的自定义软件)存在安全漏洞。如今,许多黑客通过特制的 URL 进行攻击,其中包含 SQL、奇怪字符和类似内容。这些才是您真正应该做好准备的事情。想想您的服务器可能通过 http 被滥用的方式,并尝试在它们发生之前阻止它们。即使有人无法通过某些 Web 应用程序安全漏洞获得 root 权限,也可以进行许多滥用,例如发送垃圾邮件或 DoSing,即使没有最终的 root 访问权限。

例如,通过创建 webroot 和 /tmp(或为 PHP 定义的任何临时目录)来加强 PHP 的安全性是一个好主意noexec,nosuid,nodev因此,即使有人成功上传了恶意的 C 源文件,他们也无法编译或至少使用 之类的东西轻松运行它system("./myevilrootgainer");。在众多预防措施中,这一简单的预防措施并不是因为 PHP 本身不安全(有时它可能如此,就像所有软件一样),而是因为它使得利用可能的安全漏洞成为可能你的应用更加困难。

答案2

基本上,你应该查看与网络上可用的服务相对应的任何日志。特别是当该服务对整个互联网开放时。

由于您可能安装的服务列表非常庞大,因此实际上没有任何方法可以为您提供单个列表。

例如,如果您安装了像 mysql 这样的数据库服务器并使其可用于网络,那么您应该查看 mysql 日志。

如果 SSH 已打开,则应查看身份验证日志。在此网站上搜索大量涉及使用的问题拒绝主机失败2ban,和/或防火墙来限制您遭受暴力 SSH 攻击。

您应该设置防火墙来阻止访问您系统上的任何内容,除非您确实需要公开的内容。您公开的所有内容都应受到监控。

答案3

哪些服务和程序?

他们全部。

不完全是。

您应该确保不运行任何您不需要的服务。最好确保它们不能运行。

对于任何只能在本地访问的服务,都应在防火墙和配置中阻止外部访问(如果可能)。

确保及时实施供应商/分销商的安全补丁。

当我告诉人们在设置安全管理策略时将日志放在最后一项时,他们通常会感到惊讶:日志只会告诉您有关合法访问、访问失败和功能问题的信息 - 这些都与阻止坏人没有特别的关系。

那么网络 IDS 呢?同样的事情 - 在大多数连接互联网的机器上,你会看到如此多的失败攻击,以至于你无法检测到,更不用说对真正的攻击做出反应了。

请对所有可执行文件/库使用基于主机的 IDS(文件完整性检查器)。它无法阻止攻击 - 但如果您的系统确实受到攻击,至少您有机会从攻击中恢复。

除了 Tripwire 或 L5 之类的东西之外,如果此系统充当互联网上的服务器或托管任何重要价值的数据,我建议定期运行 rootkit 检查器(例如 rkhunter)

如果您的目标不是保证系统安全,而是更好地了解人们如何连接系统,那么情况就不同了(但不要尝试在有价值内容的系统上这样做)。是的,您可能会从日志(特别是消息、安全性和 httpd/access.log、httpd/error.log)中获得一些有用的信息。

答案4

我推荐开放软件“SNORT”。该软件为 Linux 系统日志提供了有利的视角,并可作为 IPS 抵御大多数入侵企图。

相关内容