|
|
||
|---|---|---|
| .gitignore | ||
| Makefile | ||
| README.md | ||
| USAGE.md | ||
| capture.go | ||
| config.go | ||
| config_test.go | ||
| forwarder.go | ||
| go.mod | ||
| go.sum | ||
| logger.go | ||
| main.go | ||
| rule.go | ||
| rule_test.go | ||
| task.md | ||
README.md
GoFirewall
基于Go语言开发的高性能防火墙系统,支持自定义规则、流量过滤、日志记录和网络转发功能。
功能特性
- 支持TCP/UDP/ICMP协议过滤
- 自定义防火墙规则管理
- 实时网络流量监控
- 数据包转发(NAT)功能
- 多级别日志记录
- 配置文件管理
安装指南
- 确保已安装Go 1.16+环境
- 克隆项目仓库:
git clone https://github.com/yourusername/gofirewall.git - 安装依赖:
go mod download - 编译项目:
go build
快速开始
- 配置防火墙规则(编辑
firewall.json) - 启动防火墙:
./gofirewall - 查看日志:
tail -f firewall.log
配置文件
配置文件示例(firewall.json):
{
"log_level": "info",
"capture_interface": "eth0",
"forward_enabled": false,
"max_packet_size": 65536
}
开发指南
运行测试:
go test ./...
许可证
MIT License