o set up a SoftEther VPN Server on Azure, using a Windows VM, here’s a complete step-by-step guide to get it running securely and efficiently.
🛠️ Overview
- VPN Server: SoftEther VPN (an open-source, multi-protocol VPN)
- Cloud Platform: Microsoft Azure
- OS: Windows Server (or Windows 10/11)
- Scenario: You want to securely connect remote clients to Azure over VPN.
🔧 Prerequisites
- Azure subscription
- A Windows VM deployed in Azure
- Basic networking knowledge (ports, IPs)
- RDP access to the VM
- Optional: Dynamic DNS if your IP changes
🧱 Step-by-Step Setup
✅ Step 1: Create a Windows VM in Azure
- Go to Azure Portal
- Create a new Windows Server 2019/2022 or Windows 10/11 Pro VM
- Choose a region and instance size (e.g., B2s is fine for testing)
- In Networking, enable port 443, 5555, and optionally 992, UDP 500 and 4500 (for L2TP/IPSec)
- Allow RDP (port 3389) to connect
✅ Step 2: Connect to the VM
- Use Remote Desktop (mstsc) to log into the VM using its public IP
- Once logged in, install all Windows updates
✅ Step 3: Download & Install SoftEther VPN Server
- Go to: https://www.softether-download.com/
- Choose:
- SoftEther VPN Server
- Windows
- Download the installer and install it on the VM
- During install:
- Choose SoftEther VPN Server
- Launch SoftEther VPN Server Manager after install
✅ Step 4: Configure VPN Server
4.1. Launch VPN Server Manager
- When prompted, set a strong admin password
- Connect to “localhost” using “Administrator” mode
4.2. Create a Virtual Hub
- Click “Create Virtual Hub”
- Give it a name (e.g.,
azurehub
) - Set hub admin password
4.3. Enable SecureNAT (for DHCP/NAT)
- Select your virtual hub
- Click “Manage Virtual Hub” → “SecureNAT Configuration”
- Enable SecureNAT to automatically provide DHCP and NAT
✅ Step 5: Configure User Authentication
- Inside your virtual hub settings, go to:
- “Manage Users” → “Create User”
- Enter:
- Username (e.g.,
vpnuser
) - Auth Type: Password
- Set a strong password
- Username (e.g.,
✅ Step 6: Enable VPN Protocols
In the main SoftEther Server Manager window:
- Click “Enable VPN Azure” (optional cloud relay)
- Click “Manage Server Settings”
- Enable protocols:
- L2TP/IPSec (enter a shared secret)
- OpenVPN clone support
- SoftEther VPN Protocol
- Make sure:
- Port 443, 992, 5555 are open
- UDP 500, 4500 are allowed (for L2TP)
- Enable protocols:
✅ Step 7: Firewall and Azure NSG Rules
- Open Windows Defender Firewall
- Allow inbound TCP ports: 443, 5555, 992
- Allow UDP ports: 500, 4500
- In Azure Portal:
- Go to the VM → Networking
- Add Inbound Port Rules for:
- TCP 443, 5555, 992
- UDP 500, 4500
✅ Step 8: Install SoftEther VPN Client (on local machine)
- Download from SoftEther download site
- Choose SoftEther VPN Client
- Install and:
- Create new connection to your Azure VM public IP
- Choose SoftEther VPN Protocol
- Enter the username/password from Step 5
- Connect!
✅ Optional: OpenVPN Support
- SoftEther can auto-generate an
openvpn_config.zip
- In VPN Server Manager → Virtual Hub → OpenVPN / MS-SSTP Setting
- Download config and use it in any OpenVPN-compatible client
✅ Optional: Dynamic DNS (DDNS)
SoftEther supports built-in DDNS:
- Enable DDNS via the VPN Server Manager
- It will give you a domain like:
xxxx.softether.net
- Use this instead of your public IP