How to Set Up a VPN Server on Windows Server 2022 KVM VPS

windows 2022 vpn server tutorial
Windows 2022 VPN Server Tutorial

Here’s a step-by-step tutorial for setting up a VPN server on a Windows Server 2022-based KVM VPS:


Setting up a VPN (Virtual Private Network) on your Windows Server 2022 KVM VPS can be a great way to securely access resources, mask your IP address, or bypass network restrictions. Here’s how to set up a basic VPN server quickly.

Prerequisites:

  • A KVM VPS running Windows Server 2022.
  • Administrator access to your VPS.
  • Basic networking knowledge.

Step-by-Step Guide:

1. Connect to Your VPS

  • Use Remote Desktop Protocol (RDP) to connect to your Windows Server 2022 VPS.
  • Log in using your administrator credentials.

2. Install the Remote Access Role

  1. Open Server Manager.
  2. Click on Manage > Add Roles and Features.
  3. In the wizard, select Role-based or feature-based installation and click Next.
  4. Select your server from the server pool and click Next.
  5. On the Select server roles page, check the box for Remote Access and click Next.
  6. Click Next until you reach the Role Services section.
  7. Check DirectAccess and VPN (RAS) and click Next.
  8. Complete the installation by clicking Install. This process might take a few minutes.

3. Configure the VPN Server

  1. Open Server Manager again, go to Tools > Routing and Remote Access.
  2. In the Routing and Remote Access window, right-click your server name and select Configure and Enable Routing and Remote Access.
  3. In the wizard:
  • Select Custom configuration.
  • Check VPN access and click Next.
  • Click Finish.
  1. Right-click the server again and select Start service.

4. Configure VPN Ports

  • Make sure your VPS firewall allows incoming traffic on port 1723 (used for PPTP VPN) and port 47 (GRE protocol).

5. Configure IP Address Assignment

  1. In the Routing and Remote Access window, right-click on your server, and select Properties.
  2. Go to the IPv4 tab.
  3. Select Static address pool, then click Add.
  4. Enter a range of IP addresses that your VPN clients will use (e.g., 192.168.100.1 to 192.168.100.20).
  5. Click OK.

6. Add a User for VPN Access

  1. Open Computer Management (from Server Manager > Tools).
  2. Click on Local Users and Groups > Users.
  3. Right-click on Users and select New User.
  4. Create a new user with a username and password. Make sure to uncheck User must change password at next logon.
  5. Click Create.
  6. Go to the Properties of the user you just created, click on the Dial-in tab, and select Allow access for Network Access Permission.

7. Connect to Your VPN

  • On a client device, add a new VPN connection using the public IP address of your KVM VPS.
  • Use the credentials created in the previous step.

Troubleshooting Tips:

  • Ensure the ports needed for VPN are not blocked by your VPS provider’s firewall or your internal firewall.
  • Double-check your user credentials.
  • Make sure your VPS’s network interface is properly configured.

Conclusion

Setting up a VPN server on your Windows Server 2022 KVM VPS offers a robust solution for secure connections. Following this guide, you should have your VPN service up and running quickly.

Quick setup of L2TP or IPsec VPN on CentOS, Ubuntu or Debian

One line setup:

First get a fresh install of Ubuntu LTS, Debian or CentOS on your hosteons VPS or Dedicated Server (VPS should be KVM based not OpenVZ, if you are using hosteons.com VPS then need not worry as it’s KVM based VPS)

Use following command to set up an IPsec VPN server on Ubuntu or Debian:

wget https://git.io/vpnsetup -O vpnsetup.sh && sudo sh vpnsetup.sh

If you are on CentOS then use following command:

wget https://git.io/vpnsetup-centos -O vpnsetup.sh && sh vpnsetup.sh

Your VPN login details will be randomly generated, and displayed on screen when finished.

Also it’s best to run these commands in a screen session to avoid any interruptions due to any reasons.

Custom Setup of VPN:

Ubuntu and Debian:

Make sure your VPS/Dedicated server is upto date, you can do it with following commands:

apt-get update && apt-get dist-upgrade

and reboot.

Now Edit the script and provide your own VPN credentials:

wget https://git.io/vpnsetup -O vpnsetup.sh
nano -w vpnsetup.sh
[Replace with your own values: YOUR_IPSEC_PSK, YOUR_USERNAME and YOUR_PASSWORD]

sudo sh vpnsetup.sh

CentOS:

Make sure your VPS/Dedicated server is upto date, you can do it with following commands:

yum -y update

(if you are using hosteons.com vps then need not worry, our templates update everything when the VPS is setup)

Now Edit the script and provide your own VPN credentials:

wget https://git.io/vpnsetup-centos -O vpnsetup.sh
nano -w vpnsetup.sh
[Replace with your own values: YOUR_IPSEC_PSK, YOUR_USERNAME and YOUR_PASSWORD]

sh vpnsetup.sh

 

Your VPN server is now ready, just connect using the Shared Key, username and password you provided during setup or displayed on script, depending upon how you setup your VPN.