spr-networks / super

📡 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
https://www.supernetworks.org/
BSD 3-Clause "New" or "Revised" License
165 stars 12 forks source link
adblock alerting coredns golang homelab nftables router security security-tools self-hosted vpn wifi wifi-security wireguard

📡 SPR: Open Source, secure, user friendly and fast wifi routers for your home.

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.

image

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.

Features

Security

Firewall:

WiFi

Advanced Networking

Advanced DNS Capabilities

User Friendly

Observability

Interoperability:

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

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

Why SPR Over Alternatives

SPR is built to support an adapative, microsegmented network that unifies WiFi, DNS, Routing, and Policy. It's not easy to bolt on the concepts onto exising router stacks while also achieving high assurance security that blocks network spoofing attacks and other network flaws.

UI Demo Page

https://demo.supernetworks.org/

SPR Bus Events

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

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
docker-compose up -d

Useful Links