Go to file
程广 d5643dcf50 "refactor(build): 移除ARM64平台构建支持并优化atoi函数空字符串处理" 2025-07-04 16:05:56 +08:00
.gitignore init code 2025-07-03 11:23:49 +08:00
Makefile "refactor(build): 移除ARM64平台构建支持并优化atoi函数空字符串处理" 2025-07-04 16:05:56 +08:00
README.md init code 2025-07-03 11:23:49 +08:00
USAGE.md init code 2025-07-03 11:23:49 +08:00
capture.go init code 2025-07-03 11:23:49 +08:00
config.go "feat(config): 添加规则目录配置并实现从文件加载规则功能" 2025-07-03 18:22:14 +08:00
config_test.go init code 2025-07-03 11:23:49 +08:00
forwarder.go feat(forwarder): 增强NAT功能,添加连接跟踪和多种NAT类型支持 2025-07-04 13:00:12 +08:00
go.mod init code 2025-07-03 11:23:49 +08:00
go.sum init code 2025-07-03 11:23:49 +08:00
logger.go init code 2025-07-03 11:23:49 +08:00
main.go "feat(config): 添加规则目录配置并实现从文件加载规则功能" 2025-07-03 18:22:14 +08:00
rule.go "refactor(build): 移除ARM64平台构建支持并优化atoi函数空字符串处理" 2025-07-04 16:05:56 +08:00
rule_test.go init code 2025-07-03 11:23:49 +08:00
task.md init code 2025-07-03 11:23:49 +08:00

README.md

GoFirewall

基于Go语言开发的高性能防火墙系统支持自定义规则、流量过滤、日志记录和网络转发功能。

功能特性

  • 支持TCP/UDP/ICMP协议过滤
  • 自定义防火墙规则管理
  • 实时网络流量监控
  • 数据包转发(NAT)功能
  • 多级别日志记录
  • 配置文件管理

安装指南

  1. 确保已安装Go 1.16+环境
  2. 克隆项目仓库:
    git clone https://github.com/yourusername/gofirewall.git
    
  3. 安装依赖:
    go mod download
    
  4. 编译项目:
    go build
    

快速开始

  1. 配置防火墙规则(编辑firewall.json
  2. 启动防火墙:
    ./gofirewall
    
  3. 查看日志:
    tail -f firewall.log
    

配置文件

配置文件示例(firewall.json)

{
  "log_level": "info",
  "capture_interface": "eth0",
  "forward_enabled": false,
  "max_packet_size": 65536
}

开发指南

运行测试:

go test ./...

许可证

MIT License