Always On VPN – NPS Server konfigurieren

In Teil 1 dieser Serie habe ich die Infrastruktur für mein Always On VPN-Lab vorgestellt. Anschließend habe ich in Teil 2 die automatische Registrierung der Computer- und VPN Benutzerzertifikate mittels Gruppenrichtlinien konfiguriert, die empfohlenen AD-Gruppen und Zertifikatsvorlagen erstellt. Das Zertifikat für NPS Serverauthentifizierung, das IKEv2-Zertifikat und das SSL-Zertifikat für SSTP am VPN Server habe ich in Teil 3  installiert. In Teil 4 habe ich den Remote Access Server für Always on VPN installiert und konfiguriert. Jetzt werde ich den NPS Server installieren und konfigurieren.

Network Policy and Access Services installieren

  1. Als Administrator an NPS01 anmelden
  2. Manage > Add Roles and Features
  3. Add Roles and Featues Wizard
    1. Roles: Network Policy and Access Services > Add Features > Next
    2. Before You Begin > Next
    3. Installation Type: Role-based installation > Next
    4. Server Selection
      1. Select a server from the server pool: NPS01.intern.einfaches-netzwerk.at > Next
    5. Server Roles: Network Policy and Access Services > Next
    6. Features > Next
    7. Network Policy and Access Services > Next
    8. Confirmation > Install
    9. Results > Close

Firewall-Konfiguration überprüfen

NPS01 wartet standardmäßig auf folgenden UDP-Ports auf RADIUS-Kommunikation von VPN01:

  • 1645, 1646
  • 1812, 1813

Diese Ports müssen in der lokalen Windows Firewall erlaubt sein. Der Add Roles and Featues Wizard erstellt normalerweise für diese Ports die Regeln in der Firewall.

NPS konfigurieren

NPS Server in Active Directory registrieren

  1. Server Manager > Tools > Network Policy Server
  2. NPS (local) rechts anklicken > Register in Active Directory

    1. Network Policy Server > OK > OK

VPN01 als RADIUS-Client hinzufügen

Der Server VPN01 muss als RADIUS-Client zu NPS hinzugefügt werden, damit dieser den Server kennt und mit ihm kommunizieren kann. Für diesen Schritt brauche ich das Shared Secret, welches ich bei der Konfiguration von VPN01 (siehe Teil 4) eingegeben habe.

  1. Server Manager > Tools > Network Policy Server
  2. NPS (Local)\RADIUS Clients and Servers erweitern
  3. RADIUS Clients rechts anklicken > New
  4. New RADIUS Client
    1. Reiter Settings
      1. Enable this RADIUS client > aktivieren
      2. Friendly name: VPN01
      3. Address: VPN01.intern.einfaches-netzwerk.at > Verify… > Resolve > OK
      4. Shared secret: Password1
      5. Confirm shared secret: Password1 > OK
  5. VPN01 ist in der Liste der RADIUS-Clients

Netzwerkrichtlinien für VPN-Verbindungen konfigurieren

Mit diesem Schritt erlaube ich nur Benutzern in der Gruppe VPN Benutzer Zugriff auf das Unternehmensnetzwerk durch den VPN-Server. Und dann nur, wenn ein passendes Benutzerzertifikat vorhanden ist.

  1. Server Manager > Tools > Network Policy Server
  2. Standard Configuration: RADIUS server for Dial-UP or VPN Connections (die zweite Option ist für 802.1x WLAN oder/und LAN)
  3. Auf den Link Configure VPN or Dial-Up klicken
  4. Configure VPN or Dial-Up
    1. Type of connections: Virtual Private Network (VPN) Connections > Next
      Hinweis: Der Name wird automatisch ausgefüllt
    2. RADIUS Clients: VPN01 markieren > Next
    3. Extensible Authentication Protocol > aktivieren
    4. Type: Microsoft: Protected EAP (PEAP) > Configure…
    5. Edit Protected EAP Properties
      1. auf Remove klicken, um EAP-MSCHAPv2 zu entfernen
      2. Add > Smart Card or other certificate > OK > OK
    6. Microsoft Encrypted Authentication version 2 (MS-CHAPv2) > deaktivieren > Next
    7. Groups > Add… > VPN Benutzer > OK > Next
    8. Specify IP Filters > Next
    9. Specify Encryption Settings > Next
    10. Specify a Realm Name > Next
    11. Completing… > Finish
  5. NPS (Local)\Policies\Network Policies erweitern

Damit ist theoretisch die Konfiguration der Always On VPN-Server abgeschlossen. Diese Schritte sind zusammenfassend passiert:

  • Gruppenrichtinien für die automatische Registrierung von Benutzer- und Computerzertifikaten erstellt
  • Active Directory-Sicherheitsgruppen für Always On VPN erstellt
  • Zertifikatisvorlage für die VPN Benutzerauthentifizierung erstellt
  • Zertifikatisvorlage für die Computerauthentifizierung erstellt
  • Zertifikatisvorlage für die VPN Serverauthentifizierung erstellt
  • Zertifikatisvorlage für die NPS Serverauthentifizierung erstellt
  • Zertifikat für die NPS Serverauthentifizierung installiert
  • Zertifikat für die VPN Serverauthentifizierung installiert
  • SSL-Zertifikat für SSTP angefordert, ausgestellt und installiert
  • VPN Server Netzwerk-Adapter konfiguriert
  • Remote Access Server installiert
  • Remote Access als VPN Server konfiguriert
  • Network Policy and Access Services installiert
  • Firewall-Konfiguration überprüft und zum Abschluss den
  • NPS konfiguriert

Fehlt noch die Konfiguration der Windows 10-Clients.

Always On VPN – Remote Access Server konfigurieren

In Teil 1 dieser Serie habe ich die Infrastruktur für mein Always On VPN-Lab vorgestellt. Anschließend habe ich in Teil 2 die automatische Registrierung der Computer- und VPN Benutzerzertifikate mittels Gruppenrichtlinien konfiguriert, die empfohlenen AD-Gruppen und Zertifikatsvorlagen erstellt. Das Zertifikat für NPS Serverauthentifizierung, das IKEv2-Zertifikat und das SSL-Zertifikat für SSTP am VPN Server habe ich in Teil 3  installiert. In diesem Teil werde ich den Remote Access Server für Always on VPN installieren und konfigurieren.

Konfiguration der Netzwerk-Adapter

  1. Als Administrator an VPN01 anmelden
  2. Das Network and Sharing Center öffnen

Konfiguration des Internen Netzwerk-Adapters

  1. Internet Protocol Version 4 (TCP/IPv4) Properties öffnen
    1. General
      1. IP address: 192.168.100.5
      2. Subnet mask: 255.255.255.0
      3. Default gateway: > kein Standardgateway
      4. Preferred DNS server: 192.168.100.1 > interner DNS Server, siehe Always On VPN – Überblick
      5. Advanced…
      6. Advanced TCP/IP Settings
        1. Reiter DNS
          1. DNS suffix for this connection: intern.einfaches-netzwerk.at > OK > OK

Konfiguration des Externen Netzwerk-Adapters

  1. Internet Protocol Version 4 (TCP/IPv4) Properties öffnen
    1. General
      1. IP address: 131.107.0.3
      2. Subnet mask: 255.255.255.0
      3. Default gateway: 131.107.0.1
      4. Preferred DNS server: > kein DNS Server
      5. Advanced…
      6. Advanced TCP/IP Settings
        1. Reiter DNS
          1. Register this connection’s addresses in DNS deaktivieren
        2. Reiter WINS
          1. Enable LMHOSTS lookup > deaktivieren
          2. Disable NetBIOS over TCP/IP > OK > OK
  2. Internet Properties
    1. Reiter Networking
      1. Folgende Protkolle deaktivieren:
        1. Client for Microsoft Networks
        2. File and Printer Sharing for Microsoft Networks > OK

Remote Access Server installieren

Nachdem ich die Konfiguration der Zertifikate endlich hinter mir habe, installiere ich die Remote Access-Rolle am Server VPN01.

  1. Server Manager > Manage > Add Roles and Features
  2. Add Roles and Features Wizard
    1. Before You Begin > Next
    2. Installation Type
      1. Role-based installation > Next
    3. Server Selection
      1. Select a server from the server pool: VPN01.intern.einfaches-netzwerk.at > Next
    4. Server Roles
      1. Roles: Remote Access > Next
    5. Features > Next
    6. Remote Access > Next
    7. Role Services: DirectAccess and VPN (RAS) > Add Features > Next
    8. Web Server Role (IIS) > Next
    9. Role Services > Next
    10. Confirmation > Install
    11. Results > Close
  3. VPN01 neu starten

Remote Access als VPN Server konfigurieren

  1. Als Administrator an VPN01 anmelden
  2. Server Manager > Notifications > den Link Open the Getting Started Wizard klicken
  3. Configure Remote Access (Getting Started Wizard)
    1. Deploy VPN only
  4. Die Routing and Remote Access-Console öffnet sich
  5. VPN01 (local) rechts anklicken > Configure and Enable Routing and Remote Access
  6. Routing and Remote Access Server Setup Wizard
    1. Welcome to the… > Next
    2. Configuration: Custom configuration > Next
    3. Custom Configuration: VPN access > Next
    4. Completing the Routing… Finish
    5. Routing and Remote Access > Start service
  7. VPN01 (local) rechts anklicken > Properties
  8. VPN01 (local) Properties
    1. Reiter IPv4
      Hinweis: Mein interner DHCP-Range geht von 192.168.100.100-192.168.100.200. Für die VPN-Clients werde ich IP-Adressen von 192.168.100.201-192.168.100.220 vergeben.

      1. IPv4 address assignment
        1. Static address pool > Add…
          1. Start IP address: 192.168.100.201
          2. End IP address: 192.168.100.220 > OK
      2. Auf Adapter klicken
      3. Den internen Adapter auswählen
    2. Reiter Security
      1. Authentication provider: RADIUS Authentication > Configure…
      2. Radius Authentication
        1. Add…
        2. Add RADIUS Server
          1. Server anme: NPS01.intern.einfaches-netzwerk.at
          2. Shared secret > Change… > New secret: Password1 > Confirm new secret: Password1 > OK
          3. Add RADIUS Server mit OK schließen
        3. RADIUS Authentication mit OK schließen
      3. Accounting Provider: RADIUS Accounting > Configure…
      4. RADIUS Accounting
        1. Add…
        2. Add RADIUS Server
          1. Server name: NPS01.intern.einfaches-netzwerk.at
          2. Shared secret > Change… > New secret: Password1 > Confirm new secret: Password1 > OK
          3. Add RADIUS Server mit OK schließen
        3. RADIUS Accounting mit OK schließen
      5. VPN01 (local) Properties mit OK schließen
  9. VPN01\Ports rechts anklicken > Properties
  10. Ports Properties
    Hinweis: Obwohl ich ein SSL-Zertifikat für SSTP installiert habe, konfiguriere ich jetzt einmal nur IKEv2.

    1. WAN Miniport (SSTP) markieren > Configure…
    2. Configure Device – WAN Miniport (SSTP)
      1. Remote access connections (inbound only) > deaktivieren
      2. Demand-dial routing connections (inbound and outbound) > deaktivieren > OK
    3. Schritt B für folgende Devices wiederholen
      1. WAN Miniport (L2TP)
      2. WAN Miniport (PPTP)
    4. Port Properties mit OK schließen
  11. Lt. Microsoft Dokumentation VPN01 neu starten

In dieser Anleitung habe ich die Server-Rolle Remote Access auf VPN installiert und konfiguriert. Als nächstes werde ich den Server NPS01 konfigurieren.

Always On VPN – Serverzertifikate installieren

In Teil 1 dieser Serie habe ich die Infrastruktur für mein Always On VPN-Lab vorgestellt. Anschließend habe ich in Teil 2 die automatische Registrierung der Computer- und VPN Benutzerzertifikate mittels Gruppenrichtlinien konfiguriert, die empfohlenen AD-Gruppen und Zertifikatsvorlagen erstellt. In diesem Teil werde ich das Zertifikat für NPS Serverauthentifizierung und das IKEv2-Zertifikat am VPN Server installieren. Außerdem werde ich eine Zertifikatsanforderung für ein SSL-Zertifikat für SSTP erstellen.

Das Zertifikat für die NPS Serverauthentifizierung installieren

  1. Als Administrator an NPS01 anmelden
  2. Suche: MMC > Run as administrator
  3. Certificates-Snap-In für den lokalen Computer importieren
  4. Certificate (Local Computer) erweitern
  5. Personal rechts anklicken > All Tasks > Request New Certificate…
  6. Certificate Enrollment
    1. Before You Begin > Next
    2. Select Certificate Enrollment Policy: Active Directory Enrollment Policy > Next
    3. Request Certificates: NPS Serverauthentifizierung > aktivieren > Enroll
    4. Certificate Installation Results > Finish
  7. Personal\Certificates erweitern
  8. Fenster schließen
  9. Von NPS01 vorerst abmelden

Das Zertifikat für die VPN Serverauthentifizierung installieren

  1. Als Administrator an VPN01 anmelden
  2. Suche: MMC > Run as administrator
  3. Certificates-Snap-In für den lokalen Computer importieren
  4. Certificate (Local Computer) erweitern
  5. Personal rechts anklicken > All Tasks > Request New Certificate…
  6. Certificate Enrollment
    1. Before You Begin > Next
    2. Select Certificate Enrollment Policy: Active Directory Enrollment Policy > Next
    3. Request Certificates: Auf den Link More information is required… klicken
    4. Certificate Properties
      1. Reiter Subject
        1. Subject name
          1. Type: Common name
          2. Value: vpn.einfaches-netzwerk.at > Add
        2. Alternative name
          1. Type: DNS
          2. Value: vpn.einfaches-netzwerk.at > Add
    5. Fenster mit OK schließen
    6. VPN Serverauthentifizierung aktivieren > Enroll
    7. Certificate Installation Results > Finish
  7. Personal\Certificates erweitern
  8. Reiter Details
  9. Enhanced Key Usage überprüfen
  10. Fenster schließen

SSL-Zertifikat für SSTP anfordern

Es wird empfohlen, dass das SSL-Zertifikat für SSTP (Secure Socket Tunneling Protocol) von einer öffentlichen CA (Certification Authority) z.B. DigiCert ausgestellt wird. Allerdings wird die Verwendung eines intern ausgestellten SSL-Zertifikats unterstützt, was ich in meinem Lab auch machen werde.

  1. Personal rechts anklicken > All Tasks > Advanced Operations > Create Custom Request…

  2. Certificate Enrollment
    1. Before You Begin > Next
    2. Select Certificate Enrollment Policy: Custom Request markieren > Next
    3. Custom request
      1. Template: (No template) CNG key
      2. Request format: PKCS #10 > Next
    4. Certificate Information > Details erweitern > Properties
    5. Certificate Properties
      1. Reiter General
        1. Friendly name: SSL Certificate for SSTP
      2. Reiter Subject
        1. Subject name:
          1. Type: Common name
          2. Value: vpn.einfaches-netzwerk.at
        2. Alternative name:
          1. Type: DNS
          2. Value: vpn.einfaches-netzwerk.at
      3. Reiter Extensions
        1. Extended Key Usage
          1. Server Authentication
          2. Client Authentication
      4. Reiter Private Key
        1. Cryptographic Service Provider
          1. RSA deaktivieren
          2. ECDSA_P256,Microsoft Software Key Storage Provider aktivieren
        2. Key options
          1. Make private key exportable
      5. Fenster mit OK schließen
    6. Next
    7. Where do you want to save the offline request?
      1. File name: C:\Temp\SSLforSSTP.req > Finish
  3. Die Anforderung findet man im Ordner Certificate Enrollment Requests\Certificates

Zertifikat für die Zertifikatsanforderung ausstellen

  1. Als Administrator an SUBCA01 anmelden
  2. Die Datei SSLforSSTP.req nach SUBCA01 kopieren
  3. Command Prompt (Admin) starten
  4. Mit folgender commandline das Zertifikat ausstellen
    certreq -submit -config "SUBCA01\Einfaches-Netwzerk-SUBCA01" -attrib "CertificateTemplate:WebServer" C:\SSLforSSTP.req C:\SSLforSSTP.cer

  5. Die Datei SSLforSSTP.cer nach VPN01 kopieren
  6. In der Zertifikate-MMC Personal\Certificates rechts anklicken > All Tasks > Import…

  7. Certificate Import Wizard
    1. Welcome to the… > Next
    2. File to Import
      1. File name: C:\Temp\SSLforSSTP.cer > Next
    3. Certificate Store
      1. Place all certificates in the following store: Personal > Next
    4. Completing the Certificate Import Wizard > Finish
  8. Das Zertifikat zum Überprüfen doppelklicken

  9. Alle Fenster schließen

In diesem Teil habe ich auf den Servern NPS01 und VPN01 ein Zertifikat zur Serverauthentifizierung installiert. Die Vorlagen dafür habe ich in Teil 2 dieser Serie erstellt. Außerdem habe ich am Server VPN01 eine Anforderung für das SSL-Zertifikat für SSTP erstellt und mit der internen CA (Einfaches-Netzwerk-SUBCA01) ausgestellt. Das Besondere bei diesem SSL-Zertifikat ist, dass der private Schlüssel mittels ECDSA_P256 (Elliptic Curve Digital Signature Algorithm) erzeugt wird.