PiVPN Documentation

repository·master·Indexed 27 days ago

https://github.com/pivpn/pivpn

A set of shell scripts to turn a Raspberry Pi or Debian/Ubuntu-based VPS into a VPN server using WireGuard or OpenVPN protocols.

Tokens
571
Snippets
4
Records
4
Agent score
43%

What's inside PiVPN

  1. Install PiVPN using the standard method

    master

    The quickest way to install PiVPN is to use the one-line installer script. This will guide you through the setup process for either WireGuard or OpenVPN.

    curl -L https://install.pivpn.io | bash
  2. Install PiVPN from the Test/Development branch

    master

    To install the latest development or test versions of PiVPN, use the testing URL with the TESTING environment variable set.

    curl -L https://test.pivpn.io | TESTING= bash
  3. Install PiVPN via direct link or repository clone

    master

    If you prefer not to use the standard installer, you can download the script directly from GitHub or clone the entire repository to run the installation locally.

    # Method 2: Direct link
    curl https://raw.githubusercontent.com/pivpn/pivpn/master/auto_install/install.sh | bash
    
    # Method 3: Clone repo
    git clone https://github.com/pivpn/pivpn.git
    bash pivpn/auto_install/install.sh
  4. Install PiVPN from a custom Git URL and branch (for Developers)

    master

    When testing changes during development, you can specify a custom Git repository and branch. This prevents the script from defaulting to the master branch. You can also use these variables for unattended setups.

    # Using CLI flags
    git clone < customgitrepourl >
    bash pivpn/auto_install/install.sh --giturl < customgitrepourl > --gitbranch < customgitbranch >
    
    # Example
    git clone https://github.com/userthatforked/pivpn.git
    bash pivpn/auto_install/install.sh --giturl https://github.com/userthatforked/pivpn.git --gitbranch myfeaturebranch
    
    # For unattended setup configuration
    pivpnGitUrl="https://github.com/userthatforked/pivpn.git"
    pivpnGitBranch="myfeaturebranch"