Linux firewall powered by eBPF and XDP written in Zig.
- zig-linux-x86_64-0.14.0-dev.3456+00a8742bb
- Linux Kernel 6.6+
- IPv4
- IPv6
- TCP
- UDP
- ICMP
Clone zbpf.
Put this repo in zbpf.
Add dependencies in build.zig.zon
and build.zig
.
zig build ZealFirewall
# change lo if you need
sudo ./ZealFirewall -i lo
GET /api/v1/rules
POST /api/v1/rule
{
"src_addr": "127.0.0.1",
"dst_port": 8000,
"ip_proto": 6
}
Proto 6 is TCP
{
"src_addr": "127.0.0.1",
"dst_port": 8000,
"ip_proto": 17
}
Proto 17 is UDP
GET /api/v1/rule
{
"src_addr": "127.0.0.1",
"dst_port": 8000,
"ip_proto": 6
}
DELETE /api/v1/rule
{
"src_addr": "127.0.0.1",
"dst_port": 8000,
"ip_proto": 6
}