@libreservice/my-ovpn
v0.3.1
Published

Downloads
5
Readme
My OVPN
Generate CA, server and client configuration for OpenVPN.
https://my-ovpn.vercel.app/
This is a STATIC website so you DON'T need to own a server to host it.
All computation is performed in browser, thanks to Web Assembly.
It's also a PWA, so you can install it like a native App and use it OFFLINE.
Use case
CA
- Generate
ca.keyandca.crt.
Server
- Given
ca.keyandca.crt, generateserver.keyandserver.crt. - Generate
dh2048.pem(extremely slow). - Generate
ta.keyto be shared with every client. - Generate
server.conf.
Client
- Given
ca.keyandca.crt, generateclient.keyandclient.crt. - Generate
client.ovpn. - Embed
ca.crt,client.key,client.crtandta.keyintoclient.ovpn(useful for Android and iOS).
Self host
Download latest artifact built by GitHub Actions.
Development workflow
My OVPN can be built on Linux and macOS.
For Windows, you may use WSL.
Install node
You may use nvm to install node.
Install pnpm and dev dependencies
npm i -g pnpm
pnpm iInstall emsdk
https://emscripten.org/docs/getting_started/downloads.html
Get submodule
git submodule init
git submodule updateBuild wasm
pnpm run lib
pnpm run wasmRun develop server
pnpm run devLint
pnpm run lint:fixCheck type
pnpm run checkBuild
pnpm run buildTest
pnpm run testPreview
pnpm run previewDeploy
export LIBRESERVICE_CDN=https://cdn.jsdelivr.net/npm/@libreservice/my-ovpn@VERSION/dist/ # optional
vercel build --prod
vercel deploy --prebuilt --prodLicense
AGPLv3+
