個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證OPNsense plugin: a calm front page for the firewall - devices with an identity, their traffic, DNS and presence, and whether everything is all right
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗The calm front page for your OPNsense firewall: who is on the network, what they did, and whether everything is all right.
Lens gives every device an identity that survives an address change and hangs everything the firewall knows off it — traffic history, DNS, presence, the internet line. On top of that it answers is everything all right in one sentence, area by area, from what OPNsense already measures.
Status: version 0.x. Every release is installed and checked on two real firewalls — OPNsense 26.1 and 26.7 — by a scripted round before it ships (docs/ROUTER-ROUND.md); what is proven on a box and what only in tests is in docs/ROADMAP.md.
| Page | What it answers |
|---|---|
| Dashboard | One sentence first; the areas that need a look; the internet line with public address, round trips and an uptime strip you can hover; who is home, what moved, what was unusual |
| System | Every area of the firewall — internet, system, interfaces, temperature, updates, security (known vulnerabilities in installed packages), services, certificates, and DynDNS, SMART, WireGuard, NetBird, Tailscale, OpenVPN, IPsec, CARP where configured — with its reason, its history from OPNsense's own records, and the OPNsense page that fixes it |
| Devices | Every device, by the name it is known by, with its traffic, its addresses over time, presence and how sure Lens is of each |
| A device | Its traffic hour by hour, its week, where it talks, what it looked up, which services it asked for; name it, tag it, pause it |
| Who's home | When each device — and each person, by the phones they carry — was on the network |
| Networks | Each network with its port (link, speed, errors) and the devices on it |
| DNS | What was asked and blocked, by device, and which services (Netflix, Steam, WhatsApp …) the names belong to |
| Events, weekly report, wallboard | What happened while you were not looking; a week on one page; a screen for the wall |
Plus widgets for OPNsense's own dashboard, a Prometheus endpoint, and a search
on every Lens page (Ctrl K) that finds devices, networks and OPNsense's own
menu.
Screenshots from the preview with made-up devices, OPNsense dark theme.
As root on the firewall:
fetch -o - https://raw.githubusercontent.com/BxnnyG/opnsense-lens/master/tools/install.sh | sh
That adds the signed Lens package feed
(bxnnyg.github.io/opnsense-lens, key
in tools/feed/lens.pub) and installs os-lens; after
that, updates come with System: Firmware: Updates. Every version is also on the
releases page. The same
script does the rest:
… | sh -s update | update now |
… | sh -s uninstall | remove Lens and its feed; the data in /var/db/lens stays |
… | sh -s uninstall --purge | remove Lens and delete its data |
… | sh -s source | build from the current master and install that, without the feed |
… | sh -s status | what is installed, and when the collector last ran |
The root shell on OPNsense is csh; the script is always piped to sh, so that
does not matter. What it writes and why: tools/install.sh.
What it needs: NetFlow on the networks you want traffic for (Lens offers a one-click switch on Services: Lens: Data Sources, never on its own), and Unbound with its statistics for the DNS pages. Kea, ISC DHCP and dnsmasq leases are read for names. Nothing else.
/var/db/lens:
identity over time, your names and tags, settled hourly traffic. Retention,
a disk ceiling, forget this device and delete everything are on Services:
Lens; what is kept is listed on Services: Lens: Privacy.lens_paused and one firewall
category Lens, through OPNsense's own models, so they show in Firewall:
Rules and the configuration history like anything written by hand. Removing
Lens removes them. Nothing else, ever (docs/DESIGN.md §4.74, §4.85).| Why it exists, and what it deliberately is not | docs/VISION.md |
| What OPNsense already provides, the systems built, every decision | docs/DESIGN.md |
| How work is done here | docs/PROCESS.md |
| What happens next | docs/ROADMAP.md |
| What is worth doing | docs/BACKLOG.md |
| Every page without a firewall | tools/preview |
| Contributing, reporting a bug or a security issue | CONTRIBUTING.md, SECURITY.md |
Lens is not submitted to opnsense/plugins and is not expected to be —
docs/DESIGN.md §4.2 explains why. It is distributed from this
repository as the package os-lens. It does not replace Reporting: Insight,
Health, NetFlow or Unbound DNS, nor OPNsense's dashboard — it reads them, and
links back to them wherever something has to be changed.
Target releases: OPNsense stable/26.1 and stable/26.7.
BSD 2-Clause, matching the OPNsense plugin collection whose build machinery this repository uses.