CCrypto VPN public website
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
alice 6d121b134d add apparently required tzdata 10 个月前
ccvpn switch to CCryptoVPN Root v2 CA 10 个月前
deploy add celery setup instructions 2 年前
downloads update django + django_lcore, fix every broken thing 10 个月前
kb new footer 1年前
lambdainst fix referrer link in admin 10 个月前
locale/fr/LC_MESSAGES add 'why cc' box on homepage, fix cancel translation 10 个月前
static add 'why cc' box on homepage, fix cancel translation 10 个月前
templates add 'why cc' box on homepage, fix cancel translation 10 个月前
tickets update django + django_lcore, fix every broken thing 10 个月前
.gitignore Add missing downloads app 3 年前
LICENSE Initial commit 6 年前 add shell tools 1年前
kb.json support update 1年前 Use python3 instead of python in 6 年前 Add up to date deploy instructions 3 年前
poetry.lock add apparently required tzdata 10 个月前
pylintrc Update deps (Django 2.2) 4 年前
pyproject.toml add apparently required tzdata 10 个月前
requirements.txt Replace some static settings by dynamic settings 5 年前 Multiple unimportant fixes 6 年前

CCrypto VPN

CCVPN is the software we use at CCrypto to provide our VPN. You can see it live at

It handles user management, support tickets, billing and is used as a backend for VPN authentication.
It communicates with an external service, lambdacore, that manages VPN servers and sessions.

Disclaimer: this is a specialized solution that requires proprietary software to function. This repo is a way for us to share our work freely as we don’t believe keeping it secret will do any good; feel free to base your own work on it but don’t except it to be of an use as-is.

CCrypto’s commercial support does not include this and will not help you set it up. Feel free to contact us about ccvpn, but with no guarantee.
PacketImpact however may provide you commercial support and more services about ccvpn and lambdacore.

Getting Started

# Install poetry
pip3 install poetry
export PATH=~/.local/bin/:$PATH  # also add that to your .profile

# Install ccvpn3
git clone
cd ccvpn3
poetry config true
poetry install

cp ccvpn/ ccvpn/
# Edit ccvpn/
# See ccvpn/ for all available settings and defaults

# Those need to be run on installation and updates
poetry run ./ migrate
poetry run ./ compilemessages
poetry run ./ collectstatic

# The standard Django can be called through poetry
poetry run ./ runserver

# Celery worker & scheduler are needed for background tasks
poetry run celery -A ccvpn.celery worker -l debug
poetry run celery -A ccvpn.celery beat -l debug

Debian Deployment

# Install uwsgi and a web server, and python deps
apt install gettext git nginx uwsgi uwsgi-plugin-python3 python3-venv python3-setuptools python3-pip

# Create a new account and switch to it
adduser --disabled-login ccvpn

su - ccvpn
# As ccvpn, follow the instructions in Getting Started
# then Ctrl-D/exit back to root

cp /home/ccvpn/ccvpn3/deploy/nginx.conf /etc/nginx/sites-enabled/ccvpn3.conf
cp /etc/ccvpn/ccvpn3/deploy/uwsgi.ini /etc/uwsgi/apps-enabled/ccvpn3.ini
systemctl restart uwsgi
systemctl reload nginx


# run celery background processes
poetry run celery -A ccvpn worker -l info
poetry run celery -A ccvpn beat -l info
# celery flower monitoring web ui
poetry run flower --port=5555 -A ccvpn

# ~ with systemd services ~

cp ./deploy/ccvpn-*.service /etc/systemd/
systemctl daemon-reload
systemctl enable --now ccvpn-{worker,scheduler,flower}.service