VPN mittels OPNSense

+1
Ich hätte auch Interesse. Danke für deine Mühen!
Grüße
Michael

Hi. Also ist das „per Design“ nicht möglich? Wäre es denn denkbar, dass die WebUI (genau wie sie das schon zu 6.x- und IPFire-Zeiten gemacht hat), einen Teil der Arbeit übernimmt und das Client-Cert im User-Dir ablegt, während das Server-Cert auf der OPNSense abgelegt wird? Oder steht dem irgendwas im Wege?

Viele Grüße,
Michael

Hi Michael,

Leider nein, man müsste sich einen Workaround überlegen, in dem der Nutzer sein publickey mit der WebUI hochlädt.

Möglich ist das sicher, aber dadurch, dass OpenVPN ja out of the box funktioniert und WireGuard dadurch „nur“ eine Performance Verbesserung wäre, ist die Priorität sowas einzubauen meiner Meinung nach nicht extrem hoch, wir haben ja noch genug andere Baustellen. :wink:

VG, Dorian

Jein – es soll angeblich rund ein Faktor 4 sein, den Wireguard die Nase vorn hat … auch ich finde Wireguard wirklich spürbar flotter im Vergleich zu VPN. Deshalb würde ich nicht gerne zu OpenVPN zurückkehren. Wenn es „nur“ darum geht, den public key auf die OPNSense zu befördern, klingt das aber nicht völlig unlösbar :slight_smile: . Ich weiß aber nicht, ob man die Wireguard-Zugänge ggf per API verwalten kann?

Viele Grüße,
Michael

Hi Michael,

Ich schlage Folgendes vor:
Du kannst ja mal testen, ob das WireGuard Plugin für die OPNsense das tut, was du brauchst (installieren unter System > Firmware > Erweiterungen). Wenn das klappt, können wir mal schauen, ob die OPNsense API es zulässt, die Einträge für clients zu machen. Wenn das auch klappt, dann können wir auf die WebUI Entwickler zugehen und sie bitten, es einzubauen :slight_smile:

Vg, Dorian

Ja klar klappt das – sogar super gut! Ich „verwalte“ hier im Moment 13 Wireguard-Zugänge über die OPNSense. Die habe ich -sagen wir mal- „halb-automatisch“ angelegt (vgl hier → V7: Wireguard nochmal weitergedacht )

Wenn man das automatisieren oder für weitere User in die WebUI einbauen könnte, wäre das sicher eine gute Sache… ich weiß natürlich, dass Wireguard noch jung ist. Wir hatten aber (im Gegensatz zu VPN) bisher nie Probleme damit…

Viele Grüße,
Michael

Hi Michael,

Den Thread kannte ich noch nich, ich schau mir das am Donnerstag oder Freitag mal genauer an :slight_smile:
In deinem Eingangspost habe ich es nicht ganz verstanden, deshalb nochmal die Frage:
In deiner Anleitung: Haben die Lehrer und Schüler bei dir Zugang zur Opnsense? Wo generieren sie die Keys?

VG, Dorian

Hallo Dorian,

ich vermute, in der WebUI. So war das zumindest bis zur 6.2.

Viele Grüße
Steffen

Bisher hat da niemand Zugriff… Ich habe das bisher für die Kollegen, die den Zugang benötigen, alles selbst eingestellt…

Hallo Michael,

schade, dass das demnach nicht mehr über die WebUI abgebildet wird und die User das nicht mehr selbst machen können.

Viele Grüße
Steffen

??? Wieso das???

Hallo Michael,

Entlastung für dich :thinking:

Viele Grüße
Steffen

Hallo,

nur weil die WebUI das jetzt nicht kann, heißt das ja nicht, dass sie das nie können wird.
Die alte LMN konnte das ja auch nicht in ihren frühen Tagen: das kam irgend wann dazu.
Ich halte es durchaus für möglich, dass das mal wird.

LG

Holger

Sorry … hatte Dich falsch verstanden. Ich dachte, dass du die WebUI kennst.

Genau … es ist wahrscheinlich sogar gut, wenn die WebUI das macht!? Da könnte ein User seinen Zugang „anfordern“ und den Rest müsste dann auf der OPNSense vermutlich ein Cronjob mit root-Rechten erledigen…

Ich schau mir am Donnerstag oder so mal die opnsense api an, vielleicht geht das ja auch darüber, das weiß ich noch nicht.

Na, wer sagts denn :slight_smile:
Natürlich geht es
https://docs.opnsense.org/development/api/plugins/wireguard.html

Ich bau das mal testweise in meiner Landingspage ein, aber es sollte auch in der WebUI problemlos möglich sein.

Hallo Michael,

nein, ich hatte ja nie eine 7er, weil seit 2018 aus bekanntem Grund keine LMN mehr.

so war das in der LMN 5 und 6.

Viele Grüße
Steffen

ok – aber das WebUI hättest du ja trotzdem irgendwo her kennen können … aber wie auch immer.

Das ist doch ein sehr guter Ansatzpunkt :+1: Wenn das mit Deiner Landingpage funktioniert, wäre es mir natürlich auch recht :slight_smile:

Viele Grüße,
Michael

Mein Plan wäre jetzt folgender:

  1. User meldet sich an der Landingpage an
  2. User drückt auf „VPN Key generieren“, dadurch wird ein Keypaar generiert und der Publickey wird in der opnsense eingetragen.
  3. Der User bekommt einen Qr-Code (oder download) angezeigt um den Key und die Einstellungen zu importieren

Ich denke, das sollte klappen.
(Das Generieren des Private Keys auf dem Server ist zwar nicht die Feine Art, aber an der Stelle meiner Meinung nach unbedenklich)

EDIT: Man könnte die Keys auch im Browser generieren, aber das ist out of scope für das Proof of concept in der landingpage:
https://git.zx2c4.com/wireguard-tools/tree/contrib/keygen-html/wireguard.js

VG, Dorian

@Arnaud Wäre das auf lange Sicht auch was, das in die WebUI könnte?