Falcon是一款基于inotify-tools 开发的Web服务器文件监控平台能够实时监控Web目录文件变化(新增,修改,删除),判断文件内容是否包含恶意代码,自动隔离常见Webshell,保证Web目录文件安全。
下载地址:https://github.com/secrule/falcon
官方的安装配置过程如下
如何安装并且开始监控:
第一步,解压并检查程序编译环境
tar -zxvf falcon.tar.gz
cd Release/
./check.sh ##这里需要注意了,有可能需要的支持文件没有安装而报错,报错具体的解决方案见本后后半部分。
看到以下信息证明程序编译环境准备就绪
Found inotify success!
Found inotifytools success!
Found mysql-dev environment success!
第二步,安装Falcon控制中心
vi ./falconconsole/public/config.inc.php
修改配置文件中的数据库连接信息,如果控制中心与监控程序没有安装在同一台主机,请确保被监控主机能够有权访问到控制中心所在主机的Mysql数据库
运行install.php安装控制中心
第三步,修改监控程序配置文件并编译
这里主要设置数据库连接相关信息,需要监控的Web目录以"/"结尾
vim src/conf/global.conf
这里注意,需要进入下载包的Realease文件夹进行编译
make
成功的话会生成falcon文件
第四步,后台运行监控程序
nohup ./falcon start >falcon.log 2>&1 &
ps aux|grep "falcon"
下面主要说下安装过程中遇到的问题及解决方案
一."/usr/bin/ld: cannot find -lmysqlclient"
没有安装mysql客户端或者是没有找到相应的文件,这样的错误一般发生在x64系统上解决方法:
1,安装mysql客户端
yum -y install mysql-devel
2.设置软连接
备份/usr/lib/mysql
mv /usr/lib/mysql /usr/lib/mysql.bak
设置软连接
ln -s /usr/lib64/mysql/ /usr/lib/mysql
二.cannot find -liconv collect2: ld returned 1 exit status
未安装iconv,需要手动安装
解决方法:
包的下载页面http://www.gnu.org/software/libiconv/
# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz # tar -zxvf libiconv-1.14.tar.gz
# cd libiconv-1.14.1
# ./configure
#make
#make install
安装完成后,如还报错需设置软连接
ln -s /usr/local/lib/libiconv.so.2 /usr/lib64/libiconv.so.2
三."./falcon: error while loading shared libraries: libinotifytools.so.0: cannot open shared object file: No such file or directory"
未找到libinotifytools.so.0
解决方案:
设置软连接
ln -s /usr/local/lib/libinotifytools.so.0 /usr/lib64/libinotifytools.so.0