🍺 BREW Explorer

← all formulae

dsvpn

brew install dsvpn v0.1.5 MIT

Dead Simple VPN

8
30-day installs · #9423
18
90-day · #10034
90
365-day · #9456
5.7k
★ GitHub stars · updated 2mo ago

GitHub topics

privacy reallysimple simple vpn

Links

Caveats

dsvpn requires root privileges so you will need to run `sudo $HOMEBREW_PREFIX/sbin/dsvpn`.
You should be certain that you trust any software you grant root privileges.
Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [],
  "categories": [],
  "caveats": "dsvpn requires root privileges so you will need to run `sudo $HOMEBREW_PREFIX/sbin/dsvpn`.\nYou should be certain that you trust any software you grant root privileges.\n",
  "conflicts_with": [],
  "dependencies": [],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Dead Simple VPN",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:37:08+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "dsvpn",
  "github_default_branch": "master",
  "github_last_commit_at": "2026-05-27T19:34:48Z",
  "github_readme_excerpt": "# ![DSVPN](https://raw.github.com/jedisct1/dsvpn/master/logo.png)\n\n[![GitHub CI status](https://github.com/jedisct1/dsvpn/workflows/CI/badge.svg)](https://github.com/jedisct1/dsvpn/actions)\n![CodeQL scan](https://github.com/jedisct1/dsvpn/workflows/CodeQL%20scan/badge.svg)\n\nDSVPN is a Dead Simple VPN, designed to address the most common use case for using a VPN:\n\n```text\n[client device] ---- (untrusted/restricted network) ---- [vpn server] ---- [the Internet]\n```\n\nFeatures:\n\n* Runs on TCP. Works pretty much everywhere, including on public WiFi where only TCP/443 is open or reliable.\n* Uses only modern cryptography, with formally verified implementations.\n* Small and constant memory footprint. Doesn\u0027t perform any heap memory allocations.\n* Small (~25 KB), with an equally small and readable code base. No external dependencies.\n* Works out of the box. No lousy documentation to read. No configuration file. No post-configuration. Run a single-line command on the server, a similar one on the client and you\u0027re done. No firewall and routing rules to manually mess with.\n* Works on Linux (kernel \u003e= 3.17), macOS and OpenBSD, as well as DragonFly BSD, FreeBSD and NetBSD in client and point-to-point modes. Adding support for other operating systems is trivial.\n* Doesn\u0027t leak between reconnects if the network doesn\u0027t change. Blocks IPv6 on the client to prevent IPv6 leaks.\n\n## Installation\n\n```sh\nmake\n```\n\nOn Raspberry Pi 3 and 4, use the following command instead to enable NEON optimizations:\n\n```sh\nenv OPTFLAGS=-mfpu=neon make\n```\n\nAlternatively, if you have [zig](https://ziglang.org) installed, it can be used to compile DSVPN:\n\n```sh\nzig build -Drelease\n```\n\nOn macOS, DSVPN can be installed using Homebrew: `brew install dsvpn`.\n\n## Secret key\n\nDSVPN uses a shared secret. Create it with the following command:\n\n```sh\ndd if=/dev/urandom of=vpn.key count=1 bs=32\n```\n\nAnd copy it on the server and the client.\n\nIf required, keys can be exported and imported in printable form:\n\n```sh",
  "github_repo": "jedisct1/dsvpn",
  "github_stars": 5690,
  "github_topics": [
    "privacy",
    "reallysimple",
    "simple",
    "vpn"
  ],
  "homepage": "https://github.com/jedisct1/dsvpn",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 8,
  "installs_365d": 90,
  "installs_90d": 18,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "dsvpn",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 9423,
  "rank_365d": 9456,
  "rank_90d": 10034,
  "raw_hash": "b4ee45df2e1025f0",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/d/dsvpn.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "0.1.5",
  "versioned_formulae": [],
  "why_use_this": null
}