You can Download this article as Word and PDF
In Part 1 of this series, we took a look at how the Network Policy and Access Services in Windows 2012, and particularly how Network Access Protection (NAP) can help to protect your network when VPN clients connect to it by validating health requirements that you institute as part of a health enforcement plan. In Part 2, we’ll go into some tips on actually deploying NAP on Windows Server 2012. Keep in mind, however, that NPAS and NAP are complex topics and we are covering only some basics here. There is are much more detailed guidelines available in the TechNet Library that address many different network scenarios.
Installing the NPS role service on Windows Server 2012
To deploy NAP on Windows Server 2012, you need to install the Network Policy and Access Services role with the Network Policy Server role service. You can do this in one of two ways: by using Server Manager to install NPS via the graphical user interface, or by using PowerShell to install NPS via the command line.
Before attempting installation, you need to know that if there is a manually configured IPv6toIPv4 address on the computer, NPS may fail to install correctly. You should disable the IPv6 configuration before attempting to install NPS. Here’s how:
- On the Windows Server 2012 Start Screen, type Network.
- In the right Search pane, select Settings.
- Click the View Network Connections option in the list.
- Right click the network connection for your local network and select Properties.
- On the Networking tab, uncheck the check box for Internet Protocol Version 6 (TCP/IPv6).
- Click OK.
Installing the NPS role service using Server Manager
To install the NPS role service in Windows Server 2012 via the graphical interface, first open Server Manager from the desktop taskbar or the Server Manager tile on the Start Screen, and perform the following steps:
- In Server Manager, click Manage and click Add Roles and Features.
- On the Before you begin page, click Next.
- On the Select Installation Type page, click Role/Feature Based Install and then click Next.
- On the Select destination server page, click Select a server from the server pool, click the names of the servers where you want to install NPS and then click Next.
- On the Select Server Roles page, click Network Policy and Access Services, and then click Next three times.
- On the Select role services page, click Network Policy Server, and in the Add Roles and Features Wizard dialog box, verify that Include management tools (if applicable) is selected.
- Click Add Features, and then click Next.
- On the Confirm installation selections page, click Install.
- On the Installation Results page, verify that the installation was successful, and then click Close.
Installing the NPS role service using PowerShell
Load the Server Manager module by typing: Import-Module Servermanager
Next, install the NPS role service by typing: Install-WindowsFeature –name napas-policy-server –includemanagementtools
Note: This will also install the DHCP server role
When the role service has been successfully installed, PowerShell will report Success = True and the Feature Result will show Network Policy and Access Services, as shown in Figure 1.
Figure 1: The NPS role has been successfully installed
Configuring the NAP server
You can configure the NAP server with three different types of policies:
Connection Request Policies that use connections and settings to authenticate client requests to access the network. These policies also control where the authentication will be performed. You must have a connection request policy for each NAP enforcement method.
Network Policies that use conditions, settings and constraints to determine the level of access that will be authorized for a client that attempts to connect to the network. You need at least two network policies to deploy NAP: one for client computers that are found to be compliant with your health policies and one for those clients that are out of compliance.
Health Policies that specify which System Health Validators (SHVs) are to be evaluated and how they’re to be used to evaluate health status. You have to enable at least one SHV for each health policy.
When creating network policies, you need to keep in mind that a client request can match one connection policy and one network policy. It cannot match multiple policies of a type, so when a match is made, none of the other policies will be applied. That means the order of processing policies is important. The source of the request is also used in determining the order for evaluation.
If there are policies that specify a source, requests sent from a matching source are only evaluated against these policies. If none of the policies specify a source that matches, clients try to match policies with the Unspecified source. If there are multiple policies with the same source that matches the client source, the policy that’s highest in the processing order is used (and if it fails, the NPS goes down the list of policies in the processing order until it finds a policy that matches).
To configure NSP with a network policy, use the New Network Policy wizard on the NPS server. On the NPS server, open the Network Policy Server administrative tool from the Administrative Tools menu. In the left pane, expand the Policies node and click Network Policies. Right click and select New to start the New Network Policy Wizard, as shown in Figure 2.
Figure 2: Creating a new network policy
You can create a new connection request policy or a new health policy by right clicking the Connection Request Policy or Health Policies node and selecting New.
Configuring the VPN servers with NPS
The steps involved in configuring VPN servers with NPS are as follows:
Install and configure your VPN servers as discussed in the first part of this chapter.
Decide what authentication method is to be used.
Install the NPS role on the NPS server.
Autoenroll a server certificate to the NPS server(s) or purchase a server certificate (for PEAP-MS-CHAP v2 authentication).
For EAP-TLS or PEAP-TLS without smart cards, autoenroll user and/or computer certificates to domain users and client computers that are domain members.
Configure your VPN servers as RADIUS clients in NPS.
Create an Active Directory user group for users who will be allowed to connect via the VPN servers.
Configure network policies for VPN services in NPS.
To create the connection request and network policies that you need in order to deploy VPN servers as RADIUS clients to the NPS server, you can use the New Dial-up or Virtual Private Network Connections wizard. Open the NPS console from the Administrative Tools menu on the server where you have installed the Network Policy Server role service. Click the NPS (Local) top level node in the left pane and follow these steps:
Under Standard Configuration, in the drop-down box, select RADIUS server for Dial-up or VPN Connections, as shown in Figure 3.
Figure 3: Creating the policies required to deploy VPN servers as RADIUS clients to the NPS
Click Configure VPN or Dial-Up.
In the wizard, select Virtual Private Network (VPN) Connections under the Type of connections section, as shown in Figure 4.
Figure 4:Selecting the connections type (VPN)
Provide text to be part of the name for each of the policies the wizard creates or accept the default, and click Next.
On the Specify Dial-Up or VPN Server page, the local computer will be automatically added as a RADIUS client to the NPS server if it is running RRAS as a VPN server. You can add remote VPN servers by clicking the Add button.
On the Configure Authentication Methods page, select the protocol(s) you want to use for authentication, as shown in Figure 5.
Figure 5: Configuring the authentication method(s)
On the Specify User Groups page, you can select the groups to which the policy will apply by clicking the Add button. If you don’t select any groups, the policy will apply to all users.
On the Specify IP Filters page, you can configure IPv4 and IPv6 input and output filters for the RRAS VPN server.
On the Specify Encryption Settings page, you can select the encryption strength to be used for MPPE (40-bit, 56-bit and/or 128-bit). By default, all three are selected, as shown in Figure 6.
Figure 6:Specifying encryption settings
On the Specify Realm Name page, you can specify a realm name to replace the domain name in user credentials. This is the name that your ISP uses to forward requests. This is an optional field.
On the Completing New Dial-Up or Virtual Private Network Connections and RADIUS clients page (the last page of the wizard), you can click Configuration Details to review your configuration choices. This will open the configuration details in your default web browser, as shown in Figure 7.
Figure 7: Viewing configuration details in the browser
Click Finish in the wizard to create the policies. They will now show up in the Connection Request Policies and Network Policies nodes in the Network Policy Server console.
Configuring the HRA
You can configure the authentication requirements, certification authorities and request policy for the HRA.
Authentication requirements: You can either restrict the issuance of health certificates to authenticated domain users or you can allow anonymous users to obtain health certificates. If you allow both, two separate web sites will be created, one for requests by domain users and one for requests by anonymous users. You can enable SSL so that clients communicating with the web sites must use a secure (https://) URL. The IIS server will need an SSL certificate in the local computer certificate store or the current user certificate store, to be used for server authentication.
Certification Authority: You must configure the HRA with at least one NAP CA. You can add or delete CAs and change their order from the HRA console’s Certification Authority node. You can use either a standalone CA or an enterprise CA.
Request Policy: The request policy settings define how the HRA communicates with clients, specifically the cryptographic policy elements that include asymmetric key algorithms, hash key algorithms, cryptographic service providers and transport policy. You can use the default request policy setting that negotiate a mutually acceptable encryption mechanism, and this is usually the best practice unless you are certain your modified settings will work properly.
Configuring Client Computers
Microsoft recommends, as part of its best practices, that client computers be configured automatically. NAP-capable client computers (those Windows XP SP3 and above systems on which the NAP Agent software is installed and running) can be configured automatically by importing NAP configuration files into Group Policy. You can configure NAP client settings in one of three ways:
NAP Client Configuration Console gives you a graphical UI for configuring the NAP client settings.
Netsh gives you a way to configure NAP client settings from the command line.
Group Policy Management Console allows you to configure NAP client settings in Group Policy on clients that are domain members.
You can save NAP client settings in a configuration file that you can then apply to other computers. You need to be a member of the local Administrators group on the computer to import a configuration file. To import a configuration file, type NAPCLCFG.MSC at the command line or in the Run box to open the NAP Client Configuration console. Right click the top level node, NAP Client Configuration (Local Computer) in the left pane, and select Import. Navigate to the location where the file is stored, type the file name for the configuration file and select Open.
Alternatively, you cantype netsh nap client import filename = <file name>
You must enable at least one NAP enforcement client on the client computers. The six NAP enforcement client types are:
Remote Desktop Gateway
Wireless EAP over LAN
Your VPN clients need to be enabled as Remote Access clients so health policies will be enforced when they attempt to access the network through the NAP-enabled VPN server. The NAP enforcement clients are enabled and disabled through the NAP Client Configuration console or the netsh command. You need to be a local Administrator to enable or disable enforcement clients. To enable the Remote Access enforcement client through the console, click the Enforcement Clients node in the left pane. In the middle pane, right click Remote Access Quarantine Enforcement Client and click Enable.
To enable the Remote Access enforcement client at the command line, type:
netsh nap client set enforcement ID = 79618 ADMIN – “ENABLE”
In Parts 1 and 2 of this series on understanding and configuring Network Policy and Access Services in Windows Server 2012, we have looked at the deployment of NAP. In Part 3, we’ll move on to the process of setting up RADIUS servers.