3. VPN Client and Client Software
VPN Client and Client Software
For a computer running Windows 7 to act as a VPN client,
Windows needs to be configured with a VPN client. Generally
speaking, VPN clients can be any of three types: a Windows 7 VPN
connection, a Connection Manager (CM) client, or a third-party
client.
First, in Windows 7, you can configure a VPN connection in
the Network and Sharing Center by first clicking Set Up A New
Connection Or Network, as shown in Figure 5.
This step opens the Set Up A Connection Or Network wizard.
To create a VPN connection, select Connect To A Workplace, as
shown in Figure 6 and then
follow the prompts to complete the wizard.
Once you have completed the wizard, Windows 7 displays the
new VPN connection in Network Connections, which you can open by
clicking Change Adapter Settings in the Network And Sharing
Center. A Windows 7 VPN connection is shown in Figure 7.
Although this first type of VPN client is easy to create and configure on a
single machine, no method built into Windows allows you to
create many such VPN clients in a large network. As an
alternative, many administrators use the Connection
Manager Administration Toolkit (CMAK) to create
client connection profiles that can be distributed and installed
as CM clients. The advantage of this method is that users can
create and install VPN clients from the profile without needing
any technical knowledge. As a third option, third-party VPN
client software can also be deployed to client
desktops through Group Policy or another means.
Note
WHAT ARE CM AND THE
CMAK?
CM is a client network connection
tool that allows a user to connect to a remote network, such
as a corporate network protected by a VPN
server.
The CMAK is a feature in Windows
Server 2008 that you can install by using the Add Feature
Wizard. It allows you to automate for remote users the
creation of predefined connections to remote servers and
networks.
To create and customize a CM
client for your users, you use the CMAK wizard. The CMAK
wizard allows you to automate many aspects of a connection
(such as the IP address of the VPN server) so that users do
not need to handle any technical details
manually.
The VPN server in a Windows VPN infrastructure runs RRAS,
which in Windows Server 2008 is a role service of the Network
Policy and Access Service server role. Servers configured
with RRAS can receive requests from remote access users located on the Internet,
authenticate these users, authorize the connection requests, and
finally either block the requests or route the connections to
private internal network segments.
Note
REMOTE ACCESS AUTHENTICATION VS. AUTHORIZATION
Authentication is the process of
validating—through verification of a password or of
alternative credentials such as a certificate or smart
card—that the user is in fact the person he or she claims to
be.
Whereas authentication refers to
the process of validating user credentials, authorization
refers to the process of allowing users access to resources.
After remote access authentication occurs, the remote access
connection is authorized only if the proper permissions are
configured both on the Dial-in tab of the user account
Properties dialog box and in
the network policy that applies to the
connection.
For authentication, RRAS can be configured to forward the
authentication request to a RADIUS (NPS) server or to use
Windows authentication. When configured to use Windows
authentication and the local VPN server is
not a member of a domain, RRAS
authenticates users by checking the received credentials against
those stored in its local security account manager (SAM)
database. When configured to use Windows authentication and the
local VPN server is a member of a domain,
RRAS passes user credentials to an available domain
controller.
Note
REMOTE ACCESS AUTHENTICATION IS
SEPARATE FROM DOMAIN LOGON AUTHENTICATION
Remote access authentication
precedes domain logon authentication; if a VPN user is
attempting to log on to a domain remotely, the VPN connection
must be authenticated, authorized, and established before
normal domain logon occurs.
After the credentials submitted with the remote access
connection are authenticated, the connection must be authorized.
Remote access authorization consists of two steps: first,
verification of the dial-in properties of the user account
submitted by the VPN connection, and second, application of the
first matching network policy defined on the VPN server (or NPS
server if RRAS is configured for RADIUS authentication).
Note
WHAT ARE NETWORK
POLICIES?
Network policies define various
connection types by specific conditions such as Windows group
membership, health policies, or operating system, and then
either allow or deny requests that match those conditions.
Network policies can be defined in RRAS or in NPS. Network
policies are shown in Figure 8.
VPN clients that connect to a private network must
be configured with the address of an internal DNS server that
can resolve the names of resources on that private network.
Usually, the domain controller that authenticates the
remote access user also acts as the DNS
server.
In a VPN infrastructure, a domain controller is most often
used to authenticate and authorize users who attempt to connect
to the corporate network through the VPN. Besides authenticating
the user credentials, a domain controller is also used to
authorize the user account for remote access. For a user account
to be authorized for remote access, the account must be
configured with either the Allow Access or the Control Access
Through NPS Network Policy network access permission.
You can configure the network access permission for an
individual user on the Dial-in tab of that user's Properties
dialog box in the Active Directory Users And Computers console,
as shown in Figure 9. By
default, domain user accounts are configured with the Control
Access Through NPS Network Policy setting.
Many VPNs use a form of encryption that relies on
public key cryptography and a public key
infrastructure (PKI). In a PKI, certificates are used both to
validate the certificate holder's identity and to encrypt or
decrypt data. Each certificate is associated with a
key pair, made up of a public
key (which is attached to the public certificate and
presented freely to the world) and a private
key (which is generated locally and never sent over
the network). If the private key is used to encrypt data, the
associated public key is used to decrypt that data. If the
public key is used to encrypt data, the associated private key
is used to decrypt that data. In a typical scenario, a sender
uses the receiver's public key to encrypt a message sent to that
receiver. Only the receiver then has access to the private key
needed to decrypt the message.
In a PKI, certificates are created and issued by a
certification authority (CA), such as a computer running Windows
Server 2008 and configured with the Active Directory Certificate
Services server role.
An internal DHCP server normally is used to provide VPN
clients with an IP address. When such a DHCP server is used for
this purpose, the external adapter of the VPN server must be
configured with a DHCP Relay Agent that can respond to the DHCP
requests from external VPN clients. Alternatively, the VPN
server itself can be configured to assign addresses to VPN
clients without the help of the DHCP server on the corporate
network.
NPS is the Microsoft implementation of a RADIUS server and
proxy. You can use NPS to manage authentication, authorization,
and health policy centrally for VPN connections, dial-up
connections, 802.11 wireless connections, and 802.1x
connections. NPS can also act as a health evaluation server for
Network Access Protection (NAP). Like RRAS, NPS is a role
service of the Network Policy and Access Service server role in
Windows Server 2008.
Figure 10 shows an
example of how NPS can be used as a central authentication and
authorization point for network access. In the illustration, NPS
acts as a RADIUS server for a variety of access clients. For
user credential authentication, NPS uses a domain
controller.
Note
NPS AND INTERNET AUTHENTICATION
SERVICE (IAS)
NPS is the replacement for
Internet Authentication Service (IAS) in Windows Server
2003.