对服务器进行定期安全检查

对服务器进行定期安全检查

我正在管理一个服务器,显然我有点担心它的安全性是否受到威胁。因此,我会定期检查安全性是否完好无损。以下是我大约每周做两次的事情,也许你可以对此发表评论和/或提供一些补充。

我愿意:

  1. 运行chkrootkitrkhunter
  2. 检查cat /var/log/auth.log | grep opened | grep sshd:session用户登录情况(我知道谁在度假,因此这些人不应该登录)
  3. 检查cat /var/log/auth.log | grep opened | grep root是否有人获得了 root 访问权限(尽管我获得了)
  4. 如果出现可疑情况,请随意检查正在运行的任务

我实际上并不是想讨论安全措施,而是想讨论如何在短时间内定期检查安全完整性(我所做的事情大约需要 10 分钟)。

感谢您的帮助。

答案1

我个人建议使用一款名为奥塞克(主机入侵检测系统)如果配置正确(这相当容易,只需按照安装程序即可)将定期向您发送系统和安全相关的信息,例如正在监听哪个端口、任何重要文件的哈希值是否已更改、软件何时安装、删除、清除或升级、任何适配器是否进入混杂模式等。它也是高度可定制的,因此您可以更改它向您发出警报的内容并增加某些警报,例如它监视的文件。

我还建议您定期clamav使用可以安装的 AV 来扫描您的服务器。

并且您设置fail2ban阻止任何黑客多次尝试登录您的服务器并尝试强行进入。

答案2

如果您只是想简化/自动化使用脚本和 crontab 执行的不同任务,那么这个答案更适合您。

您可以设置一个可随时运行的脚本。

#!/bin/bash

chkrootkit
rkhunter

cat /var/log/auth.log | grep opened | grep sshd:session | more
#the ' | more' splits output into multiple screens, you can cut it off if you want

read
#delays the next command, waits until you press enter to move on, again, uncomment if you are doing this automatically

cat /var/log/auth.log | grep opened | grep root | more
read
#same as previous command

ps aux          
#change this to whatever command you use to check processes...

read

只要修改脚本,只要您觉得合适即可。确保它可以通过 执行。随时chmod +x myNewScript.sh运行此脚本 ( )。bash /path/to/script/myNewScript.sh

您还可以通过将此命令放入alias secCheck='bash /path/to/script/myNewScript.sh文件.bashrc(主目录)中来为其添加别名。然后,secCheck只要您想检查安全性,就可以随时运行。

如果你想让脚本自动化,即不需要用户交互,删除所有read's 并将猫的输出到某处以便稍后检查,等等。然后你可以设置定时任务按照您希望的频率运行该脚本。

相关内容