Janusec WAF网关安装试用体验

近日个人的几个小站总是被攻击,于是准备寻找一款WAF来抵挡一下。

首先尝试了modsecurity 和 naxsi ,功能是有了,但因为需要在每一台服务器上安装agent,没有管理界面,策略也不能统一维护,感觉后面维护起来不怎么方便。

继续在网上闲逛中,在无意中看到了Janusec Application Gateway (Janusec应用网关),其无agent的网关式架构设计令我眼前一亮。

根据其介绍,只需要安装一次,就可以作为基础设施供后续复用扩展,业务的服务器上不需要安装agent,且能够为证书私钥提供加密保护。

原理式这样的:


Janusec WAF网关安装试用体验_第1张图片

Janusec工作在反向代理模式,收到请求后,会先检查合法性,如果是攻击行为(Web攻击如SQL注入、XSS等,或CC攻击),就会拦截下来;如果是正常的访问请求,就会放行。我决定安装体验一番。

首先,找到Janusec网关的快速入门介绍:https://www.janusec.com/cn/quick-start/

然后根据介绍的步骤进行安装:


步骤 1: 下载

$cd ~

$wgethttps://www.janusec.com/download/janusec-latest.tar.gz

$tar zxf ./janusec-latest.tar.gz

步骤 2: 安装

请切换到root用户并运行 install.sh , janusec应用网关将安装在目录:/usr/local/janusec/

$su

#cd janusec-0.9.3

#./install.sh

选择1. Master Node, 然后安装程序会:

将所需文件复制到/usr/local/janusec/

将服务配置文件复制到系统服务目录

将Janusec应用网关服务设置为自动启动,但首次安装时不会启动,需要在配置完成后手工启动一次.

步骤 3: 配置

PostgreSQL没有包含在发布包中,需要自行准备PostgreSQL数据库、用户名 、口令,可参考运维管理中的PostgreSQL安装。

现在我们假设您已经安装好了PostgreSQL,且数据库已创建,用户名和口令已准备好。

然后编辑/usr/local/janusec/config.json:

{

“node_role”: “master”,

“master_node”: {

“admin_http_listen”: “:9080”,

“admin_https_listen”: “:9443”,

“database”: {

“host”: “127.0.0.1”,

“port”: “5432”,

“user”: “your_postgresql_user”,

“password”: “your_postgresql_password”,

“dbname”: “janusec”

}

},

“slave_node”: {

“node_key”: “”,

“sync_addr”: “”

}

}

步骤 4: 启动网关并测试

#systemctl start janusec.service

打开浏览器(比如Chrome),使用如下地址:

http://网关IP地址:9080/

这是Janusec应用网关的第一个管理地址(后面可启用安全的管理地址)。

默认用户名:admin

默认口令:J@nusec123

配置数字证书

如果仅使用HTTP,不使用HTTPS,可跳过此步骤;但强烈建议配置证书并启用HTTPS。

使用浏览器打开 http://您的网关IP地址:9080/ 并添加一张数字证书。

如果您还没有数字证书,可以从Let's Encrypt申请免费的数字证书。

使用记事本打开两个证书文件(我的证书是从Let's Encrypt申请的,一个文件名是fullchain.pem,是公开的证书文件;另一个是privkey.pem,是保密的私钥文件),将其内容复制到Web管理控制台。

配置Web应用 (必选)

使用浏览器打开 http://网关IP地址:9080/ 并添加一个应用.

填写应用名称、实际服务器的IP:端口等信息。

修改DNS或Hosts (必选)

生产环境,需要将修改DNS将您的域名指向网关地址。

测试环境,可直接修改您本地电脑的hosts文件:C:\Windows\System32\drivers\etc\hosts.

验证

配置完成后,验证网关是否正常工作。

打开浏览器,访问: http://your_domain_name/

https://your_domain_name/ .

如果可以正常访问,表明网关已正常工作。

WAF验证

安装配置好之后,就来检验一下WAF(Web应用防火墙)是否工作正常。

使用如下测试用例:

http://domain_name/.svn/entries

http://domain_name/test?id=1 and 1=1

这时,立即看到了阻断效果:

Janusec WAF网关安装试用体验_第2张图片


后面的使用就比较简单了,我的WAF选型就此告一段落。

如果有不清楚的地方,也可参考官方网站上的说明:https://www.janusec.com/cn/ 。

你可能感兴趣的:(Janusec WAF网关安装试用体验)