I’d like to highlight a recent set of improvements in FreedomBox that significantly enhance the WireGuard experience.
The latest release (v26.9) introduces a new “auto add client” flow, where FreedomBox generates and provides a ready-to-use client configuration. This can be retrieved either as a downloadable configuration file or via QR code, making it much easier to add new devices, especially mobile clients.
In addition, recent releases as part of this ongoing WireGuard UX refurbishment have made configuration details much more visible and transparent. The interface now includes a clear table showing key server information such as the endpoint, public key, and VPN IP. This helps users better understand their setup and simplifies manual configuration when needed.
If you’ve used the WireGuard app in FreedomBox before, you may remember that client setup required more manual steps and was less intuitive. These changes aim to streamline the workflow and improve overall usability.
I’d really appreciate it if people could try out the updated WireGuard interface and share their experience.
Does the new client setup feel more straightforward?
Did you run into any issues or rough edges?
Are there things you think could still be improved or added?
In particular, if you previously found the WireGuard app difficult to use or incomplete, it would be great if you could give it another try and let us know how it compares now.
Your feedback will be very valuable in refining this app’s experience further.
Edit: Added FreedomBox version number for future reference.
I had a quick play around with Wireguard, first time setup on Freedombox 26.9.1.
Does the new client setup feel more straightforward?
I haven’t used the previous version, but the automatic client setup with QR code was very straightforward. It is certainly an improvement over adding a connection in the client and copying keys around.
Did you run into any issues or rough edges?
Once when setting up a client, I’d forgotten to click “Add connection” on the Freedombox side after scanning the QR code.
Are there things you think could still be improved or added?
There is a message stating “Save the private key now. This page shows it only once!”. I agree that there should be a more explicit and clear warning that starting the over will regenerate the configuration anew.
Does the new client setup feel more straightforward?
Didn’t use old client on fbx. Did set-up a terminal based Debian system a year ago, configuring text-files and generating qr-code. Remember adding a new client after for example a month, had to figure all out again how to do things. Setting up a client was troublesome because of configuring the correct ip-adresses/ranges.
Did you run into any issues or rough edges?
Spend some time figuring out the dynamic DNS fbx solution. In my old Debian set-up I used duckdns, could not get that working in fbx within a minute. Switched to ddns.freebox.org/GnuDIP solution, wasn’t aware of this option. After some retrials (to me the GnuDIP is bit weird, but that’s another topic) got a connection between phone and fbx. Way better than configuring via text files!
Are there things you think could still be improved or added?
With the dynamic dns set-up, I have two endpoints. The qr-code uses the local endpoint. On the client I change the endpoint to ‘User.fbx.one:51820’ to connect to fbx via internet. Make a choice which endpoint to use, or two qr-codes? Or take the external one as default (to me reason of using Wireguard is the external access to server, think that that is for most users?).
When tweaking the settings, I want to generate new QR-code on the detail-window of the client. Now I delete the whole entry and start all over again.
It would be great if you could give the client a name (‘Dad’s phone’), now I keep a txt file see what client is identified by what public key.
Only tested that there’s a connection. Didn’t use the connection yet.
DDNS is something that likely needs further attention.
The first listed domain is currently used by default in the “Auto Add Client” flow. As a workaround, users can control which domain is used by ordering the domain list accordingly.
We plan to add an option to explicitly select the domain in a future update.
This use case was considered when the feature was designed. Since re-adding a client is straightforward, FreedomBox automatically generates a new configuration with fresh key pairs. This approach avoids storing client configurations on the server.
If users need to modify the configuration, they can download it before confirming the client addition. However, once the file is edited manually, the QR code can no longer be used.
That sounds like a useful and easy-to-implement feature. I will add it to the list for consideration.
I could be wrong but the latest available version as of this date is 26.9.1. In case it is a typo. Are you on this version or an older one?
The button is located in the WireGuard app page, in the “As a server” section, under the Peers table. It is the “Add Client Automatically” button.
No. FreedomBox will generate the necessary configuration. You can then either apply the generated configuration by downloading the file or using the QR code.
Note:
The configuration will be generated using the first domain listed in the Name Services app.
Once you apply the configuration in your client, make sure to confirm the addition of the client peer by pressing the “Add Client” button in the form. If you don’t do that, the client will not be added and when you try to add a client automatically again, a whole new configuration will be generated.
Wanted to delete a peer. Clicked on the public key, get the ‘Allowed client’-window, click on ‘Delete’, get the ‘Delete Allowed Client’-window, click on delete, and a ‘Client not found’-message appears.
Ran the re-run setup option, hoped it would give a fresh config without known peers etc., but the peer was still visible. But I don’t know what’s the re-run is supposed to do.
Which brings me the gear-icon, will there be entries for the view-logs, backup an restore options?