Port upstream security fixes and features from ngoduykhanh/wireguard-ui

- Escape HTML in client list and wake-on-LAN names to prevent XSS
- Log successful/failed login attempts with remote address
- Fix leading-comma bug in AllowedIPs template when only extra allowed IPs are set
- Add PreUp script support for server interfaces (alongside existing PostUp/PreDown/PostDown)
- Fix endpoint parsing to support IPv6 addresses (upstream PR #223)

Cherry-picked from upstream PRs #656, #653, #680, #673, #223.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
sysops
2026-07-12 23:26:30 +02:00
co-authored by Claude Sonnet 5
parent 5a7709bc6e
commit fc0d192e59
15 changed files with 640 additions and 30 deletions
+526
View File
@@ -1593,3 +1593,529 @@ Keine Commits in dieser Session.
- templates/servers.html | 4 ++--
---
## 2026-07-12 16:27 16:27 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 58db683 Remove legacy default-server page, unify on multi-server registry
### Geänderte Dateien
- DEVLOG.md | 140 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- handler/routes.go | 108 ++++++++++++++++++----------------------------------
- main.go | 7 ++--
- router/router.go | 6 ---
- store/jsondb/jsondb.go | 57 +++++-----------------------
- store/store.go | 3 --
- templates/base.html | 10 -----
- templates/server.html | 255 --------------------------------------------------------------------------------------------------------------------------
- templates/servers.html | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- util/util.go | 4 +-
---
## 2026-07-12 16:28 16:29 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 140 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- handler/routes.go | 108 ++++++++++++++++++----------------------------------
- main.go | 7 ++--
- router/router.go | 6 ---
- store/jsondb/jsondb.go | 57 +++++-----------------------
- store/store.go | 3 --
- templates/base.html | 10 -----
- templates/server.html | 255 --------------------------------------------------------------------------------------------------------------------------
- templates/servers.html | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- util/util.go | 4 +-
---
## 2026-07-12 16:31 16:31 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 140 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- handler/routes.go | 108 ++++++++++++++++++----------------------------------
- main.go | 7 ++--
- router/router.go | 6 ---
- store/jsondb/jsondb.go | 57 +++++-----------------------
- store/store.go | 3 --
- templates/base.html | 10 -----
- templates/server.html | 255 --------------------------------------------------------------------------------------------------------------------------
- templates/servers.html | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- util/util.go | 4 +-
---
## 2026-07-12 16:31 16:32 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 9c90e3f Rewrite About page for the fork, drop upstream GitHub API calls
### Geänderte Dateien
- templates/about.html | 104 +++++++-------------------------------------------------------------------------------------------------
---
## 2026-07-12 16:32 16:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- templates/about.html | 104 +++++++-------------------------------------------------------------------------------------------------
---
## 2026-07-12 16:34 16:35 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- templates/about.html | 104 +++++++-------------------------------------------------------------------------------------------------
---
## 2026-07-12 16:36 16:38 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 0000643 Add missing server delete: handler, route, and UI button
### Geänderte Dateien
- handler/routes.go | 13 +++++++++++++
- main.go | 1 +
- templates/servers.html | 31 +++++++++++++++++++++++++++++++
---
## 2026-07-12 16:39 16:39 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- handler/routes.go | 13 +++++++++++++
- main.go | 1 +
- templates/servers.html | 31 +++++++++++++++++++++++++++++++
---
## 2026-07-12 16:41 16:51 (9m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- handler/routes.go | 13 +++++++++++++
- main.go | 1 +
- templates/servers.html | 31 +++++++++++++++++++++++++++++++
---
## 2026-07-12 16:52 16:52 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 28eb08d Add nftables firewall ruleset preview per server (review-only)
### Geänderte Dateien
- firewall/nftables.go | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- handler/routes.go | 18 ++++++++++++++++++
- main.go | 1 +
- model/setting.go | 7 ++++++-
- templates/servers.html | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
---
## 2026-07-12 16:57 17:31 (33m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 1d08090 Add live firewall rule management per server (nftables)
### Geänderte Dateien
- firewall/apply.go | 44 ++++++++++++++++++++++++++++++
- firewall/nftables.go | 76 +++++++++++++++++++++++++++++++++++++++-------------
- handler/routes.go | 155 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
- main.go | 5 ++++
- model/firewall.go | 21 +++++++++++++++
- store/jsondb/jsondb.go | 59 +++++++++++++++++++++++++++++++++++++++++
- store/store.go | 4 +++
- templates/servers.html | 178 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------
---
## 2026-07-12 17:33 17:35 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- bdcf1ec Add read-only OS package update status (apt) on the About page
### Geänderte Dateien
- handler/routes.go | 9 +++++++++
- main.go | 1 +
- system/updates.go | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- templates/about.html | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 17:36 17:36 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- handler/routes.go | 9 +++++++++
- main.go | 1 +
- system/updates.go | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- templates/about.html | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 17:36 17:36 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- handler/routes.go | 9 +++++++++
- main.go | 1 +
- system/updates.go | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- templates/about.html | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 17:40 17:45 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- eb1913d Add central host-wide firewall allow/block lists
### Geänderte Dateien
- firewall/apply.go | 28 ++++++++++++------
- firewall/global.go | 63 ++++++++++++++++++++++++++++++++++++++++
- handler/routes.go | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- main.go | 6 ++++
- model/iplist.go | 15 ++++++++++
- router/router.go | 6 ++++
- store/jsondb/jsondb.go | 30 +++++++++++++++++++
- store/store.go | 3 ++
- templates/base.html | 8 +++++
- templates/firewall_lists.html | 184 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 17:47 17:48 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 28 ++++++++++++------
- firewall/global.go | 63 ++++++++++++++++++++++++++++++++++++++++
- handler/routes.go | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- main.go | 6 ++++
- model/iplist.go | 15 ++++++++++
- router/router.go | 6 ++++
- store/jsondb/jsondb.go | 30 +++++++++++++++++++
- store/store.go | 3 ++
- templates/base.html | 8 +++++
- templates/firewall_lists.html | 184 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 17:49 17:51 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 77ba2b4 Add bulk import for global firewall allow/block lists
### Geänderte Dateien
- handler/routes.go | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- main.go | 1 +
- templates/firewall_lists.html | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 17:52 17:55 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 0f92317 Fix "no such file or directory" on first use of new collections
### Geänderte Dateien
- store/jsondb/jsondb.go | 17 ++++++++++++++---
---
## 2026-07-12 19:58 19:59 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- store/jsondb/jsondb.go | 17 ++++++++++++++---
---
## 2026-07-12 20:01 20:02 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- a9649f6 Add .gitignore for private/ - local-only files never pushed to gitea
### Geänderte Dateien
- .gitignore | 4 ++++
---
## 2026-07-12 20:03 20:13 (9m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitignore | 4 ++++
---
## 2026-07-12 20:14 20:15 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitignore | 4 ++++
---
## 2026-07-12 20:16 20:16 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitignore | 4 ++++
---
## 2026-07-12 20:18 20:34 (15m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitignore | 4 ++++
---
## 2026-07-12 20:36 20:38 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitignore | 4 ++++
---
## 2026-07-12 20:38 20:44 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 00d084a Fix nftables auto-merge syntax and block private/reserved ranges
### Geänderte Dateien
- firewall/global.go | 4 ++--
- handler/routes.go | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 20:45 20:45 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/global.go | 4 ++--
- handler/routes.go | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 20:48 20:52 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
- 5a7709b Add enable/disable toggle for the global firewall allow/block lists
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:00 23:00 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:00 23:01 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:02 23:02 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:03 23:04 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:05 23:06 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:14 23:14 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 +++++++++++++
- handler/routes.go | 32 +++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:15 23:15 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 +++++++++++++
- handler/routes.go | 32 +++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:17 23:21 (4m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:22 23:22 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-07-12 23:24 23:26 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** wireguard-ui-multi
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- firewall/apply.go | 20 ++++++++++++++++++++
- handler/routes.go | 32 ++++++++++++++++++++++++++++++++
- main.go | 2 ++
- templates/firewall_lists.html | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---