![](http://2.bp.blogspot.com/-CBXHYKzsKMc/WJ7C3gAPbTI/AAAAAAAAONg/SxHms3qfsmA7aZyUrZFgvU1Eb5h8ku1OgCEw/s1600/VPN-Server-Windows-Server-2016.png)
This article will guide you through the steps to set up VPN Server on Windows Server 2016.
VPN server leveraging IPsec Tunnel Mode with Internet Key Exchange version 2 (IKEv2) with the functionality provided by the IKEv2 Mobility and Multihoming protocol (MOBIKE). This tunneling protocol offers inherent advantages in scenarios where the client moves from one IP network to another (for example, from WLAN to WWAN).
The scenario permits a user with an active IKEv2 VPN tunnel to disconnect a laptop from a wired connection, walk down the hall to a conference room, connect to a wireless network, and have the IKEv2 VPN tunnel automatically reconnected with no noticeable interruption to the user.
Installing Certificates on VPN Server and VPN Client
First you need to create certificate templates. Open up Certification Authority Console and from CA console, right click Certificate Templates > Manage > Right Click IPSec > Duplicate template
![](http://4.bp.blogspot.com/-jaGFHv0OaAY/WJ6ijtkuw4I/AAAAAAAAOKI/78Yo7lhe6VkRb9beTsDho8Jguf8bbauUACLcB/s1600/vpn-server-on-windows-server-2016-1.png)
On Request Handling tab click Allow private key to be exported
![](http://3.bp.blogspot.com/-jxxPiu3WKE8/WJ6ik0ThSVI/AAAAAAAAOKw/W_16Xi9YVP808qYi8MNbEnGHqNG5T-pBgCLcB/s1600/vpn-server-on-windows-server-2016-2.png)
Click Extension tab > Application Policies> Edit
![](http://3.bp.blogspot.com/-ZymymNqbSQQ/WJ6im3E0IxI/AAAAAAAAOLg/wWANep_7dpcOjhXuSbLRtvP_5_tL0MqoQCLcB/s1600/vpn-server-on-windows-server-2016-3.png)
Remove IP Security IKE intermediate > then click Add
![](http://1.bp.blogspot.com/-UGGrhgq1XSE/WJ6iol_mYQI/AAAAAAAAOMM/tDvaatNcjLIVIP8RwSSqqK5xyVLTADXYQCLcB/s1600/vpn-server-on-windows-server-2016-4.png)
and choose Server Authentication > OK
![](http://3.bp.blogspot.com/-obxvOl2KLFU/WJ6ip9k3-eI/AAAAAAAAOMs/9oMIuCPAla4ql9f8EtCoyTaPbqgL3MO0gCLcB/s1600/vpn-server-on-windows-server-2016-5.png)
Click Key Usage > Edit
![](http://1.bp.blogspot.com/-3iG4ifhlwrs/WJ6ip47jwhI/AAAAAAAAOMw/0a14tMYYbQoTEoqP94Flv4ArlcWn9IU5QCLcB/s1600/vpn-server-on-windows-server-2016-6.png)
Make sure that Digital signature is selected. If it is, click Cancel. If it is not, select it, and then click OK.
![](http://1.bp.blogspot.com/-qrfK3i50i9w/WJ6iqGcMMXI/AAAAAAAAOM0/BwEUXTLxglY5tRkJRqXEUMg49bwQcvoJwCLcB/s1600/vpn-server-on-windows-server-2016-7.png)
In the Security tab click Object Types> Computers> Add Domain Computers
![](http://4.bp.blogspot.com/-K0uJ3-byVt0/WJ6iqPG3TgI/AAAAAAAAOM4/DkiA6Iv3yBsfZ6klbtcmS8T8g0Q8AZpWQCLcB/s1600/vpn-server-on-windows-server-2016-8.png)
Make sure Read, Enroll and Autoenroll is selected
![](http://3.bp.blogspot.com/-_aKyxFtYKM8/WJ6iqfpMZ9I/AAAAAAAAOM8/OqMvJB60Mdc9Ktw1OugsDTiq50vLpUqrwCLcB/s1600/vpn-server-on-windows-server-2016-9.png)
In General tab provide a name to template
![](http://2.bp.blogspot.com/-JI8piMWWAkQ/WJ6ijnvtnaI/AAAAAAAAOKQ/zWMMcyeiYasBh_E9vLA7FBO8GUN4XfYBACLcB/s1600/vpn-server-on-windows-server-2016-10.png)
Now, right click Certification Template> New> Certificate Template to Issue
![](http://4.bp.blogspot.com/-juTbVaiVKQA/WJ6iji6x_RI/AAAAAAAAOKM/edfFX-aLof0dTlmS4clWN_khOwXr2KoYACLcB/s1600/vpn-server-on-windows-server-2016-11.png)
Choose newly created template, click OK
![](http://4.bp.blogspot.com/-MaMJnlOREIk/WJ6ikB9Ss4I/AAAAAAAAOKU/S16VdAilZT0otVdVXFxjRiWy933zU049QCLcB/s1600/vpn-server-on-windows-server-2016-12.png)
Enrolling Certificate on VPN Server
Now, on your VPN Server, open up Run and type mmc> Add/remove snap-in![](http://3.bp.blogspot.com/-cYREHdSjrrg/WJ6ikC1U4EI/AAAAAAAAOKY/2QHTf37WHCA4lR4OmNeIT7tvBq91nT-yACLcB/s1600/vpn-server-on-windows-server-2016-13.png)
Click Certificates> Add> Computer Account
![](http://3.bp.blogspot.com/-hUDUPh3Upg0/WJ6ikEcxsbI/AAAAAAAAOKc/dYrpmiL3nnojfiSu8h5p68txn2He9s5agCLcB/s1600/vpn-server-on-windows-server-2016-14.png)
Right click Personal> All tasks> Request New Certificate
![](http://3.bp.blogspot.com/-4e7lw8h_Yho/WJ6iksfjjeI/AAAAAAAAOKk/lbLOCdQqimYvvwzgCjww99hF-QT32phvgCLcB/s1600/vpn-server-on-windows-server-2016-15.png)
Check Certificate templates > Properties
![](http://4.bp.blogspot.com/-KJnENrl-kHc/WJ6ikqK-XuI/AAAAAAAAOKg/xSuMPsjnBSs9HRy1YmxV58CNcWH64xOrgCLcB/s1600/vpn-server-on-windows-server-2016-16.png)
Click Subject tab > Subject Name> Common name (from drop-down menu) choose FQDN for VPN Server > Click Add
In the Alternative Name, choose DNS, set FQDN for VPN Server, Click Add
![](http://1.bp.blogspot.com/-dE8JxNpL4Bk/WJ6ikhfgU5I/AAAAAAAAOKo/ydrmFqiFId4rgjOLWsss26Nxu_2f2aLpQCLcB/s1600/vpn-server-on-windows-server-2016-17.png)
New certificate should be created as shown in image below.
![](http://3.bp.blogspot.com/-ROoE_XLmPkA/WJ6ik2RFeKI/AAAAAAAAOKs/kT_j58MS42MywkunDhJoepB11C0cTIwoACLcB/s1600/vpn-server-on-windows-server-2016-18.png)
This certificate should be exported and then imported to client machine.
To export certificate, Right-click certificate> All tasks> Export
![](http://1.bp.blogspot.com/-GTsxR3eLk0E/WJ6ikzXgtxI/AAAAAAAAOK0/EwljIHwIPrARySe8F86Me-gLl9sTDPsCwCLcB/s1600/vpn-server-on-windows-server-2016-19.png)
Export private key, Set password and specify file in which certificate should be saved. Copy file to client computer
![](http://4.bp.blogspot.com/-2D6muZO7Kmw/WJ6ilTauQKI/AAAAAAAAOK4/__XdZYtuRswrDXg26apQ0JjDvI6BnZQ6wCLcB/s1600/vpn-server-on-windows-server-2016-20.png)
To import file on client machine, certificate should be imported into Trusted Root Certification Authority on client.
Open up Run, type mmc> Add > Certificate snap-in-local computer
Right-click Trusted Root Certification Authorities> All task> import
Browse to copied file and enter password to import it.
![](http://2.bp.blogspot.com/-wByHkGmxO5A/WJ6ilcu8mJI/AAAAAAAAOK8/TX7d6ZOXtskOlLnA-vUUnrOiC4NDOMEsgCLcB/s1600/vpn-server-on-windows-server-2016-21.png)
Installing Roles
You need to add Network Policy Server and Remote Access roles on your VPN Server. Open up Server Manager > Add Roles and Features and select the following to install.![](http://3.bp.blogspot.com/-oE9sTQLRpNA/WJ6ilTTt_xI/AAAAAAAAOLA/jU2dAKU8ONM0B8DxrCwEEq2uAyKJkfRvgCLcB/s1600/vpn-server-on-windows-server-2016-22.png)
Open up Routing and Remote Access console, right-click on Server > Configure and Enable Routing and Remote Access
![](http://1.bp.blogspot.com/-y8lFcQQZX_I/WJ6ilkSbWJI/AAAAAAAAOLE/q1NwgI-6P_wgrmtus56zmrhJL83s0EhPgCLcB/s1600/vpn-server-on-windows-server-2016-23.png)
Select Remote access (dial-up or VPN)
![](http://4.bp.blogspot.com/-l8vPCQdAsAQ/WJ6ilxl0CiI/AAAAAAAAOLI/fquFu6awhMEAGFFjYfGBsu8pu2kSuxZuQCLcB/s1600/vpn-server-on-windows-server-2016-24.png)
Check VPN
![](http://3.bp.blogspot.com/-rnJO7oBLk4k/WJ6ilyE1eDI/AAAAAAAAOLM/QIRQhX5-lsYo1Cuac7ZGIqT5U13h4k2SQCLcB/s1600/vpn-server-on-windows-server-2016-25.png)
Select internet facing interface accordingly
![](http://1.bp.blogspot.com/-PrmKHf568Eg/WJ6imO5HqTI/AAAAAAAAOLQ/gJzAK4rQiFEgMnF1aaVkrakU1XydTigCQCLcB/s1600/vpn-server-on-windows-server-2016-26.png)
Define VPN address pool according to your environment
![](http://3.bp.blogspot.com/-5ZcAV1yzbn8/WJ6imRzJMzI/AAAAAAAAOLU/pq1Wbe640TQwYf5fjraR0FEZ4Rph9_atACLcB/s1600/vpn-server-on-windows-server-2016-27.png)
![](http://2.bp.blogspot.com/-m_onaDAGkQc/WJ6imTD6_aI/AAAAAAAAOLY/tuShIMP4OqcVTBEkoLfjvtMO6uB8Bcw7QCLcB/s1600/vpn-server-on-windows-server-2016-28.png)
We’ll use NPS instead of RADIUS
![](http://3.bp.blogspot.com/-Lh0IKBwvMr4/WJ6imsOHxuI/AAAAAAAAOLc/Mu8tyAUUkKYfCvSUy1Agl5BeP8SV4s0pgCLcB/s1600/vpn-server-on-windows-server-2016-29.png)
Right click Remote Access Logging> Launch NPS
![](http://1.bp.blogspot.com/-wkwTftCzg9A/WJ6im12_IlI/AAAAAAAAOLk/q8XWGyGNXmo82qECgRZY6pd1mvP3mfvAgCLcB/s1600/vpn-server-on-windows-server-2016-30.png)
Click Network Access Policies
![](http://4.bp.blogspot.com/-VBKPJ0evb3U/WJ6inO-_ZzI/AAAAAAAAOLo/49ayvr75sGceXnk2iGgXVqeYH2zIc38VQCLcB/s1600/vpn-server-on-windows-server-2016-31.png)
Right click Connections to Microsoft Routing and Remote Access Server > Properties
![](http://2.bp.blogspot.com/-5G8LTodNqJw/WJ6inbP-4BI/AAAAAAAAOLs/sFNsB3u8LqYWywh5rUXXUTqG7f6zJ0z0wCLcB/s1600/vpn-server-on-windows-server-2016-32.png)
Check Grant access
![](http://4.bp.blogspot.com/-xTMOPyktuSw/WJ6inXOD0_I/AAAAAAAAOLw/3gK6gomNfUoqlY1CFz78a83C6C03zO0lwCLcB/s1600/vpn-server-on-windows-server-2016-33.png)
Click Constraints > Select Microsoft:Secured password (EAP-MSCHAP v2)
![](http://2.bp.blogspot.com/-3wIcmMAbAgc/WJ6inhndY-I/AAAAAAAAOL0/uZ4r3ct_mvouZ70DPuXAUYN28wEfyOLlgCLcB/s1600/vpn-server-on-windows-server-2016-34.png)
If it’s not selected Add it
![](http://1.bp.blogspot.com/-ZwvqqcTkHkU/WJ6ingYhXJI/AAAAAAAAOL4/ATrNfMTO4Swv2rG1soXdXPv3bJTva7JYwCLcB/s1600/vpn-server-on-windows-server-2016-35.png)
Enable user VPN access
In ADUS right click Dial-in> Allow access![](http://3.bp.blogspot.com/-wgnSAQkxtAM/WJ6inzd7LjI/AAAAAAAAOL8/6T1CG2uhwdIKowOoucvtcAvNRsDl7THgwCLcB/s1600/vpn-server-on-windows-server-2016-36.png)
Client Setting
Open in notepad Windows/System32/Drivers/etc/hosts file and add entry for VPN server (name must be equal to one specified in SSL certificate)![](http://3.bp.blogspot.com/-LBDVmu7vFGk/WJ6ioJH0pBI/AAAAAAAAOMA/Z4nHj4mh1Dsx0OsTfmP8bybqyWxVrc6OgCLcB/s1600/vpn-server-on-windows-server-2016-37.png)
Creating VPN client connection
![](http://3.bp.blogspot.com/-8X65W5Yn-jI/WJ6ioXWI-GI/AAAAAAAAOME/ZWjD9TJFrNwdNt-rwaag4g8jwMA3NioqQCLcB/s1600/vpn-server-on-windows-server-2016-38.png)
![](http://1.bp.blogspot.com/-VGV5MSCYOFc/WJ6iohswqxI/AAAAAAAAOMI/uiyffMt4n5AIGKU26XaKfp4HuQ0nnPLTwCLcB/s1600/vpn-server-on-windows-server-2016-39.png)
Use my internet connection (VPN)
![](http://4.bp.blogspot.com/-r1rqqOzJBDk/WJ6ioyKf97I/AAAAAAAAOMQ/WVM3zBI1ByAnDz7QDg0t303t3LbJe2tcACLcB/s1600/vpn-server-on-windows-server-2016-40.png)
I’ll set up an internet connection later
![](http://1.bp.blogspot.com/-oHWaSAoTwmQ/WJ6ipN9E88I/AAAAAAAAOMU/XqBINlisnkQdNJnej9Z-alLs3Cl7BU2-ACLcB/s1600/vpn-server-on-windows-server-2016-41.png)
In Internet address type your VPN Server name
![](http://3.bp.blogspot.com/-BygshJVckqM/WJ6ipAI4q6I/AAAAAAAAOMY/LrNIs24EFRozDuv4OP8mtfxPMtvNQI_OACLcB/s1600/vpn-server-on-windows-server-2016-42.png)
Specify username/password
![](http://4.bp.blogspot.com/-rrOnyXLF1JM/WJ6ipRamljI/AAAAAAAAOMc/Raa-5QWOVwMLehOgK2Ug4fVfp8blzYMUgCLcB/s1600/vpn-server-on-windows-server-2016-43.png)
In Security tab,for Type of VPN select IKEv2 > Dataencryption> Require encryption> Authentication:Microsoft:Securedpassword(EAP-MSCHAP v2)
![](http://4.bp.blogspot.com/-9f_FdaFyLb4/WJ6ipXZIchI/AAAAAAAAOMg/5BHQoo3RBRwYa57QM5MSsvmvzH1StSNOgCLcB/s1600/vpn-server-on-windows-server-2016-44.png)
We can see that IKEv2 is used,client got address from our VPN pool (10.10.10.3)
![](http://2.bp.blogspot.com/-5XjNgBTonkU/WJ6iprYUBYI/AAAAAAAAOMk/oc9iL98nUzEb-XVkzxaW309Tq8YT4mJBwCLcB/s1600/vpn-server-on-windows-server-2016-45.png)
Here you can see one client is connected to VPN Server with user Administrator.
![](http://4.bp.blogspot.com/--a5LdTJobtI/WJ6ipuDhaSI/AAAAAAAAOMo/0rKJAWgmX1k8BvfDGwt3qSloZu38MRHawCLcB/s1600/vpn-server-on-windows-server-2016-46.png)
We have successfully completed VPN Server deployment on Windows Server 2016. I hope this article will be helpful to deploy VPN Server in your environment.