• Janusec WAF网关安装体验


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

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

    无意中看到了Janusec Application Gateway (Janusec应用网关),其无agent的网关式架构设计令人眼前一亮。

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

    原理式这样的:

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

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

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

    步骤 1: 下载

    $cd ~
    $wget https://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:WindowsSystem32driversetchosts.

    验证


    配置完成后,验证网关是否正常工作。
    打开浏览器,访问: 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

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

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

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

  • 相关阅读:
    4 Python+Selenium的元素定位方法(link/partial link)
    3 Python+Selenium的元素定位方法(id、class name、name、tag name)
    2 Selenium3.0+Python3.6环境搭建
    1 Selenium打开浏览器
    目录处理文件&链接命令
    DOS批处理命令-@命令
    DOS批处理命令-echo
    吐槽一二三
    编码神器之sublime(插件安装)
    两天来学习C的感受
  • 原文地址:https://www.cnblogs.com/-U2-/p/9514806.html
Copyright © 2020-2023  润新知