PiVPN

pivpn.io
PiVPN

A simple way to set up a home VPN on any Debian server. Supports OpenVPN and WireGuard with elliptic curve encryption keys up to 512 bit. Supports multiple DNS providers and custom DNS providers - works nicely along-side PiHole.

Open Source

PiVPN Source Code

Author

pivpn

Description

The Simplest VPN installer, designed for Raspberry Pi

#openvpn#openvpn-installer#pivpn#raspberry-pi#vpn-server#wireguard

Homepage

https://pivpn.io

License

MIT

Created

17 Apr 16

Last Updated

16 Jun 26

Latest version

v4.11.1

Primary Language

Shell

Size

2,160 KB

Stars

8,004

Forks

686

Watchers

8,004

Language Usage

Language Usage

Star History

Star History

Recent Commits

  • Michael Woolweaver (06 Nov 25)

    Update condition to check for sources.list files potential fix for #1924

  • MichaIng (13 Sept 25)

    fix(install): consider /lib and /usr/lib both as valid module paths Since Debian Trixie, /usr/lib/modules is correctly considered as valid kernel module path, but 3rd party packages can fomally still ship modules below /lib/modules, or below /usr/lib/modules as well on older Debian versions. Since usrmerge, both are effectively the same directory anyway. Hence always consider both paths. Signed-off-by: MichaIng <[email protected]>

  • Orazio (16 Aug 25)

    feat(install): rely on journal to read openvpn logs on debian-based distros

  • Orazio (16 Aug 25)

    fix(install): remove existing temporary setup vars file in case it's owned by another user

  • Orazio (16 Aug 25)

    feat(install): increase minimum TLS version to limit ciphersuites reducing attack surface

  • Orazio (16 Aug 25)

    feat(install): update EasyRSA to version 3.2.3

  • Orazio (15 Aug 25)

    fix(install): correct tls-crypt-v2 server key location

  • Orazio (15 Aug 25)

    feat(scripts): reject revoked or malicious clients before TLS auth with tls-crypt-v2 metadata (2.5+)

  • Orazio (14 Aug 25)

    feat(install): generate client-specific tls-crypt keys for better security (2.5+)

  • Orazio (13 Aug 25)

    fix(install): fix Debian 13 (trixie) support and other minor improvements

  • Rafael Alexandre (23 Apr 25)

    add --client-ip/-ip 'auto' option + fix default/empty peer name logic Signed-off-by: Rafael Alexandre <[email protected]>

  • Orazio (12 Mar 25)

    Only backup WireGuard folder if it contains files

  • Carlos Colaço (10 Mar 25)

    feat(install): Remove support for EOL OS Debian buster is EOL since June 30th 2024

  • Jacob Fleming (02 Mar 25)

    Fix UFW throwing invalid position error during IPv6 configuration. UFW reports "ERROR: Invalid position at ‘1’" when attempting to insert an IPv6 rule above an IPv4 rule, which breaks IPv6 functionality on setups running UFW. This is fixed by appending the rule below all others.

  • Orazio (20 Feb 25)

    feat(install): support configuring Pi-hole v6

  • peter-skuhra (25 Jan 25)

    feat(scripts): add the option to enter custom Client IP script/wireguard: add the '--client-ip' option to enter any Client IP from a given range when creating a client profile. This gives the user better control over which IP address will be assigned to the client.

  • wlmchen (29 Jul 24)

    Fix Alpine persistence

  • Xavier L (04 Jun 24)

    feat(install): add support for wireguard in containers Adds support for detecting when a host kernel loaded wireguard. The kernel module appears loaded but the information about it may not be available.

  • 4s3ti (13 Apr 24)

    build: Add automated release actions

  • Orazio (13 Apr 24)

    fix(scripts): prevent adding wireguard 'usernames' longer than 15 characters, fixes issue #1816

  • Orazio (13 Apr 24)

    Update maintenance notice

  • Orazio (13 Apr 24)

    feat(install): Mark upcoming Ubuntu 24.04 as explicity supported, drop EOL Debian version

  • Orazio (13 Apr 24)

    Re-enable issues and pull requests

  • 4s3ti (06 Apr 24)

    docs: Add lockdown workflow Add workflow to automatically close any issue or pull request

  • 4s3ti (06 Apr 24)

    chore: Disable bug reports

  • 4s3ti (06 Apr 24)

    docs: Add unmaintained warning

  • Jonathan (05 Apr 24)

    feat(install): Add possibility to use Pi-hole in unattended install (#1825) In unattended install, there is no possibility to specify if user wants to use Pi-hole DNS as DNS. Introducing a --use-pihole argument, user can decide if PiVPN configuration should be aligned to the Pi-hole installation.

  • Orazio (23 Nov 23)

    Updates to subnet generation and client creation (#1782) * refactor(core): allow any subnet and netmask * fix(scripts): prevent adding more clients than the subnet allows * fix(scripts): correctly remove leading zeros from ipv6 quartets * refactor(core): new probabilistic subnet generation with fallback to other RFC1918 subnets

  • Orazio (29 Jan 24)

    fix(install): don't treat http errors as unavailable ipv6

  • 4s3ti (28 Jan 24)

    build: publish-install.yml Publish install script to github pages

PiVPN Security

3.7/10

Repo Security Summary

Updated 25 May 26

  • Code-Review 3/10
  • Maintained 6/10
  • Dangerous-Workflow 10/10
  • Packaging N/A
  • Token-Permissions 0/10
  • Binary-Artifacts 10/10
  • CII-Best-Practices 0/10
  • Security-Policy 0/10
  • Pinned-Dependencies 0/10
  • License 10/10
  • Fuzzing 0/10
  • Signed-Releases N/A
  • Branch-Protection 0/10
  • SAST 0/10

PiVPN Website

Website

PIVPN: Simplest way to setup a VPN

Redirects

Redirects to https://www.pivpn.io/

Security Checks

All 65 security checks passed

Server Details

  • IP Address 185.199.110.153
  • Hostname cdn-185-199-110-153.github.com
  • Location California, Pennsylvania, United States of America, NA
  • ISP GitHub Inc.
  • ASN AS54113

Associated Countries

  • US US

Safety Score

Website marked as safe

100%

Blacklist Check

www.pivpn.io was found on 0 blacklists

  • AntiSocial Blacklist
  • Artists Against 419
  • Badbitcoin
  • Bambenek Consulting
  • CERT Polska
  • CoinBlockerLists
  • CRDF
  • CryptoScamDB
  • EtherAddressLookup
  • EtherScamDB
  • Fake Website Buster
  • MetaMask EthPhishing
  • NABP Not Recommended Sites
  • OpenPhish
  • PetScams
  • PhishFeed
  • PhishFort
  • Phishing.Database
  • PhishStats
  • PhishTank
  • Phishunt
  • RPiList Not Serious
  • Scam.Directory
  • SecureReload Phishing List
  • Spam404
  • StopGunScams
  • Suspicious Hosting IP
  • ThreatFox
  • ThreatLog
  • TweetFeed
  • URLhaus
  • ViriBack C2 Tracker

Website Preview

Website preview

PiVPN Reviews

More Self-Hosted Network Security

About the Data: PiVPN

API

You can access PiVPN's data programmatically via our API. Simply make a GET request to:

https://api.awesome-privacy.xyz/v1/services/pivpn

The REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.

Share PiVPN

Help your friends compare Self-Hosted Network Security, and pick privacy-respecting software and services.
Share PiVPN and Awesome Privacy with your network!

View Self-Hosted Network Security (8)