BSD 3-Clause "New" or "Revised" License

项目介绍

spr-networks/super 是一个托管在 GitHub 上的开源项目,主要使用 JavaScript 编写,采用 BSD 3-Clause "New" or "Revised" License 许可证,目前获得 901 个 Star、69 次 Fork。

仓库全名
spr-networks/super
开源许可证
BSD 3-Clause "New" or "Revised" License
Star 数
901
Fork 数
69
未关闭 Issue
30

README 摘要

SPR: Secure Programmable Router Overview Create an adaptive, micro-segmented network for managing WiFi devices, remote VPN access, and wired systems. One Password Per WiFi Device Policy Based / Zero Trust Network Access Per-Device DNS Rules & Ad Block Lists Features Security Multi-PSK including with WPA3, a SPR first Secure Router Chaining Almost no unmanaged code, minimized attack surfaces Firewall Policy based…

完整内容见 GitHub 原始 README 或本页 。

常见问题

super 用什么语言开发?

主要使用 JavaScript 编写,采用 BSD 3-Clause "New" or "Revised" License 许可证,目前有 901 个 Star。

super 可以免费商用吗?

仓库采用 BSD 3-Clause "New" or "Revised" License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 super 的源码?

可以直接克隆仓库:git clone https://github.com/spr-networks/super.git,默认分支为 main;安装与运行步骤见仓库 README。

super 最近还在维护吗?

仓库最近一次更新为 4 天前,当前有 30 个未关闭 Issue;Star 数为 901,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

📡 SPR: Open Source, secure, user friendly and fast wifi routers for your home. One wifi password per device. Ad Blocking & Privacy Blocklists. Policy Based Network Access

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

语言占比

C
CSS
Dockerfile
Go
HTML
JavaScript
Makefile
Nix
Objective-C
Objective-C++
Python
Ruby
Shell

README

SPR: Secure Programmable Router

release version version docker build iso build license

Overview

Create an adaptive, micro-segmented network for managing WiFi devices, remote VPN access, and wired systems.

  • One Password Per WiFi Device
  • Policy Based / Zero Trust Network Access
  • Per-Device DNS Rules & Ad Block Lists

image

Network topology

Features


Security

  • Multi-PSK including with WPA3, a SPR first
  • Secure Router Chaining
  • Almost no unmanaged code, minimized attack surfaces


Firewall

  • Policy based routing
  • Isolation by default
  • Bidirectional groups and unidirectional service rules
  • Secure container networking


WiFi

  • WPA3/2
  • WPA1 backwards compatibility
  • WiFi 6, 7 Support including MLO and 320mhz channels on supported hardware


Advanced Networking

  • Wireguard™ VPN
  • Multi WAN with Load Balancing
  • Wireless Uplink
  • Multicast Traffic Support
  • Mesh with Wired Backhaul *
  • Policy Based Site Forwarding *


Advanced DNS Capabilities

  • Remote DNS Queries with DNS over HTTPs
  • DNS Ad Block lists
  • Per-Device DNS Rules and Overrides
  • DNS Rebinding Protection


User Friendly

  • React UX
  • iOS App Available

Observability

  • Traffic Insights by Country & ASN
  • Internet & Uplink Health Monitoring
  • Alerts
  • DNS Logs
  • Event System & DB

Interoperability

  • Runs on a wide variety of Linux systems with Docker
  • API Plugin System

Parental Controls

  • Family DNS Rules
  • Device Time Limits

* Some features are part of SPR PLUS, a paid subscription to support the project

Plugins

Extend SPR with Docker based plugins. Use community supported plugins or write your own. Browse the catalog at https://www.supernetworks.org/plugins.html

Plugin catalog

How it Works

An unspoofable device identity is established with a MAC address and Per-Device Passphrase for WiFi (or a VPN Public Key for Remote Devices). From there, each device gets its own /30 subnet to exist on. Hardening and strict firewall rules block network spoofing and impersonation, and routing rules redefine connectivity between devices and to the internet.

Our Goals

  1. Be the best Security & Privacy choice
  2. Programmable with an API
  3. Easy to use

Frequently Asked Questions

Check out our FAQ on our website

UI Demo Page

https://demo.supernetworks.org/

SPR Bus Events

https://github.com/spr-networks/sprbus-json

image

Updating

Building from scratch
./build_docker_compose.sh --load
docker-compose up -d

For performance and to minimize wear on SD cards, the build uses a memory-backed filesystem. On memory-limited devices, this can cause build failures if memory is exhausted. In this case, you can provide the build argument --set "*.args.USE_TMPFS=false".

Using prebuilt containers
docker-compose pull
./setup.sh # (optional)
docker-compose up -d

Get Involved

💬 Have questions? Join the conversation in our Discussions page.

评论

暂无评论