Skip to main content

Secure Socket Tunneling Protocol (SSTP) VPN server.

Project description

PyPI version Build Status

A Secure Socket Tunneling Protocol (SSTP) server implemented by Python.


  • Python >= 3.4.4

  • pppd

For Python 2.7, use v0.4.x

Crypto Binding is supported using SSTP ppp API plug-in from sstp-client.


Install from PyPI:

# pip install sstp-server

Please ensure your pip >= 9.0.1 to get correct version.

Install from GitHub:

# pip install git+

Arch Linux user may install sstp-server package from AUR.

If you share the authentication with services other than SSTP (for example, a RADIUS server that serve both a SSTP and WiFi authentication), crypto binding is required to prevent MITM attacks. Crypto binding is enabled automatically if is avaliable, see #37 for instructions.


Create pppd configure file /etc/ppp/options.sstpd,

A example:

name sstpd

Start server:

sudo sstpd -p 443 -c cert.pem -k key.pem --local --remote


sudo sstpd -f /path/to/sstpd-server.ini -s site1

Known Issues

  • High CPU usage, may not suitable for high thougthput applications.


The MIT License (MIT)

Copyright (c) 2014-2020 Shell Chen

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sstp-server-0.6.0.tar.gz (18.0 kB view hashes)

Uploaded Source

Built Distribution

sstp_server-0.6.0-cp39-cp39-manylinux1_x86_64.whl (29.5 kB view hashes)

Uploaded CPython 3.9

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page