Awesome
简介
web-firewall
基于golang+vue3 开发的Web Linux防火墙,前端使用SoybeanAdmin
框架,后端使用goframe2
,数据库支持 sqlite3(默认)
/postgresql
,它可以在Linux系统中基于nfatables
用于替代firewalld
工具。
该防火墙可以提供以下功能
功能设计
- 本地策略
- 出站策略 output链
- 出站流控 output链
- 入站策略 input链
- 入站流控 input链
- 路由策略
- DNAT prerouting链
- SNAT postrouting
- 转发策略forward 链
- 流量控制 forward 链
- 审计
- 登录日志
- 配置日志
- webSSH日志
- WebShell
- webshell 支持rzsz
- 文件上传下载
- 文本在线编辑
- 首页
- 系统设置
- ip黑名单 prerouting链
- 本地密码
- 会话配置
- 邮件配置
- 短信配置
- 登录设置
安装
本项目提供一个已经打包编译好的项目,用户仅需自己下载本项目解压后,执行 里面的install.sh
文件即可,如果自己编译项目请根据前后端代码自行进行打包即可
unzip v1.1.0.zip
cd v1.1.0
bash install.sh
# 查看服务是否正常运行
systemctl status web-firewalld
# 建议停用firewalld服务
systemctl disable firewalld
systemctl stop firewalld
访问地址:http://ip:8000
默认账号密码:admin/admin
docker部署
docker使用必须以特权和host模式运行才能操作主机的网络配置
docker run
-itd
--network host
--privileged
-v /path/config:/web-firewall/manifest/config
web-firewall
/path/config
目录内需要提供config.yaml配置文件和db.sqlite3初始化数据库文件
配置中database的目录需要修改为
link: "sqlite::@file(./manifest/config/db.sqlite3)"