Metadata-Version: 2.1
Name: pritunl
Version: 1.32.4103.16
Summary: Enterprise VPN server
Home-page: https://github.com/pritunl/pritunl
Download-URL: https://github.com/pritunl/pritunl/archive/1.32.4103.16.tar.gz
Author: Pritunl
Author-email: contact@pritunl.com
License: Copyright (c) 2013-2024 Pritunl
        
                                       LICENSE SUMMARY
        
        * License does not expire
        * Can be used on unlimited sites, servers
        * Source-code or binary products cannot be resold or distributed
        * Non-commercial use only
        * Can modify source-code but cannot distribute modifications (derivative works)
        
                                          PREAMBLE
        
        This Agreement, signed on Nov 12, 2014 [hereinafter: Effective Date] governs
        the relationship between you, a private person, (hereinafter: Licensee) and
        Pritunl, a private person whose principal place of business is United States
        (Hereinafter: Licensor). This Agreement sets the terms, rights, restrictions
        and obligations on using [Pritunl] (hereinafter: The Software) created and
        owned by Licensor, as detailed herein
        
                                        LICENSE GRANT
        
        Licensor hereby grants Licensee a Personal, Non-assignable &
        non-transferable, Non-commercial, Royalty free, Without the rights to create
        derivative works, Non-exclusive license, all with accordance with the terms
        set forth and other legal restrictions set forth in 3rd party software used
        while running Software.
        
        Limited: Licensee may use Software for the purpose of:
        
        * Running Software on Licensee's Website[s] and Server[s]
        * Allowing 3rd Parties to run Software on Licensee's Website[s] and Server[s]
        * Publishing Software's output to Licensee and 3rd Parties
        * Modify Software to suit Licensee's needs and specifications.
        
        Non Assignable & Non-Transferable: Licensee may not assign or transfer his
        rights and duties under this license.
        
        Non-Commercial: Licensee may not use Software for commercial purposes. for the
        purpose of this license, commercial purposes means that a 3rd party has to pay
        in order to access Software or that the Website that runs Software is behind a
        paywall.
        
                                     TERM & TERMINATION
        
        The Term of this license shall be until terminated. Licensor may terminate
        this Agreement, including Licensee's license in the case where Licensee:
        
        * became insolvent or otherwise entered into any liquidation process; or
        exported The Software to any jurisdiction where licensor may not enforce his
        rights under this agreements in; or
        * Licensee was in breach of any of this license's terms and conditions and
        such breach was not cured, immediately upon notification; or
        * Licensee in breach of any of the terms of clause 2 to this license; or
        * Licensee otherwise entered into any arrangement which caused Licensor to be
        unable to enforce his rights under this License.
        
                                UPGRADES, UPDATES AND FIXES
        
        Licensor may provide Licensee, from time to time, with Upgrades, Updates or
        Fixes, as detailed herein and according to his sole discretion. Licensee
        hereby warrants to keep The Software up-to-date and install all relevant
        updates and fixes, and may, at his sole discretion, purchase upgrades,
        according to the rates set by Licensor. Licensor shall provide any update or
        Fix free of charge; however, nothing in this Agreement shall require Licensor
        to provide Updates or Fixes.
        
        Upgrades: for the purpose of this license, an Upgrade shall be a material
        amendment in The Software, which contains new features and or major
        performance improvements and shall be marked as a new version number. For
        example, should Licensee purchase The Software under version 1.X.X, an upgrade
        shall commence under number 2.0.0.
        
        Updates: for the purpose of this license, an update shall be a minor amendment
        in The Software, which may contain new features or minor improvements and
        shall be marked as a new sub-version number. For example, should Licensee
        purchase The Software under version 1.1.X, an upgrade shall commence under
        number 1.2.0.
        
        Fix: for the purpose of this license, a fix shall be a minor amendment in The
        Software, intended to remove bugs or alter minor features which impair the The
        Software's functionality. A fix shall be marked as a new sub-sub-version
        number. For example, should Licensee purchase Software under version 1.1.1,
        an upgrade shall commence under number 1.1.2.
        
                                          SUPPORT
        
        Software is provided under an AS-IS basis and without any support, updates or
        maintenance. Nothing in this Agreement shall require Licensor to provide
        Licensee with support or fixes to any bug, failure, mis-performance or other
        defect in The Software.
        
        Bug Notification: Licensee may provide Licensor of details regarding any bug,
        defect or failure in The Software promptly and with no delay from such event;
        Licensee shall comply with Licensor's request for information regarding bugs,
        defects or failures and furnish him with information, screenshots and try to
        reproduce such bugs, defects or failures.
        
        Feature Request: Licensee may request additional features in Software,
        provided, however, that (i) Licensee shall waive any claim or right in such
        feature should feature be developed by Licensor; (ii) Licensee shall be
        prohibited from developing the feature, or disclose such feature request, or
        feature, to any 3rd party directly competing with Licensor or any 3rd party
        which may be, following the development of such feature, in direct competition
        with Licensor; (iii) Licensee warrants that feature does not infringe any 3rd
        party patent, trademark, trade-secret or any other intellectual property
        right; and (iv) Licensee developed, envisioned or created the feature solely
        by himself.
        
                                         LIABILITY
        
        To the extent permitted under Law, The Software is provided under an AS-IS
        basis. Licensor shall never, and without any limit, be liable for any damage,
        cost, expense or any other payment incurred by Licensee as a result of
        Software's actions, failure, bugs and/or any other interaction between The
        Software  and Licensee's end-equipment, computers, other software or any 3rd
        party, end-equipment, computer or services.  Moreover, Licensor shall never be
        liable for any defect in source code written by Licensee when relying on The
        Software or using The Software's source code.
        
                                         WARRANTY
        
        Intellectual Property: Licensor hereby warrants that The Software does not
        violate or infringe any 3rd party claims in regards to intellectual property,
        patents and/or trademarks and that to the best of its knowledge no legal
        action has been taken against it for any infringement or violation of any 3rd
        party intellectual property rights.
        
        No-Warranty: The Software is provided without any warranty; Licensor hereby
        disclaims any warranty that The Software shall be error free, without defects
        or code which may cause damage to Licensee's computers or to Licensee, and
        that Software shall be functional. Licensee shall be solely liable to any
        damage, defect or loss incurred as a result of operating software and
        undertake the risks contained in running The Software on License's Server[s]
        and Website[s].
        
        Prior Inspection: Licensee hereby states that he inspected The Software
        thoroughly and found it satisfactory and adequate to his needs, that it does
        not interfere with his regular operation and that it does meet the standards
        and scope of his computer systems and architecture. Licensee found that The
        Software interacts with his development, website and server environment and
        that it does not infringe any of End User License Agreement of any software
        Licensee may use in performing his services. Licensee hereby waives any claims
        regarding The Software's incompatibility, performance, results and features,
        and warrants that he inspected the The Software.
        
                                       INDEMNIFICATION
        
        Licensee hereby warrants to hold Licensor harmless and indemnify Licensor for
        any lawsuit brought against it in regards to Licensee's use of The Software in
        means that violate, breach or otherwise circumvent this license, Licensor's
        intellectual property rights or Licensor's title in The Software. Licensor
        shall promptly notify Licensee in case of such legal action and request
        Licensee's consent prior to any settlement in relation to such lawsuit or
        claim.
        
                                GOVERNING LAW, JURISDICTION
        
        Licensee hereby agrees not to initiate class-action lawsuits against Licensor
        in relation to this license and to compensate Licensor for any legal fees,
        cost or attorney fees should any claim brought by Licensee against Licensor be
        denied, in part or in full.
        
Keywords: pritunl,vpn server,distributed vpn server,enterprise vpn server,open source vpn server,virtual private network,virtual networks,openvpn client,openvpn server,vpn tutorial
Platform: Linux
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: Other/Proprietary License
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: System :: Networking
License-File: LICENSE

# pritunl: enterprise vpn server

[![github](https://img.shields.io/badge/github-pritunl-11bdc2.svg?style=flat)](https://github.com/pritunl)
[![twitter](https://img.shields.io/badge/twitter-pritunl-55acee.svg?style=flat)](https://twitter.com/pritunl)
[![medium](https://img.shields.io/badge/medium-pritunl-b32b2b.svg?style=flat)](https://pritunl.medium.com)
[![forum](https://img.shields.io/badge/discussion-forum-ffffff.svg?style=flat)](https://forum.pritunl.com)

[Pritunl](https://github.com/pritunl/pritunl) is a distributed enterprise
vpn server built using the OpenVPN protocol. Documentation and more
information can be found at the home page [pritunl.com](https://pritunl.com)

[![pritunl](www/img/logo_code.png)](https://pritunl.com)

## Install From Source

```bash
# Install MongoDB if running single host configuration
sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo << EOF
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF

sudo yum -y install mongodb-org
sudo systemctl start mongod
sudo systemctl enable mongod

# Set current pritunl version X.XX.XXXX.XX
# Set to master to run code from repository (only for testing)
export VERSION="master"

# RHEL EPEL
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# Oracle Linux EPEL
sudo yum -y install oracle-epel-release-el8
sudo yum-config-manager --enable ol8_developer_EPEL

sudo yum -y install openssl-devel bzip2-devel libffi-devel sqlite-devel xz-devel zlib-devel gcc git openvpn openssl net-tools iptables psmisc ca-certificates selinux-policy selinux-policy-devel wget tar policycoreutils-python-utils

wget https://www.python.org/ftp/python/3.9.16/Python-3.9.16.tar.xz
echo "22dddc099246dd2760665561e8adb7394ea0cc43a72684c6480f9380f7786439 Python-3.9.16.tar.xz" | sha256sum -c -

tar xf Python-3.9.16.tar.xz
cd ./Python-3.9.16
mkdir /usr/lib/pritunl
./configure --prefix=/usr --libdir=/usr/lib --enable-optimizations --enable-ipv6 --enable-loadable-sqlite-extensions --disable-shared --with-lto --with-platlibdir=lib
make DESTDIR="/usr/lib/pritunl" install
/usr/lib/pritunl/usr/bin/python3 -m ensurepip --upgrade
/usr/lib/pritunl/usr/bin/python3 -m pip install --upgrade pip

wget https://go.dev/dl/go1.19.3.linux-amd64.tar.gz
echo "74b9640724fd4e6bb0ed2a1bc44ae813a03f1e72a4c76253e2d5c015494430ba go1.19.3.linux-amd64.tar.gz" | sha256sum -c -

sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xf go1.19.3.linux-amd64.tar.gz
rm -f go1.19.3.linux-amd64.tar.gz

tee -a ~/.bashrc << EOF
export GOPATH=\$HOME/go
export PATH=/usr/local/go/bin:\$PATH
EOF
source ~/.bashrc

sudo systemctl stop pritunl || true
sudo rm -rf /usr/lib/pritunl

sudo mkdir -p /usr/lib/pritunl
sudo mkdir -p /var/lib/pritunl
sudo virtualenv-3 /usr/lib/pritunl

GOPROXY=direct go install github.com/pritunl/pritunl-web@latest
GOPROXY=direct go install github.com/pritunl/pritunl-dns@latest
sudo rm /usr/bin/pritunl-dns
sudo rm /usr/bin/pritunl-web
sudo cp -f ~/go/bin/pritunl-dns /usr/bin/pritunl-dns
sudo cp -f ~/go/bin/pritunl-web /usr/bin/pritunl-web

go get -v -u github.com/pritunl/pritunl-dns
go get -v -u github.com/pritunl/pritunl-web
sudo cp -f ~/go/bin/pritunl-dns /usr/bin/pritunl-dns
sudo cp -f ~/go/bin/pritunl-web /usr/bin/pritunl-web

wget https://github.com/pritunl/pritunl/archive/$VERSION.tar.gz
tar xf $VERSION.tar.gz
rm $VERSION.tar.gz
cd ./pritunl-$VERSION
/usr/lib/pritunl/bin/python setup.py build
sudo /usr/lib/pritunl/usr/bin/pip3 install --require-hashes -r requirements.txt
sudo /usr/lib/pritunl/usr/bin/python3 setup.py install
sudo ln -sf /usr/lib/pritunl/usr/bin/pritunl /usr/bin/pritunl

cd selinux8
ln -s /usr/share/selinux/devel/Makefile
make
sudo make load
sudo cp pritunl.pp /usr/share/selinux/packages/pritunl.pp
sudo cp pritunl_dns.pp /usr/share/selinux/packages/pritunl_dns.pp
sudo cp pritunl_web.pp /usr/share/selinux/packages/pritunl_web.pp

sudo semodule -i /usr/share/selinux/packages/pritunl.pp /usr/share/selinux/packages/pritunl_dns.pp /usr/share/selinux/packages/pritunl_web.pp
sudo restorecon -v -R /tmp/pritunl* || true
sudo restorecon -v -R /run/pritunl* || true
sudo restorecon -v /etc/systemd/system/pritunl.service || true
sudo restorecon -v /usr/lib/systemd/system/pritunl.service || true
sudo restorecon -v /etc/systemd/system/pritunl-web.service || true
sudo restorecon -v /usr/lib/systemd/system/pritunl-web.service || true
sudo restorecon -v /usr/lib/pritunl/bin/pritunl || true
sudo restorecon -v /usr/lib/pritunl/bin/python || true
sudo restorecon -v /usr/lib/pritunl/bin/python3 || true
sudo restorecon -v /usr/lib/pritunl/bin/python3.6 || true
sudo restorecon -v /usr/lib/pritunl/bin/python3.9 || true
sudo restorecon -v /usr/lib/pritunl/usr/bin/pritunl || true
sudo restorecon -v /usr/lib/pritunl/usr/bin/python || true
sudo restorecon -v /usr/lib/pritunl/usr/bin/python3 || true
sudo restorecon -v /usr/lib/pritunl/usr/bin/python3.6 || true
sudo restorecon -v /usr/lib/pritunl/usr/bin/python3.9 || true
sudo restorecon -v /usr/bin/pritunl-web || true
sudo restorecon -v /usr/bin/pritunl-dns || true
sudo restorecon -v -R /var/lib/pritunl || true
sudo restorecon -v /var/log/pritunl* || true

sudo groupadd -r pritunl-web || true
sudo useradd -r -g pritunl-web -s /sbin/nologin -c 'Pritunl web server' pritunl-web || true

cd ../../
sudo rm -rf ./pritunl-$VERSION

sudo systemctl daemon-reload
sudo systemctl start pritunl
sudo systemctl enable pritunl
```

## License

Please refer to the [`LICENSE`](LICENSE) file for a copy of the license.
