windowsSSTP

circle-exclamation

In WinBox you can configure SSTP in PPP -> SSTP Server, or you can use terminal with command /interface sstp-server

SSTP (Secure Socket Tunneling Protocol) was developed by Microsoft as a replacement for PPTP, using SSL/TLS for encryption and better firewall traversal.


SSTP overview

Protocol characteristics

Advantages:

  • Uses SSL/TLS encryption (port 443)

  • Good firewall traversal (appears as HTTPS traffic)

  • Better security than PPTP and L2TP/IPsec

  • Native Windows support

  • Can work through restrictive firewalls

Disadvantages:

  • Proprietary Microsoft protocol

  • Limited non-Windows client support

  • Requires SSL certificates

  • Performance overhead from SSL encapsulation

  • Not independently auditable (closed source)


Prerequisites

Before configuring SSTP, you need:

  1. SSL certificate - Valid SSL certificate for your domain

  2. DNS resolution - Server must be accessible by domain name

  3. Port 443 access - Firewall must allow HTTPS traffic

  4. Time synchronization - SSL certificates are time-sensitive


Certificate preparation

Using existing SSL certificate

If you have a valid SSL certificate (e.g., from Let's Encrypt or commercial CA):

Creating self-signed certificate

For testing or internal use only:


SSTP server configuration

Basic server setup

In WinBox go to PPP -> SSTP Server:

  • Enabled - Yes

  • Port - 443 (standard HTTPS port)

  • Certificate - Select your SSL certificate

  • Default Profile - Select appropriate PPP profile

  • Authentication - mschap2, mschap1, chap, pap

  • TLS Version - 1.2 or higher

Create IP pool and profile

Update server to use custom profile


Firewall configuration

Basic firewall rules

SSTP uses port 443 (HTTPS), which is commonly allowed:

NAT configuration

If SSTP clients need internet access:


User management

Add SSTP users

Create users in PPP -> Secrets:

Advanced user settings


Client configuration

Windows built-in client

Windows 10/11:

  1. SettingsNetwork & InternetVPN

  2. Add VPN connection:

    • VPN Provider: Windows (built-in)

    • Connection name: Your VPN name

    • Server name: vpn.yourdomain.com (must match certificate CN)

    • VPN type: SSTP

    • Username/Password: Your PPP credentials

PowerShell configuration

Linux SSTP client

Install and configure SSTP client on Linux:


Advanced configuration

Certificate-based authentication

For enhanced security, use certificate-based client authentication:

Multiple SSTP servers

Run multiple SSTP servers on different ports:

Custom SSL/TLS settings


Troubleshooting

Common issues

Certificate errors:

  • Ensure certificate CN matches server hostname in client config

  • Check certificate validity dates

  • Verify certificate chain is complete

  • Confirm certificate is trusted on RouterOS

Connection failures:

  • Test basic connectivity to port 443

  • Check firewall rules allow HTTPS traffic

  • Verify DNS resolution of server hostname

  • Test with self-signed certificate for debugging

Authentication problems:

  • Verify username/password are correct

  • Check PPP authentication methods match

  • Ensure user account is enabled

  • Review server-side authentication logs

Diagnostic commands

SSL/TLS debugging


Security considerations

Certificate security

  1. Use proper CA certificates - Avoid self-signed for production

  2. Regular certificate rotation - Replace certificates before expiration

  3. Strong private keys - Use 4096-bit RSA or ECDSA keys

  4. Certificate revocation - Implement proper revocation procedures

Authentication security

Monitoring and logging


chevron-rightShow complete SSTP setuphashtag

Performance optimization

SSL optimization

Connection limits


Comparison with other VPN protocols

SSTP vs OpenVPN

Feature
SSTP
OpenVPN

Encryption

SSL/TLS

SSL/TLS or custom

Port

443 only

Configurable

Open source

❌ Proprietary

✅ Open source

Windows support

✅ Native

✅ Client required

Linux support

⚠️ Third-party

✅ Native

Firewall traversal

✅ Excellent

✅ Good

Performance

⚠️ Overhead

✅ Optimized

SSTP vs WireGuard

Feature
SSTP
WireGuard

Security audit

❌ Proprietary

✅ Audited

Performance

⚠️ SSL overhead

✅ Minimal overhead

Setup complexity

⚠️ Certificates required

✅ Simple keys

Compatibility

⚠️ Limited

✅ Wide support

Maintenance

⚠️ Certificate mgmt

✅ Minimal


Migration recommendations

When to use SSTP

Consider SSTP for:

  • Windows-centric environments

  • Situations where only port 443 is allowed outbound

  • Legacy systems requiring Windows built-in VPN support

  • Temporary solutions during migration to better protocols

Migration paths

From SSTP to WireGuard:

From SSTP to OpenVPN:

Last updated

Was this helpful?