![Ubuntu Server 新手,需要监控哪些日志以及该做什么](https://linux22.com/image/491531/Ubuntu%20Server%20%E6%96%B0%E6%89%8B%EF%BC%8C%E9%9C%80%E8%A6%81%E7%9B%91%E6%8E%A7%E5%93%AA%E4%BA%9B%E6%97%A5%E5%BF%97%E4%BB%A5%E5%8F%8A%E8%AF%A5%E5%81%9A%E4%BB%80%E4%B9%88%20.png)
我已经运行 Ubuntu Server 大约四个月了,每天都能学到新东西。今天我了解到有很多我不知道的日志。当我检查这些日志时,我大吃一惊。例如,auth.log 列出了我认为是黑客攻击的尝试和来自许多 IP 地址的失败的 ssh 登录尝试。
我的问题是这样的。我正在运行 Apache 并使用 ssh 进行连接。为了监控失败的登录尝试,我应该最熟悉哪些日志?我可以做些什么来使 ssh 更安全,同时仍然能够使用它来管理我的服务器?
此外,我注意到在两个不同的时间点,当没有人应该连接到服务器时,流量却非常大(使用 vnstat -l),但仍然不知道原因。我在哪里可以开始跟踪此问题。
我知道这个问题包含了太多问题,对此我深表歉意。我对迄今为止发现的东西仍然感到有些震惊。
答案1
我建议您查看logcheck
-package - 它会监控大多数(如果不是全部)相关日志,并每小时向您发送所有可疑条目的摘要。请注意,它会发送电子邮件,因此您也必须为此设置一个服务器...
至于 SSH 登录失败,我建议您考虑使用防火墙来阻止所有未知主机的访问 - 尝试查看 Ubuntu 的“简单防火墙” ufw
。
最后,我建议你去看看官方的Ubuntu 服务器指南。
(为了保险起见,我通常会在所有服务器上安装这些;munin
用于监控,backupninja
(名称表明全部),etckeeper
用于跟踪/etc
,并且如上所述logcheck
。)
答案2
我倾向于使用 logwatch,而不是 logcheck(尽管这主要是个人喜好问题)。为了保护 ssh,我首先会安装 fail2ban,它将阻止那些持续登录失败的人。我不会费心更改 ssh 端口,由于 ssh 的连接字符串,它仍然很容易找到,而且麻烦多于好处。此外,您应该通过将 /etc/ssh/sshd_config 中的 PermitRootLogins 更改为“no”来禁止 root 通过 ssh 登录。
我无法告诉您如何追踪以前的大量流量,但 netstat/lsof -i 会为您提供连接列表,如果您再次看到它,这可能会有所帮助。