Commit Graph

1376 Commits

Author SHA1 Message Date
Bernd Storath cd9db1563d fix: mobile UI (#2569)
* improve mobile ui

* general cleanup

* cleanup, improvements

* fix hydration mismatch
2026-04-07 11:34:49 +02:00
wuys b5c30f5dbe i18n: add Vietnamese language support (#2568)
* i18n: add Vietnamese translation

* i18n: fix lint

* i18n: import fix

---------

Co-authored-by: meow <meow@air.local>
2026-04-07 11:22:13 +02:00
adi82bdg 1eb9527175 Update Polish translations for various terms (#2566) 2026-04-02 13:25:55 +02:00
Nikolas cd890c1f0f Update uk.json (#2559) 2026-03-25 08:54:53 +01:00
Timothy Pillow 2a78b30aeb Config fix for #2208 : Document network interface fix for multi-network configuations (#2555)
* document fix for #2208

* typo fix

* prettier

* fix code block format

* fix indentation

---------

Co-authored-by: Timothy Pillow <timothy.pillow@swisscom.com>
Co-authored-by: Bernd Storath <999999bst@gmail.com>
Co-authored-by: Bernd Storath <32197462+kaaax0815@users.noreply.github.com>
2026-03-23 09:59:17 +01:00
Chiahong 9a843087c3 i18n(zh-tw): Update Traditional Chinese translation (#2558) 2026-03-23 07:49:12 +01:00
Bernd Storath 483b63bba6 update packages 2026-03-16 08:28:58 +01:00
Alexis-Loskoutoff 13942c97b2 i18n(fr): Update French translation (#2544) 2026-03-16 08:04:34 +01:00
MeCias 82c64e506e Lang(de): Added missing translations (#2543)
* Update de.json

Lang(de): Added missing translations

* Lang(de): Added missing translations and Comma

* Lang(de): Added missing translations and Comma and identations
2026-03-14 19:49:28 +01:00
Aarón Rosa Díaz 9b3d919168 i18n(es): Updated Spanish translation (#2540)
Updated Spanish translations for various UI elements

Updated and completed all remaining Spanish translations, including support for AmneziaWG 2.0. Following: https://wg-easy.github.io/wg-easy/v15.2/contributing/translation/
2026-03-13 07:47:09 +01:00
杨黄林 3eaf0d01dc i18n: improve Simplified Chinese translation (#2541)
* Fix zh-CN translate

* i18n: improve Simplified Chinese translation

---------

Co-authored-by: yanghuanglin <yanghuanglin@qq.com>
2026-03-13 07:46:25 +01:00
Bernd Storath 414e9a114b Bump version to 15.3.0-beta.1 v15.3.0-beta.1 2026-03-11 09:06:54 +01:00
Maksim M. 2d28d87c5c i18n(ru): Update Russian Lang (#2538)
* i18n(ru): Add firewall and download options

- Updated translation, added and translated all missing values from en.json

* i18n(ru): Minor changes

- Minor edits that don't change the translation

* i18n(ru): Terminology changes

- "Интерфейс" (Interface) has been renamed to "Сетевой интерфейс" (Network Interface) to avoid confusion with the Web UI, which is often referred to simply as "interface" in Russian.
2026-03-11 08:51:48 +01:00
Bernd Storath 76c2233e46 chore: update node to krypton (24) (#2536)
update to node krypton
2026-03-10 10:45:10 +01:00
Stephan Paternotte abedf9f38e Dutch translation updated (#2535)
* Dutch translation updated

Update nl.json updated re. "copy & download qr code as png"

* Update nl.json

Couple of trailing comma's added. Valid json now.
2026-03-10 10:42:33 +01:00
Kayhan 25f3fa3c0f Update Turkish localization strings (#2523)
* Update Turkish localization strings

* Update src/i18n/locales/tr.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/i18n/locales/tr.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/i18n/locales/tr.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/i18n/locales/tr.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/i18n/locales/tr.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/i18n/locales/tr.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-10 09:36:46 +01:00
Bernd Storath c3c51f8088 update packages 2026-03-09 08:01:17 +01:00
Bernd Storath 8ea2b635c1 feat: change hooks to textareas (#2522)
* hooks are now textareas

* remove newlines in client config
2026-03-05 14:52:55 +01:00
Bernd Storath bc4dfd03df feat: copy & download qr code as png (#2521)
* copy & download qr code as png

* i18n, accessibility

* improve error handling
2026-03-05 13:39:31 +01:00
Bernd Storath 7cde04de81 docs: fix faq urls
introduced in #2418
2026-03-05 13:38:12 +01:00
Bernd Storath 5228734c98 feat(cli): add command to show qr code (#2518)
* refactor cli, add commands

* add docs

* improve

* fix ec mode order
2026-03-05 11:53:27 +01:00
Ian Foster 47f81dd66a Feature/client firewall filtering (#2418)
* Add per-client firewall filtering

Implement server-side firewall rules to restrict client network access,
allowing administrators to enforce security policies that cannot be
bypassed by clients modifying their local configuration.

This feature addresses the limitation where "Allowed IPs" only controls
client-side routing but doesn't prevent clients from accessing networks
they shouldn't reach. The firewall rules are enforced on the server
using iptables/ip6tables and provide true access control.

Features:
- Opt-in via "Enable Per-Client Firewall" toggle in admin interface
- Per-client "Firewall Allowed IPs" field for granular control
- Support for IPs, CIDRs, and port-based filtering
- Protocol specification: TCP, UDP, or both (default)
- IPv4 and IPv6 dual-stack support
- Falls back to client's allowedIps when firewallIps is empty
- Clean separation of routing (allowedIps) from security (firewallIps)

Supported formats:
- 10.10.0.3 (single IP)
- 10.10.0.0/24 (CIDR range)
- 192.168.1.5:443 (IP with port, both TCP+UDP)
- 192.168.1.5:443/tcp (IP with specific protocol)
- [2001:db8::1]:443 (IPv6 with port)

Implementation:
- New database columns: firewall_enabled (interfaces), firewall_ips (clients)
- Migration 0003_add_firewall_filtering for schema updates
- firewall.ts utility for iptables chain management (WG_CLIENTS chain)
- Integration into WireGuard.ts for automatic rule application
- UI components with conditional rendering based on firewall toggle

Technical details:
- Uses custom WG_CLIENTS iptables chain for isolation
- Rebuild strategy: flush and recreate all rules on config save
- Mutex protection via rebuildInProgress/rebuildQueued flags
- Graceful cleanup when firewall is disabled
- No new dependencies (uses existing is-ip, is-cidr packages)

* added Comprehensive documentation in README and docs/ for firewall
filtering

* validate firewall IPs

* check for iptables before enabling the firewall and inform the user if
it is missing

* updated firewall docs

* fix imports

* remove extra import

* Document all allowed IP/cidr/port/proto combinations that are allowed
and check on save

* add note on firewall being experimental and how to opt a single client
out of the firewall.

* cleanup more imports

* add tests

* Fix firewall IPv6 validation and test expectations

Updated validation to correctly handle plain and bracketed IPv6 addresses, and fixed test to expect string from schema instead of object.

* added comments to firewall rules and updated tests

* fix auto-import

* fix typescript errors

* recreate sql migrations and rebase

* improve tests, typechecking, documentation

* fix formatting, fix types

* improve type

* added note for including host's IP in client firewall

* updated language to include cidr and protocol options

* another language update

* refer to docs for firewall allowed IPs

---------

Co-authored-by: Bernd Storath <999999bst@gmail.com>
2026-03-05 08:47:46 +01:00
Filip Richter e5b2c3d10b Add Czech language support (#2487)
* Add Czech localization file for i18n

* Add Czech locale support to i18n configuration

* Add Czech language support to nuxt.config.ts

* Update Czech translation for 'hooks' key
2026-03-03 11:30:06 +01:00
Bernd Storath 059a0ccffc update packages 2026-03-02 08:18:59 +01:00
Maksim M. 8c9c54c8b2 i18n(ru): Add missing validNumberRange and update H1-H4 descriptions (#2501)
Update Russian translations - H Descriptions
2026-03-02 08:09:12 +01:00
Stephan Paternotte 02ce6f0a65 Update nl.json - hxDescriptions updated (#2498)
AmneziaWG 2.0: support for H1-H4 ranges (#2480)
2026-02-27 07:47:37 +01:00
Bernd Storath 48682e1abd update packages 2026-02-23 08:12:21 +01:00
Stephan Paternotte 044dd34dcc Update nl.json (#2490)
AmneziaWG 2.0: support for H1-H4 ranges (#2480) TRANSLATED
2026-02-21 20:34:09 +01:00
CthulhuVRN a469ac6897 AmneziaWG 2.0: support for H1-H4 ranges (#2480)
* AmneziaWG 2.0: support for H1-H4 ranges

## Changes:
```
- [+] Added support for H1-H4 ranges
- [!] Fixed interface fields order (H1-H4 goes before I1-I5)
```

## Known issues:
```
- [!] no check for unique/overlap of H1-H4 values on settings apply:
  settings will be applied but wg interface will crash with "Invalid argument" error
```

* AmneziaWG 2.0: support for H1-H4 ranges

## Changes:
```
- [+] Added support for H1-H4 ranges
- [!] Fixed interface fields order (H1-H4 goes before I1-I5)
```

## Known issues:
```
- [!] no check for unique/overlap of H1-H4 values on settings apply:
  settings will be applied but wg interface will crash with "Invalid argument" error
```

* AmneziaWG 2.0: support for H1-H4 ranges

## Changes:
```
- [+] Added support for H1-H4 ranges
- [!] Fixed interface fields order (H1-H4 goes before I1-I5)
```

## Known issues:
```
- [!] no check for unique/overlap of H1-H4 values on settings apply:
  settings will be applied but wg interface will crash with "Invalid argument" error
```

* Update types.ts

Lint fixes

---------

Co-authored-by: CthulhuVRN <alexander@ptitsyn.info>
2026-02-17 13:27:22 +01:00
Bernd Storath 1178d23659 update packages 2026-02-16 09:11:19 +01:00
Bernd Storath b3cc1ce839 reduce container size
from around 700mb to 400mb
2026-02-11 15:36:29 +01:00
Bernd Storath 71aaec93ef add unit tests
this adds the groundwork to start unit testing some modules
2026-02-11 15:23:04 +01:00
HackingAll 7a219b73d4 Adding galician (#2473)
* Adding galego -> gl.json

* Update i18n.config.ts

* Update nuxt.config.ts
2026-02-10 11:18:02 +01:00
Bare7a c456c5e7dd Add Bulgarian translation (#2466) 2026-02-09 08:00:38 +01:00
Bernd Storath a5880cc0b8 update packages 2026-02-09 08:00:07 +01:00
Bernd Storath 5fca628ebd change date in copyright footer 2026-02-06 15:32:39 +01:00
Bernd Storath 7ab297c366 Bump version to 15.2.2 v15.2.2 2026-02-06 14:55:20 +01:00
Bernd Storath c5de8f0f44 cli: reset 2fa on admin reset (#2461)
reset 2fa on cli reset
2026-02-06 12:28:13 +01:00
Bernd Storath c0641889cf replace watchtower (#2456)
update to maintained fork
2026-02-04 08:24:48 +01:00
Bernd Storath 9141562f91 update tagging convention for latest tag 2026-02-04 08:17:58 +01:00
thebigpotatoe d21af70df1 fix: correct help text for prometheus metrics (#2453) 2026-02-03 11:27:03 +01:00
Bernd Storath 56ee86cc1c update packages 2026-02-02 08:27:05 +01:00
Runar Ingebrigtsen f017b4968c Add Norwegian bokmål translation (#2447)
* add Norwegian bokmål translation

Signed-off-by: Runar Ingebrigtsen <runar@rin.no>

* add nb config, available in UI

Signed-off-by: Runar Ingebrigtsen <runar@rin.no>

---------

Signed-off-by: Runar Ingebrigtsen <runar@rin.no>
2026-02-02 08:18:31 +01:00
Alexander Chepurnoy 6004457666 feat: update client and server interface parameters (#2440) 2026-01-28 09:34:11 +01:00
Bernd Storath 1a5a0180ea Fix LangSelector and ClientCard z-index (#2434)
fix client card
2026-01-27 08:24:53 +01:00
Ayush Chothe c732f149e6 feat: Add wireguard-go package in Dockerfile (#2419)
* feat: Add `wireguard-go` package in `Dockerfile`

* feat: add amneziawg-go
Co-authored-by: cany748 <cany748@gmail.com>
2026-01-27 08:08:24 +01:00
Bernd Storath 4819480eb0 update packages 2026-01-26 09:02:25 +01:00
Alexander Chepurnoy fc7ab0dc21 feat(docs): edit amnezia.md (#2430)
* feat(docs): edit amnezia.md

* Update docs/content/advanced/config/amnezia.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update docs/content/advanced/config/amnezia.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-26 08:43:09 +01:00
Bernd Storath eb6b96c0f1 lang: Add dutch language (#2413)
add dutch language

Co-authored-by: Stephan Paternotte <Stephan-P@users.noreply.github.com>
2026-01-21 09:39:18 +01:00
Bernd Storath f62fad9c40 update packages 2026-01-20 08:51:19 +01:00