------------------------------------------------------
| (outbound) |
| V
| --------------> [dns proxy (*1)] --------
| | (outbound) |
| (bi-directional) | V
TCP/IP stack ----> [cfirewall] -------------------> [ip proxy] ------------------------> ((*packet verdict*)) ----> TCP/IP stack
| | | ^ ^
| | | (inbound) | |
| | --------------> [ids/ips (*2)] ---------- |
| | ^ |
| | (inbound) | |
| ---------------------------------------------------- |
| |
---------------------------------------------------------------------------------
(*1) DNS 代理专门设计用于检查内部网络之间或从局域网到互联网的 DNS 负载。
(*2) IDS/IPS 专门设计(至少目前如此)仅检查从互联网到局域网的流量。
新增:sqlite3 现在是默认使用的数据库(以简化部署)。PostgreSQL 仍在后台存在,并将在未来版本的系统部署期间能够启用。
新增:自动部署工具(autoloader)现已上线。应用它来在任何兼容的发行版上部署系统。有关更多详细信息,请参阅兼容发行版列表。
新增:完全基于区域的防火墙规则(源和目标)以及基于规则的安全配置文件。
自定义数据包处理程序
DNS 代理(出站或跨局域网)
DNS 服务器(最近从 DNS 代理分离,但共享进程资源)
IP 代理(透明)双向
IPS/IDS(入站)
轻量级 DHCP 服务器(原生软件)
通用服务
其他功能
在兼容发行版列表中选择 Linux 发行版(见下文)
在物理硬件或虚拟机上安装 Linux
2a. 需要 (3) 个接口(WAN、LAN、DMZ)
2b. 在操作系统安装期间或完成后创建 "dnx" 用户
2c. 安装并设置 python3.8 为默认(如果适用)
升级和更新系统
安装 git
将 https://github.com/dowrighttv/dnxfirewall.git 克隆到 "dnx" 用户主目录 (/home/dnx)
以 "dnx" 用户登录并运行命令:sudo python3 dnxfirewall/dnx_run.py cli autoloader
按照提示将物理接口与 dnxfirewall 内置区域关联
工具完成后,重新启动系统并导航到指定的 URL
https://www.ip2location.com/free/visitor-blocker | 地理位置过滤数据集(按国家 IP 地址分配)
https://gitlab.com/ZeroDot1/CoinBlockerLists | 加密货币矿工主机数据集
仅 psql: https://github.com/tlocke/pg8000 | 纯 Python PostgreSQL 适配器