如何在 DigitalOcean VPS 上安装 Aide

介绍


SysAdmins负责安装和配置软件以支持网站,包括那些运行在DigitalOcean VPS上。不幸的是,一旦您的网站在互联网上可用,一个或多个恶意黑客可能会花费大量的时间和精力尝试在您的系统中找到某些漏洞,以获得未经授权的访问,并进行更改,这可能会彻底摧毁您的系统。

好消息是,您可以使用行业最佳实践来保护您的VPS,包括建立软件配置基准,以确保您可以检测和跟踪所有变更。对Unix或Linux系统的更改进行监控的最流行的工具之一叫Advanced Intrusion Detection Environment(AIDE),最初由Rami Lehti和Pablo Virolainen在1999年撰写,本文将帮助您通过描述如何有效地安装,配置和使用Aide来开始。

建立安全可靠的基础


Unix 和 Linux 服务器,包括 DigitalOcean VPS,为安装、配置和运行在互联网上可用的软件驱动网站提供了强大的平台. 行业标准如 IEEE 828 配置管理标准和 itSMF ITIL v3 框架提供了有关如何记录和维护稳定的操作系统和应用程序基准,这些标准对于确保这些系统安全和可靠至关重要。

金融服务公司,包括大型银行,交易公司和交易所本身,都需要联邦监管机构,包括金融行业监管机构(Finra),货币控制员办公室(OCC)和联邦储备系统(Fed)来实施这些最佳做法。作为SysAdmin,您可以使用这些相同的程序来保护您的DigitalOcean VPS,并使用DevOps最佳做法创建一个安全的可信的应用库。

步骤 1 - 使用 yum 来安装 Aide


第一步是按照图 1.0 所示,运行yum install aide命令,以检查依赖性,并验证可以安装 aide。

1[root@myserver ~]# yum install aide

您将需要进入以继续安装。

1Is this ok [y/N]: y

步骤 2 - 运行助手帮助并验证助手版本


安装完成后,您应该运行助理 - 帮助屏幕并检查如下所示的助理版本。

[root@myserver ~]#帮助 - 帮助

请注意 /etc/aide.conf 的位置,我们将在本文末尾讨论。

 1Aide 0.13.1
 2Compiled with the following options:
 3WITH_MMAP
 4WITH_POSIX_ACL
 5WITH_SELINUX
 6WITH_XATTR
 7WITH_LSTAT64
 8WITH_READDIR64
 9WITH_GCRYPT
10WITH_AUDIT
11CONFIG_FILE  "/etc/aide.conf"

现在我们已经验证了Aide已安装,我们将创建我们的第一个Aide数据库。

步骤 3 - 初始化第一助手数据库


通过如图所示发出命令aide init来初始化第一个辅助数据库。

1[root@myserver ~]# aide --init

验证已创建新的辅助数据库

1[root@myserver ~]# cd /var/lib/aide
2[root@myserver aide]# ls -lt
3total 1488
4-rw------- 1 root root 1520639 Dec 8 16:57 aide.db.new.gz

最初的辅助数据库 (aide.db.new.gz) 必须更名为 (aide.db.gz) 以便帮助工作顺利。

步骤 4 - 使用Unix mv命令重命名助手数据库,以便使用


1[root@myserver aide]# mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
2[root@myserver aide]# ls -lt
3total 1488
4-rw------- 1 root root 1520639 Dec 8 16:57 aide.db.gz

接下来,我们将运行辅助检查,以证明没有发生任何变化。

步骤 5 - 运行第一个助手 - 检查而不做任何更改


1[root@myserver aide]# aide --check

接下来,我们将在 /usr/sbin 目录中创建一个文件,以测试助手可以检测并报告变更。

步骤 6 - 创建新文件作为测试


接下来,我们使用 unix 触摸命令创建一个新的文件,然后我们可以使用它来测试 aide 并验证新创建的文件是否被 aide 检查。

1[root@myserver aide]# touch /usr/sbin/mytestfile.txt

步骤 7 - 运行辅助检查检测新文件


[root@myserver 助手]# 助手 - 检查

一旦我们审查了通过辅助检查检测到的更改,我们可能不希望辅助检查再次报告它们,因为这些报告可能会变得非常长。

步骤 8 - 创建更新的辅助数据库以忽略以前的更改


接下来,您将创建一个更新的辅助数据库,该数据库将忽略之前所做的(和审查的)所有更改。

1[root@myserver aide]# aide --update

新的辅助数据库名为aide.db.new.gz,如下图11所示。

1[root@myserver aide]# ls -lt
2total 2976
3-rw------- 1 root root 1520708 Dec 8 17:13 aide.db.new.gz
4-rw------- 1 root root 1520639 Dec 8 16:57 aide.db.gz

下一步是重新命名辅助数据库,以便我们使用辅助数据库的新版本来仅报告从此以后发生的更改。

步骤 9 - 使用更新的辅助数据库


保存旧的辅助数据库通常是一个好主意,将其重命名为日期,如图12所示,以便您可以追踪任何更改(如有必要)。

1`[root@myserver aide]# mv aide.db.gz aide.db.gz-Dec082013`
2`[root@myserver aide]# mv aide.db.new.gz aide.db.gz`

虽然这些程序很简单,但它们可以变得无聊和耗时,必须编写脚本来更新数据库,并运行辅助检查报告来自动报告更改。

步骤 10: 使用 cron 和 sendmail 自动化


我通常会创建一个 crontab 条目,以便每天运行一个帮助 - 检查报告,该报告方便地出现在我的手持设备上。

1`06 01 * * 0-6 /var/log/aide/chkaide.sh`

以下是一个简单的脚本示例,可以从 crontab 运行,以自动执行帮助检查,并发送报告的最后 20 行电子邮件,这通常是每天总结的足够信息。

 1[root@myserver ~]# cat /var/log/aide/chaide.sh
 2#! /bin/sh
 3#chkaide.sh - Bob Aiello
 4MYDATE`date +%Y-%m-%d`
 5MYFILENAME"Aide-"$MYDATE.txt
 6/bin/echo "Aide check !! `date`" > /tmp/$MYFILENAME
 7/usr/sbin/aide --check > /tmp/myAide.txt
 8/bin/cat /tmp/myAide.txt|/bin/grep -v failed >> /tmp/$MYFILENAME
 9/bin/echo "**************************************" >> /tmp/$MYFILENAME
10/usr/bin/tail -20 /tmp/myAide.txt >> /tmp/$MYFILENAME
11/bin/echo "****************DONE******************" >> /tmp/$MYFILENAME
12/bin/mail -s"$MYFILENAME `date`" [email protected] < /tmp/$MYFILENAME

最后步骤


您还可以修改 /etc/aide.conf 以配置高级设置,例如包括或排除特定目录. 由于自动安装的 /etc/aide.conf 版本具有最常见的设置,因此 SysAdmins 相对不寻常地修改此文件。

摘要


使用 DigitalOcean VPS 创建安全可靠的网站需要对信息安全采取全面的方法,包括跟踪系统和应用程序基线的更改。使用 Aide 是一个很好的第一步,将有助于您理解对您的系统所做的更改,以及识别恶意或人为错误所造成的未经授权的更改。在未来的文章中,我们将描述您可以采取的额外步骤来创建一个安全的可信的基础。安装 Aide 并每天使用它将帮助您开始管理您的 DigitalOcean VPS!

额外资源


[帮助 ] (http://aide.sourceforge.net/)

Tagged with
comments powered by Disqus