402 Commits

Author SHA1 Message Date
Oskari Rauta 8cd2793b2c luci-proto-cni: add package
adds support for cni-protocol in luci

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
2023-03-15 14:54:23 +02:00
Jo-Philipp Wich 59a6f062d2 luci-proto-wireguard: use ddns lookup_host for peer hints
The `domain` option of a DDNS service entry may contain non-hostname values,
use the `lookup_hostname` option instead.

Fixes: #6289
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-03-14 23:36:39 +01:00
Jo-Philipp Wich b200e0e90f luci-proto-openconnect: fix server url validation
The OpenConnect configuration form incorrectly assumed that the server
setting must be hostname while it actually may be a full URL.

Fixes: #6184
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-02-08 08:57:24 +01:00
Jo-Philipp Wich 41e9b8d121 Revert "luci-proto-openconnect: fix server url validation"
This reverts commit f1312cadc6.

The commit contained unrelated changes.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-02-08 08:56:36 +01:00
Jo-Philipp Wich f1312cadc6 luci-proto-openconnect: fix server url validation
The OpenConnect configuration form incorrectly assumed that the server
setting must be hostname while it actually may be a full URL.

Fixes: #6184
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-02-07 11:53:31 +01:00
Jo-Philipp Wich ae47caf383 luci-proto-autoip: fix protocol name
Fixes: 2965e527f5 ("luci-proto-autoip: add protocol support for avahi-autoipd")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-12-19 15:29:47 +01:00
Jo-Philipp Wich 2965e527f5 luci-proto-autoip: add protocol support for avahi-autoipd
Fixes: #6162
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-12-19 15:28:06 +01:00
Jo-Philipp Wich 785792a591 luci-proto-wireguard: fix configuration import
Avoid referencing not existing `peerdns` option during the configuration
file import process.

Fixes: #6136
Fixes: 2be01cbfcb ("luci-mod-network: restrict peerdns option to protocols that implemenent it")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-12-05 10:34:51 +01:00
Jo-Philipp Wich 22c51acf81 luci-proto-wireguard: fix loading peer descriptions
Explicitly load `network` uci in wireguard rpcd backend as `ctx.foreach()`
does not implicitly load it.

Also remove leftover test setup information from the status page source.

Fixes: #6095
Fixes: 008fa18878 ("luci-proto-wireguard: rewrite rpcd handler in ucode")
Fixes: 6e6fce3eb4 ("luci-proto-wireguard: merge status page functionality")
Ref: https://github.com/jow-/ucode/pull/126
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-23 13:20:42 +01:00
Jo-Philipp Wich 6e6fce3eb4 luci-proto-wireguard: merge status page functionality
Merge status page functionality from the separate `luci-app-wireguard`
package into the `luci-proto-wirguard` protocol backend.

Also rewrite the status page markup to be more compact while we're at it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-22 10:56:36 +01:00
Julien Cassette 73aca68b9e luci-proto-wireguard: fix generated AllowedIPs
This corrects the option `AllowedIPs` in generated peer configurations,
and allows to customize it via a dropdown list.

Fixes: #5956
Signed-off-by: Julien Cassette <julien.cassette@gmail.com>
[correct fixes tag, slightly adjust option description]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-09 21:00:56 +01:00
Jo-Philipp Wich 036424df5b treewide: add explicit Lua runtime dependencies where needed
Some packages require Lua libraries but do not ship with a luasrc directory,
add explicit dependencies in these cases.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25 01:03:37 +02:00
Jo-Philipp Wich 008fa18878 luci-proto-wireguard: rewrite rpcd handler in ucode
Rewrite the wireguard rpcd plugin in ucode to prevent an implicit dependency
on the LuCI Lua runtime.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25 01:03:37 +02:00
Stan Grishin aff9f12440 Merge pull request #6023 from stangri/master-luci-proto-nebula
luci-proto-nebula: add nebula protocol support
2022-10-17 10:21:24 -07:00
Jaymin Patel 6be4bd886d luci-proto-vti: add vti protocol support
Signed-off-by: Jaymin Patel <jem.patel@gmail.com>
2022-10-14 19:53:39 +05:30
Stan Grishin d55913cfa4 luci-proto-nebula: add nebula protocol support
Signed-off-by: Stan Grishin <stangri@melmac.ca>
2022-10-14 12:02:56 +00:00
Florian Eckert 20ae64edec Merge pull request #5968 from db260179/master
luci-proto-openconnect: Add options proxy server and reconnect timeout
2022-09-14 19:21:42 +02:00
David Bentham 1f25483953 luci-proto-openconnect: Add options proxy server and reconnect timeout support
Signed-off-by: David Bentham <db260179@gmail.com>
2022-09-10 19:54:18 +01:00
Hannu Nyman 38ce475bc9 luci-proto-unet: initial support
Initial support for the new unetd VPN daemon.

Currently this just enables seeing the VPN interface
in the LuCI network overview, plus the keys used.
No relevant config change possibilities, yet.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2022-09-06 23:48:56 +03:00
Florian Eckert bce530e18c Merge pull request #5448 from clayface/master
luci-proto-openfortivpn: cert/key PEM support, persistent option, SHA label fix
2022-08-11 07:53:38 +02:00
Matthew Hagan 57936a40c3 luci-proto-openfortivpn: Correct server certificate SHA label
According to the documentation[1], the SHA256 hash is used for the
trusted-cert option, not SHA1.

[1] https://github.com/adrienverge/openfortivpn/blob/master/doc/openfortivpn.1.in

Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2022-08-10 23:03:58 +01:00
Matthew Hagan c084570d06 luci-proto-openfortivpn: add persistent reconnect option
Add ability to specify persistent reconnection interval.

Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2022-08-10 23:03:58 +01:00
Matthew Hagan 1f01a661c9 luci-proto-openfortivpn: add user, key, CA PEM support
Add PEM inputs and file handling for user cert, key and CA cert. This
handling is largely based upon that used in luci-proto-openconnect.

Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2022-08-10 23:03:54 +01:00
Jo-Philipp Wich 94bfa33452 luci-proto-wireguard: handle multiple peers in imported configuration
When importing a fully configuration, import all peer entries from it
instead of non-deterministically merging all peer keys into one.

When importing a remote configuration as peer, only use the setting from
the peer section matching our local interface pubkey.

Also relabel the `Import peer configuration` button to
`Import configuration as peer` in order to be more explicit.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-08-01 13:00:31 +02:00
Jalakas 049d876bc1 luci-proto-ncm: adds missing error messages, removes 'dialnumber' option, changes 'delay' according to real behavior
This commit:
Adds missing error messages and harmonizes message texts with comgt-ncm script. [1]
Removes option 'dialnumber' not used in comgt-ncm. [1][2]
Fixes option 'delay' according to comgt-ncm script real behavior. (No default value, if parameter is set, then there's always sleep) [1]

[1] https://github.com/openwrt/openwrt/blob/master/package/network/utils/comgt/files/ncm.sh
[2] https://github.com/openwrt/openwrt/blob/master/package/network/utils/comgt/files/ncm.json

Signed-off-by: Anari Jalakas <anari.jalakas@gmail.com>
2022-07-28 19:53:26 +03:00
Jo-Philipp Wich 2ae74b909b luci-proto-wireguard: configuration import improvements
- Reword texts in import dialogs for better clarity, use different
   descriptions for full import and peer import

 - Allow importing configurations without [Peer] section

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-07-23 20:24:09 +02:00
Jo-Philipp Wich 4d6642b636 luci-proto-ncm: rename service option to mode
Package luci-proto-ncm depends on comgt-ncm which uses an option
called 'mode' to set the radiomode of the modem. There is no option
'service' in the comgt-ncm scripts.

Suggested-by: breenstorm <49235337+breenstorm@users.noreply.github.com>
[fix commit subject, add commit message, rebase onto master branch]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-07-23 13:18:03 +02:00
Jo-Philipp Wich 340183786e luci-proto-wireguard: gracefully deal with missing uci configs
The /etc/config/ddns in particular might not be present on the system,
don't fail if it is absent.

Fixes: #5838
Fixes: 9ba20645b0 ("luci-proto-wireguard: rewrite protocol handler")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-06-21 00:07:48 +02:00
Jo-Philipp Wich 4769bf11aa luci-proto-wireguard: grant uci read access to system and ddns config
The configuration export requires access to /e/c/system and /e/c/ddns for
external hostname hints.

Fixes: #5838
Fixes: 9ba20645b0 ("luci-proto-wireguard: rewrite protocol handler")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-06-20 23:58:07 +02:00
Jo-Philipp Wich 9ba20645b0 luci-proto-wireguard: rewrite protocol handler
This commit rewrites large chunks of the WireGuard protocol handler in order
to simplify the process of importing and exporting configuration. The major
changes are:

1) The wireguard interface configuration tab (General Settings) gained an
   import assistant which allows dragging or pasting a native WireGuard
   configuration file in order to import required settrings into uci

2) The peer configuration tab gained a similar import assistant which allows
   importing the settings for a WireGuard peer from an existing native
   WireGuard configuration file

3) The QR code export feature has been rewritten to make the resulting codes
   actually useful for importing into a WireGuard client application.
   Additionally the plaintext native WireGuard configuration is displayed
   to allow copy-pasting it for use on a Linux or OS X system

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-05-17 15:45:20 +02:00
Florian Eckert 60137e9c5a Merge pull request #5698 from onemarcfifty/luci-ptoto-batadv
luci-proto-batman-adv: LuCI Support for the batman-adv protocol
2022-04-16 13:37:40 +02:00
Marc Ahlgrim 0a762fd671 luci-proto-batman-adv: add luci-proto-batman-adv
This commit adds support
for the batadv and the batadv_hardif protocols
to LuCI

Signed-off-by: Marc Ahlgrim <marc@onemarcfifty.com>
2022-04-14 15:08:09 +02:00
Florian Eckert 7206d8fd6a luci-proto-wireguard: adjust MTU range from 0-8940
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2022-04-14 11:59:56 +02:00
Florian Eckert ddd04a719f luci-proto-wireguard: remove MTU limit
fixes #5737

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2022-04-12 10:32:25 +02:00
Lukas Voegl b6925a1227 luci-proto-wireguard: add generate psk button
Signed-off-by: Lukas Voegl <lvoegl@tdt.de>
2022-03-18 14:47:44 +01:00
Florian Eckert 6ada502dde Merge pull request #5642 from hgl/xfrm
luci-proto-xfrm: add luci xfrm support
2022-01-22 16:10:47 +01:00
Matthew Hagan 37253b5693 luci-proto-ipip: add nohostroute configurable
Add configurable to explicitly disable creation of route to the peer
address.

Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2022-01-19 23:09:00 +00:00
Matthew Hagan f62b36ee38 luci-proto-ipip: explicitly set df to optional
Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2022-01-19 23:04:37 +00:00
Glen Huang 9b02d5b776 luci-proto-xfrm: add xfrm proto support
Signed-off-by: Glen Huang <heyhgl@gmail.com>
2022-01-19 22:35:33 +08:00
Jo-Philipp Wich ff4f52983e Merge pull request #5540 from jow-/wireguard-peer-gridsection
Implement nested grid section support and use it for wireguard peer config
2021-12-02 10:54:36 +01:00
Florian Eckert a1723c2272 Merge pull request #5400 from systemcrash/wg_pubkey
luci-proto-wireguard: display interface public key
2021-11-30 14:10:19 +01:00
Jo-Philipp Wich f2445a862e luci-proto-wireguard: turn peer configuration into grid view
Turn the list of configured peers into a grid section in order to improve
the overview of the configuration form.

Fixes: #5489
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-11-22 09:43:29 +01:00
Jo-Philipp Wich f58ae7635c luci-proto-wireguard: fix QR code generation markup
The custom code generation markup lacked a required CSS class.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-11-21 23:40:21 +01:00
Robert Walli aaa2b3dd2b luci-proto-wireguard: add option to disable peer-section
Submitted-by: Robert Walli <12079858+rwalli@users.noreply.github.com>
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-11-17 16:38:20 +01:00
Paul Dee 8a9dbe39d5 luci-proto-wireguard: display interface public key
Signed-off-by: Paul Dee <itsascambutmailmeanyway@gmail.com>
2021-11-11 01:31:43 +01:00
Jo-Philipp Wich 44445a8097 luci-proto-wireguard: fix potential shell injection vulnerabilities
The `luci.wireguard.generateQrCode` UBUS method allows injecting
arbitrary shell code by not sanitizing the `privkey` and `allowed_ips`
arguments before concatenating them into shell command expressions.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-10-08 20:27:13 +02:00
Jo-Philipp Wich 01ecb1ac8a luci-proto-wireguard: fix markup not valid for XHTML
Fixes: #5407
Fixes: 03d615f62c ("luci-proto-wireguard: add more options to qr code")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-10-07 16:19:30 +02:00
Florian Eckert fc8a0b4d51 Merge pull request #5403 from lvoegl/luci-app-wireguard-fix-parsing
luci-app-wireguard: fix allowed_ip parsing
2021-10-01 17:06:33 +02:00
lvoegl 193abe7221 luci-app-wireguard: fix allowed_ip parsing
Signed-off-by: lvoegl <lvoegl@tdt.de>
2021-10-01 15:31:38 +02:00
Florian Eckert 88d7cc1261 luci-proto-wireguard: fix luci.wireguard rpcd dependency
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2021-09-30 12:46:15 +02:00