我在 digital ocean droplet 上运行 VPS,过去三周以来一直面临 DNS 服务崩溃的问题。第一次发生在 5 月底,网站无法解析 IP 并且无法访问。昨天也发生了同样的事情,直到我打开网站才意识到这一点,不幸的是它停机了大约 24 小时。:(
在崩溃前很短的时间内(3-5 分钟)大约有 3500 条消息。以下是与终止命名服务相关的一些条目:
Jun 17 09:33:49 server kernel: Out of memory: Kill process 31644 (/usr/sbin/amav
i) score 21 or sacrifice child
Jun 17 09:33:49 server kernel: Killed process 31644 (/usr/sbin/amavi), UID 990,
total-vm:376848kB, anon-rss:108kB, file-rss:0kB, shmem-rss:0kB
Jun 17 09:33:49 server kernel: php-cgi invoked oom-killer: gfp_mask=0x201da, ord
er=0, oom_score_adj=0
Jun 17 09:33:49 server kernel: [<ffffffffb89c0e84>] oom_kill_process+0x254/0x3e0
Jun 17 09:33:49 server kernel: [<ffffffffb89c092d>] ? oom_unkillable_task+0xcd/0
x120
**Jun 17 09:33:52 server kernel: Out of memory: Kill process 2539 (named) score 19
or sacrifice child
Jun 17 09:33:52 server kernel: Killed process 2539 (named), UID 25, total-vm:235
396kB, anon-rss:12kB, file-rss:0kB, shmem-rss:0kB**
Jun 17 09:33:53 server systemd: amavisd.service: main process exited, code=kille
d, status=9/KILL
Jun 17 09:33:53 server systemd: named.service: main process exited, code=killed,
status=9/KILL
Jun 17 09:33:54 server systemd: lfd.service: main process exited, code=killed, s
tatus=9/KILL
附加信息:
- 使用 CWP 运行 CentOS 7
- 服务很好坠毁因为服务器内存不足。
- 看起来攻击者的目标是 php-cgi、imap-login 和 imap 服务(我猜是因为日志中与这些服务相关的条目太多)
问题:
- 我该如何防止这种情况发生?
- 我怎样才能找到根本原因?(我知道,日志,但我应该寻找什么类型的条目以及在哪个文件中?)
- 在这种情况下,有什么方法可以收到通知吗?(以尽量减少停机时间)