opnsense/core
GitHub: opnsense/core
OPNsense 核心代码库,包含防火墙的 GUI、API 及系统后端,提供企业级网络安全与路由功能。
Stars: 4284 | Forks: 916
# OPNsense GUI 与系统管理
OPNsense 项目诚邀开发者开始为代码库做出贡献。无论是个人的开发目的,或者——更好的是——加入我们,共同打造最好的开源防火墙。
构建流程的设计旨在让每个人都能轻松构建和编写代码。新代码库的主要大纲可在此处查看:
https://docs.opnsense.org/development/architecture.html
我们的目标是逐步演进到新的代码库,而不是采用推倒重来的“大爆炸”方式。
# 构建工具
要创建像 OPNsense 这样的可运行软件,您需要源代码和构建工具。OPNsense 的构建工具是免费提供的。
关于如何构建 OPNsense 的说明可以在 tools 代码库中找到:
https://github.com/opnsense/tools
# 许可证
OPNsense 目前且将始终在 2-Clause BSD 许可证下提供:
https://opensource.org/licenses/BSD-2-Clause
为了保持 OPNsense 对每个人都是真正自由和可访问的,对该项目的每一项贡献都必须在相同的条件下获得许可。
# Makefile 目标
该代码库提供了多个目标,它们要么连接到 tools.git 构建流程,要么旨在实现快速开发。
## make package
可以使用此目标创建代码库当前状态的软件包。它可能需要安装多个依赖包。该目标在失败时会尝试提供协助,例如当需要从外部位置获取缺失文件时。
存在多个 OPTIONS 用于自定义软件包,例如:
* CORE_DEPENDS:软件包所需依赖项的列表
* CORE_DEPENDS_ARCH:特定 所需软件包的列表
* CORE_ORIGIN:设置 FreeBSD 兼容的 package/ports origin
* CORE_COMMENT:软件包的简短描述
* CORE_MAINTAINER:软件包维护者的电子邮件
* CORE_WWW:软件包的网址
* CORE_NAME:设置软件包名称
选项按以下形式传递:
```
# make package CORE_NAME=my_new_name
```
通常,选项要么设置为合理的默认值,要么在运行时自动检测。
## make update
Update 将从上游代码库拉取当前分支的最新提交。
## make upgrade
Upgrade 将运行软件包构建,并替换系统中当前安装的软件包。
## make collect
从正在运行的系统中获取所有已知文件的更改。
## make lint
在代码库上运行多项语法检查。建议在 GitHub 上提交 pull request 之前执行此操作。
## make style
分别在 MVC PHP 代码和 Python 上运行 PSR12 和 PEP8 风格检查。
为了简化开发,您可能需要使用 OPNsense VM 并安装 `os-debug` 插件,它将提供必要的工具。
## make sweep
在代码库上运行多个自动清理工具。
标签:API, Awesome, BSD许可证, CISA项目, ffuf, FreeBSD, GUI, NGFW, OpenVAS, OPNsense, PE 加载器, PHP, VPN, Web界面, 下一代防火墙, 代理服务, 前端界面, 后端开发, 基础设施, 密码管理, 开源, 流量 shaping, 系统后台, 系统管理, 网络安全, 网络设备, 路由, 进程监控, 逆向工具, 防火墙, 隐私保护