Cisco AnyConnect Secure Mobility Client Administrator Guide, Release 2.5
Configuring AnyConnect Features
Downloads: This chapterpdf (PDF - 2.19MB) The complete bookPDF (PDF - 5.12MB) | Feedback

Configuring VPN Features

Table Of Contents

Configuring VPN Features

Introduction to the AnyConnect Profile Configuration

Creating and Editing an AnyConnect Profile

Deploying the AnyConnect Profile

Configuring Start Before Logon

Installing Start Before Logon Components (Windows Only)

Start Before Logon Differences Between Windows Versions

Enabling SBL in the AnyConnect Profile

Enabling SBL on the Security Appliance

Troubleshooting SBL

Configuring Start Before Logon (PLAP) on Windows 7 and Vista Systems

Installing PLAP

Logging on to a Windows 7 or Windows Vista PC using PLAP

Disconnecting from AnyConnect Using PLAP

Trusted Network Detection

Trusted Network Detection Requirements

Configuring Trusted Network Detection

TND and Users with Multiple Profiles Connecting to Multiple Security Appliances

Post Log-in Always-on VPN

Always-on VPN Requirements

Configuring a Backup Cluster Members for Load-balancing with Always-on VPN

Configuring Always-on VPN

Configuring a Policy to Exempt Users from Always-on VPN

Disconnect Button for Always-on VPN

Disconnect Button Requirements

Enabling and Disabling the Disconnect Button

Connect Failure Policy for Always-on VPN

Connect Failure Policy Requirements

Configuring a Connect Failure Policy

Captive Portal Hotspot Detection and Remediation

Captive Portal Hotspot Detection

Captive Portal Remediation

Captive Portal Remediation Requirements

Configuring Support for Captive Portal Remediation

If Users Cannot Access a Captive Portal Page

Client Firewall with Local Printer and Tethered Device Support

Usage Notes about Firewall Behavior

Deploying a Client Firewall for Local Printer Support

Tethered Devices Support

Configuring Certificate Enrollment using SCEP

Provisioning and Renewing Certificates Automatically or Manually

Automatic Certificate Requests

Manual Certificate Retrieval

Windows Certificate Warning

Configuring SCEP to Provision and Renew Certificates

Certificate Storage after SCEP Request

Configuring the ASA to Support SCEP for AnyConnect

Configuring Certificate Only Authentication on the ASA

Configuring Certificate Expiration Notice

Configuring a Certificate Store

Controlling the Certificate Store on Windows

Creating a PEM Certificate Store for Mac and Linux

Restrictions for PEM File Filenames

Storing User Certificates

Configuring Certificate Matching

Certificate Key Usage Matching

Extended Certificate Key Usage Matching

Certificate Distinguished Name Mapping

Certificate Matching Example

Prompting Users to Select Authentication Certificate

Users Configuring Automatic Certificate Selection in AnyConnect Preferences

Configuring a Server List

Configuring a Backup Server List

Configuring a Windows Mobile Policy

Restrictions and Limitations

Configuring the Mobile Policy in the Client Profile

Configuring Auto Connect On Start

Configuring Auto Reconnect

Local Proxy Connections

Local Proxy Connections Requirements

Configuring Local Proxy Connections

Optimal Gateway Selection

Optimal Gateway Selection Requirements

Configuring Optimal Gateway Selection

Writing and Deploying Scripts

Scripting Requirements and Limitations

Writing, Testing, and Deploying Scripts

Configuring the AnyConnect Profile for Scripting

Troubleshooting Scripts

Authentication Timeout Control

Authentication Timeout Control Requirements

Configuring Authentication Timeout

Proxy Support

Configuring the Client to Ignore Browser Proxy Settings

Private Proxy

Private Proxy Requirements

Configuring a Group Policy to Download a Private Proxy

Internet Explorer Connections Tab Lockdown

Proxy Auto-Configuration File Generation for Clientless Support

Allowing a Windows RDP Session to Launch a VPN Session

AnyConnect over L2TP or PPTP

Configuring AnyConnect over L2TP or PPTP

Instructing Users to Override PPP Exclusion

AnyConnect Profile Editor Parameter Descriptions

Anyconnect Profile Editor, Preferences

Anyconnect Profile Editor, Preferences Cont

AnyConnect Profile Editor, Backup Servers

AnyConnect Profile Editor, Certificate Matching

AnyConnect Profile Editor, Certificate Enrollment

AnyConnect Profile Editor, Mobile Policy

AnyConnect Profile Editor, Server List

AnyConnect Profile Editor, Add/Edit Server List


Configuring VPN Features


The following sections describe the Cisco AnyConnect Secure Mobility client profile and VPN features, and how to configure them:

Introduction to the AnyConnect Profile Configuration

Creating and Editing an AnyConnect Profile

Deploying the AnyConnect Profile

Configuring Start Before Logon

Trusted Network Detection

Post Log-in Always-on VPN

Connect Failure Policy for Always-on VPN

Captive Portal Hotspot Detection and Remediation

Client Firewall with Local Printer and Tethered Device Support

Configuring Certificate Enrollment using SCEP

Configuring Certificate Expiration Notice

Configuring a Certificate Store

Configuring Certificate Matching

Prompting Users to Select Authentication Certificate

Configuring a Server List

Configuring a Backup Server List

Configuring a Windows Mobile Policy

Configuring Auto Connect On Start

Configuring Auto Reconnect

Local Proxy Connections

Optimal Gateway Selection

Writing and Deploying Scripts

Authentication Timeout Control

Proxy Support

Allowing a Windows RDP Session to Launch a VPN Session

AnyConnect over L2TP or PPTP

AnyConnect Profile Editor Parameter Descriptions

Introduction to the AnyConnect Profile Configuration

You enable Cisco AnyConnect Secure Mobility client features in the AnyConnect profile—an XML file that provides basic information about connection setup, as well as advanced features such as Start Before Logon (SBL). For some features, you also need to configure the ASA. The ASA deploys the profile during AnyConnect installation and updates. Users cannot manage or modify profiles.

You can configure a profile using the AnyConnect profile editor, a convenient GUI-based configuration tool launched from ASDM. The AnyConnect software package, version 2.5 and later (for all OSs), includes the editor, which activates when you load the AnyConnect package on the ASA as an SSL VPN client image. Alternatively, you can manually edit the XML file and import the file to the ASA as a profile.

You can configure the ASA to deploy profiles globally for all AnyConnect users or to users based on their group policy. Usually, a user has a single profile file. In some cases, you might want to provide more than one profile for a user. Someone who works from multiple locations might need more than one profile. Be aware that some of the profile settings (such as SBL) control the connection experience at a global level. Other settings are unique to a particular host and depend on the host selected.

Some profile settings are stored locally on the user computer in a user preferences file or a global preferences file. The user file has information the client needs to display user-controllable settings in the Preferences tab of the client GUI and information about the last connection, such as the user, the group, and the host. The global file has information about user-controllable settings to be able to apply those settings before login (since there is no user). For example, the client needs to know if Start Before Logon and/or AutoConnect On Start are enabled before login. For information about filenames and paths for each operating system, see Table 1-5 in Chapter 1 "Introduction to the AnyConnect Secure Mobility Client".

Creating and Editing an AnyConnect Profile

This section describes how to launch the profile editor from ASDM and create a new profile.

The Cisco AnyConnect Secure Mobility client software package, version 2.5 and later (all operating systems) contains the profile editor. ASDM activates the profile editor when you load the AnyConnect software package on the ASA as an SSL VPN client image.

If you load multiple AnyConnect packages, ASDM loads the profile editor from the newest AnyConnect package. This approach ensures that the editor displays the features for the newest AnyConnect loaded, as well as the older clients.

To activate the profile editor in ASDM, follow these steps:


Step 1 Load the AnyConnect software package as an SSL VPN image. If you have not done this already, see Chapter 2 "Configuring the Security Appliance to Deploy AnyConnect".

Step 2 Go to Configuration > Remote Access VPN > Network (Client) Access > AnyConnect Client Profile. The AnyConnect Client Profile pane opens.

Step 3 Click Add. The Add AnyConnect Client Profile window opens (Figure 3-1).

Figure 3-1 Adding an AnyConnect Profile

Step 4 Specify a name for the profile. Unless you specify a different value for Profile Location, ASDM creates an XML file on the ASA flash memory with the same name.

Step 5 Choose a group policy (optional). The ASA applies this profile to all AnyConnect users in the group policy.

Step 6 Click OK. ASDM creates the profile and the profile appears in the table of profiles.

Step 7 Select the profile you just created from the table of profiles. Click Edit. The profile editor displays (Figure 3-2). Enable AnyConnect features in the panes of the profile editor. When you finish, click OK.

Figure 3-2 Editing a Profile


Deploying the AnyConnect Profile

You can import a profile using either ASDM or the ASA command-line interface.


Note In order for the client initialization parameters in a profile to be applied to the AnyConnect configuration, the ASA the user connects to must appear as a host entry in that profile. If you do not add the ASA address or FQDN as a host entry in the profile, then filters do not apply for the session. For example, if you create a certificate match and the certificate properly matches the criteria, but you do not add the ASA as a host entry in that profile, the certificate match is ignored. For more information about adding host entries to the profile, see the "Configuring a Server List" section.


Follow these steps to configure the ASA to deploy a profile with AnyConnect:


Step 1 Identify the AnyConnect profile file to load into cache memory.
Go to Configuration > Remote Access VPN > Network (Client) Access > Advanced > Client Settings.

Step 2 In the SSL VPN Client Profiles area, click Add. The Add SSL VPN Client Profiles dialog box appears (Figure 3-3).

Figure 3-3 Adding an AnyConnect Profile

Step 3 Enter the profile name and profile package names in their respective fields. To browse for a profile package name, click Browse Flash. The Browse Flash dialog box opens (Figure 3-4).

Figure 3-4 Browse Flash Dialog Box

Step 4 Select a file from the table. The file name appears in the File Name field below the table. Click OK. The file name you selected appears in the Profile Package field of the Add or Edit SSL VPN Client Profiles dialog box.

Click OK in the Add or Edit SSL VPN Client dialog box. This makes profiles available to group policies and username attributes of AnyConnect users.

Step 5 To specify a profile for a group policy, go to Configuration > Remote Access VPN > Network (Client) Access > Group Policies > Add or Edit > Advanced > SSL VPN Client (Figure 3-5).

Figure 3-5 Specify the Profile to use in the Group Policy

Step 6 Deselect Inherit and select an AnyConnect profile to download from the drop-down list.

Step 7 When you have finished with the configuration, click OK.


Configuring Start Before Logon

Start Before Logon (SBL) forces the user to connect to the enterprise infrastructure over a VPN connection before logging on to Windows by starting AnyConnect before the Windows login dialog box appears. After authenticating to the ASA, the Windows login dialog appears, and the user logs in as usual. SBL is only available for Windows and lets you control the use of login scripts, password caching, mapping network drives to local drives, and more.


Note AnyConnect does not support SBL for Windows XP x64 (64-bit) Edition.


Reasons you might consider enabling SBL for your users include:

The user's computer is joined to an Active Directory infrastructure.

The user cannot have cached credentials on the computer (the group policy disallows cached credentials).

The user must run login scripts that execute from a network resource or need access to a network resource.

A user has network-mapped drives that require authentication with the Microsoft Active Directory infrastructure.

Networking components (such as MS NAP/CS NAC) exist that might require connection to the infrastructure.

To enable the SBL feature, you must make changes to the AnyConnect profile and enable the ASA to download an AnyConnect module for SBL.

The only configuration necessary for SBL is enabling the feature. Network administrators handle the processing that goes on before logon based upon the requirements of their situation. Logon scripts can be assigned to a domain or to individual users. Generally, the administrators of the domain have batch files or the like defined with users or groups in Microsoft Active Directory. As soon as the user logs on, the login script executes.

SBL creates a network that is equivalent to being on the local corporate LAN. For example, with SBL enabled, since the user has access to the local infrastructure, the logon scripts that would normally run when a user is in the office would also be available to the remote user.

For information about creating logon scripts, see the following Microsoft TechNet article:

http://technet2.microsoft.com/windowsserver/en/library/8a268d3a-2aa0-4469-8cd2-8f28d6a630801033.mspx?mfr=true

For information about using local logon scripts in Windows XP, see the following Microsoft article:

http://www.windowsnetworking.com/articles_tutorials/wxpplogs.html

In another example, a system might be configured to not allow cached credentials to be used to log on to the computer. In this scenario, users must be able to communicate with a domain controller on the corporate network for their credentials to be validated prior to gaining access to the computer.

SBL requires a network connection to be present at the time it is invoked. In some cases, this might not be possible, because a wireless connection might depend on credentials of the user to connect to the wireless infrastructure. Since SBL mode precedes the credential phase of a login, a connection would not be available in this scenario. In this case, the wireless connection needs to be configured to cache the credentials across login, or another wireless authentication needs to be configured, for SBL to work.

AnyConnect is not compatible with fast user switching.

This section covers the following topics:

Installing Start Before Logon Components (Windows Only)

Configuring Start Before Logon (PLAP) on Windows 7 and Vista Systems

Installing Start Before Logon Components (Windows Only)

The Start Before Logon components must be installed after the core client has been installed. Additionally, the 2.5 Start Before Logon components require that version 2.5, or later, of the core client software be installed. If you are pre-deploying AnyConnect and the Start Before Logon components using the MSI files (for example, you are at a big company that has its own software deployment—Altiris or Active Directory or SMS.) then you must get the order right. The order of the installation is handled automatically when the administrator loads AnyConnect if it is web deployed and/or web updated.

Start Before Logon Differences Between Windows Versions

The procedures for enabling SBL differ slightly on Windows 7 and Vista systems. Pre-Vista systems use a component called VPNGINA (which stands for virtual private network graphical identification and authentication) to implement SBL. Windows 7 and Vista systems use a component called PLAP to implement SBL.

In AnyConnect, the Windows 7 or Vista SBL feature is known as the Pre-Login Access Provider (PLAP), which is a connectable credential provider. This feature lets network administrators perform specific tasks, such as collecting credentials or connecting to network resources, prior to login. PLAP provides SBL functions on Windows 7 and Vista. PLAP supports 32-bit and 64-bit versions of the operating system with vpnplap.dll and vpnplap64.dll, respectively. The PLAP function supports Windows 7 and Vista x86 and x64 versions.


Note In this section, VPNGINA refers to the Start Before Logon feature for pre-Vista platforms, and PLAP refers to the Start Before Logon feature for Windows 7 and Vista systems.


A GINA is activated when a user presses the Ctrl+Alt+Del key combination. With PLAP, the Ctrl+Alt+Del key combination opens a window where the user can choose either to log in to the system or to activate any Network Connections (PLAP components) using the Network Connect button in the lower-right corner of the window.

The sections that immediately follow describe the settings and procedures for both VPNGINA and PLAP SBL. For a complete description of enabling and using the SBL feature (PLAP) on a Windows 7 or Vista platform, see the "Configuring Start Before Logon (PLAP) on Windows 7 and Vista Systems" section.

Enabling SBL in the AnyConnect Profile

To enable SBL in the AnyConnect profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences pane and check Use Start Before Logon.

Step 3 (Optional) To give the remote user control over using SBL, check User Controllable.


Note The user must reboot the remote computer before SBL takes effect.



Enabling SBL on the Security Appliance

To minimize download time, AnyConnect requests downloads (from the ASA) only of core modules that it needs for each feature that it supports. To enable SBL, you must specify the SBL module name in group policy on the ASA. Follow this procedure:


Step 1 Go to Configuration > Remote Access VPN > Network (Client) Access > Group Policies.

Step 2 Select a group policy and click Edit. The Edit Internal Group Policy window displays.

Step 3 Select Advanced > SSL VPN Client in the left-hand navigation pane. SSL VPN settings display.

Step 4 Uncheck Inherit for the Optional Client Module for Download setting.

Step 5 Select the Start Before Logon module in the drop-down list (Figure 3-6).

Figure 3-6 Specifying the SBL Module to Download


Troubleshooting SBL

Use the following procedure if you encounter a problem with SBL:


Step 1 Ensure that the AnyConnect profile is loaded on the ASA, ready to be deployed.

Step 2 Delete prior profiles (search for them on the hard drive to find the location, *.xml).

Step 3 Using Windows Add/Remove Programs, uninstall the SBL Components. Reboot the computer and retest.

Step 4 Clear the user's AnyConnect log in the Event Viewer and retest.

Step 5 Web browse back to the security appliance to install AnyConnect again.

Step 6 Reboot once. On the next reboot, you should be prompted with the Start Before Logon prompt.

Step 7 Send the event log to Cisco in .evt format

Step 8 If you see the following error, delete the user's AnyConnect profile:

Description: Unable to parse the profile C:\Documents and Settings\All 
Users\Application Data\Cisco\Cisco AnyConnect VPN Client\Profile\VABaseProfile.xml. 
Host data not available.
 
   

Step 9 Go back to the .tmpl file, save a copy as an .xml file, and use that XML file as the default profile.


Configuring Start Before Logon (PLAP) on Windows 7 and Vista Systems

As on the other Windows platforms, the Start Before Logon (SBL) feature initiates a VPN connection before the user logs in to Windows. This ensures users connect to their corporate infrastructure before logging on to their computers. Microsoft Windows 7 and Vista use different mechanisms than Windows XP, so the SBL feature on Windows 7 and Vista uses a different mechanism as well.

The SBL AnyConnect feature is known as the Pre-Login Access Provider (PLAP), which is a connectable credential provider. This feature lets programmatic network administrators perform specific tasks, such as collecting credentials or connecting to network resources, prior to login. PLAP provides SBL functions on Windows 7 and Vista. PLAP supports 32-bit and 64-bit versions of the operating system with vpnplap.dll and vpnplap64.dll, respectively. The PLAP function supports x86 and x64.


Note In this section, VPNGINA refers to the Start Before Logon feature for Windows XP, and PLAP refers to the Start Before Logon feature for Windows 7 and Vista.


Installing PLAP

The vpnplap.dll and vpnplap64.dll components are part of the existing GINA installation package, so you can load a single, add-on SBL package on the security appliance, which then installs the appropriate component for the target platform. PLAP is an optional feature. The installer software detects the underlying operating system and places the appropriate DLL in the system directory. For systems prior to Windows 7 and Vista, the installer installs the vpngina.dll component on 32-bit versions of the operating system. On Windows 7 or Vista, or the Windows 2008 server, the installer determines whether the 32-bit or 64-bit version of the operating system is in use and installs the appropriate PLAP component.


Note If you uninstall AnyConnect while leaving the VPNGINA or PLAP component installed, the VPNGINA or PLAP component is disabled and not visible to the remote user.


Once installed, PLAP is not active until you modify the user profile <profile.xml> file to activate SBL. See the "Enabling SBL in the AnyConnect Profile" section. After activation, the user invokes the Network Connect component by clicking Switch User, then the Network Connect icon in the lower, right-hand part of the screen.


Note If the user mistakenly minimizes the user interface, the user can restore it by pressing the Alt+Tab key combination.


Logging on to a Windows 7 or Windows Vista PC using PLAP

Users can log on to Windows 7 or Windows Vista with PLAP enabled by following these steps, which are Microsoft requirements. The examples screens are for Windows Vista:


Step 1 At the Windows start window, users press the Ctrl+Alt+Delete key combination (Figure 3-7).

Figure 3-7 Example Logon Window Showing the Network Connect Button

This displays the Vista logon window with a Switch User button (Figure 3-8).

Figure 3-8 Example Logon Window with Switch User Button

Step 2 The user clicks Switch User (circled in red in this figure). The Vista Network Connect window displays (Figure 3-9). The network login icon is circled in red in Figure 3-9.


Note If the user is already connected through an AnyConnect connection and clicks Switch User, that VPN connection remains. If the user clicks Network Connect, the original VPN connection terminates. If the user clicks Cancel, the VPN connection terminates.


Figure 3-9 Example Network Connect Window

Step 3 The user clicks the Network Connect button in the lower-right corner of the window to launch AnyConnect. The AnyConnect logon window opens (Figure 3-10).

Figure 3-10 Example AnyConnect Logon Window

Step 4 The user uses this GUI to log in as usual.


Note This example assumes AnyConnect is the only installed connection provider. If there are multiple providers installed, the user must select the one to use from the items displayed on this window.


Step 5 When the user connects, the user sees a screen similar to the Vista Network Connect window, except that it has the Microsoft Disconnect button in the lower-right corner (Figure 3-11). This is the only indication the connection is successful.

Figure 3-11 Example Disconnect Window

The user clicks the icon associated with their login. In this example, the user clicks VistaAdmin to complete logging onto the computer.


Caution Once the connection is established, the user has an unlimited time to log on. If the user forgets to log on after connecting, the VPN session continues indefinitely.


Disconnecting from AnyConnect Using PLAP

After successfully establishing a VPN session, the PLAP component returns to the original window, this time with a Disconnect button displayed in the lower-right corner of the window (circled in Figure 3-11).

When the user clicks Disconnect, the VPN tunnel disconnects.

In addition to explicitly disconnecting in response to the Disconnect button, the tunnel also disconnects in the following situations:

When a user logs on to a PC using PLAP but then presses Cancel.

When the PC is shut down before the user logs on to the system.

This behavior is a function of the Windows Vista PLAP architecture, not AnyConnect.

Trusted Network Detection

Trusted Network Detection (TND) gives you the ability to have AnyConnect automatically disconnect a VPN connection when the user is inside the corporate network (the trusted network) and start the VPN connection when the user is outside the corporate network (the untrusted network). This feature encourages greater security awareness by initiating a VPN connection when the user is outside the trusted network.

If AnyConnect is also running Start Before Logon (SBL), and the user moves into the trusted network, the SBL window displayed on the computer automatically closes.

TND does not interfere with the ability of the user to manually establish a VPN connection. It does not disconnect a VPN connection that the user starts manually in the trusted network. TND only disconnects the VPN session if the user first connects in an untrusted network and moves into a trusted network. For example, TND disconnects the VPN session if the user makes a VPN connection at home and then moves into the corporate office.

Because the TND feature controls the AnyConnect GUI and automatically initiates connections, the GUI should run at all times. If the user exits the GUI, TND does not automatically start the VPN connection.

You configure TND in the AnyConnect profile. No changes are required to the ASA configuration.

Trusted Network Detection Requirements

TND supports only computers running Microsoft Windows 7, Vista, XP; and Mac OS X 10.5 and 10.6.

Configuring Trusted Network Detection

To configure TND in the client profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences (Cont) pane.

Step 3 Check Automatic VPN Policy.


Note AutomaticVPNPolicy does not prevent users from manually controlling a VPN connection.


Step 4 Select a Trusted Network Policy—the action the client takes when the user is inside the corporate network (the trusted network). The options are:

Disconnect—The client terminates the VPN connection in the trusted network.

Connect—The client initiates a VPN connection in the trusted network.

Do Nothing—The client takes no action in the trusted network. Setting both the Trusted Network Policy and Untrusted Network Policy to Do Nothing disables Trusted Network Detection (TND).

Pause (present in AnyConnect Release 2.5.1025 and later) —AnyConnect suspends the VPN session instead of disconnecting it if a user enters a network configured as trusted after establishing a VPN session outside the trusted network. When the user goes outside the trusted network again, AnyConnect resumes the session. This feature is for the user's convenience because it eliminates the need to establish a new VPN session after leaving a trusted network.

Step 5 Select an Untrusted Network Policy—the action the client takes when the user is outside the corporate network. The options are:

Connect—The client initiates a VPN connection upon the detection of an untrusted network.

Do Nothing—The client initiates a VPN connection upon the detection of an untrusted network. This option disables always-on VPN. Setting both the Trusted Network Policy and Untrusted Network Policy to Do Nothing disables Trusted Network Detection.

Step 6 Specify the Trusted DNS Domains—DNS suffixes (a string separated by commas) that a network interface may have when the client is in the trusted network. For example: *.cisco.com. Wildcards (*) are supported for DNS suffixes. See Table 3-1 for more examples of DNS suffix matching.

Step 7 Specify Trusted DNS Servers—All DNS server addresses (a string separated by commas) that a network interface may have when the client is in the trusted network. For example: 161.44.124.*,64.102.6.247. Wildcards (*) are supported for DNS server addresses.


Note You must specify all the DNS servers for TND to work. If you configure both the TrustedDNSDomains and TrustedDNSServers, sessions must match both settings to be considered in the trusted network.



Table 3-1 shows examples of DNS suffix matching.

Table 3-1 DNS Suffix Matching Examples 

To Match this DNS Suffix:
Use this Value for TrustedDNSDomains:

cisco.com (only)

cisco.com

cisco.com
AND
anyconnect.cisco.com

*.cisco.com
OR
cisco.com, anyconnect.cisco.com

asa.cisco.com
AND
anyconnect.cisco.com

*.cisco.com
OR
asa.cisco.com, anyconnect.cisco.com



TND and Users with Multiple Profiles Connecting to Multiple Security Appliances

Multiple profiles on a user computer may present problems if the user alternates connecting to a security appliance that has TND enabled and to one that does not. If the user has connected to a TND-enabled security appliance in the past, that user has received a TND-enabled profile. If the user reboots the computer when out of the trusted network, the GUI of the TND-enabled client displays and attempts to connect to the security appliance it was last connected to, which could be the one that does not have TND enabled.

If the client connects to the TND-enabled security appliance, and the user wishes to connect to the non-TND ASA, the user must manually disconnect and then connect to the non-TND security appliance. Please consider these problems before enabling TND when the user may be connecting to security appliances with and without TND.

The following workarounds will help you prevent this problem:

Enable TND in the client profiles loaded on all the ASAs on your corporate network.

Create one profile listing all the ASAs in the host entry section, and load that profile on all your ASAs.

If users do not need to have multiple, different profiles, use the same profiles name for the profiles on all the ASAs. Each ASA overrides the existing profile.

Post Log-in Always-on VPN

You can configure AnyConnect to establish a VPN session automatically after the user logs in to a computer. The VPN session remains open until the user logs out of the computer, or the session timer or idle session timer expires. The group policy assigned to the session specifies these timer values. If AnyConnect loses the connection with the ASA, the ASA and the client retain the resources assigned to the session until one of these timers expire. AnyConnect continually attempts to reestablish the connection to reactivate the session if it is still open; otherwise, it continually attempts to establish a new VPN session.

(Post log-in) always-on VPN enforces corporate policies to protect the computer from security threats by preventing access to Internet resources when the computer is not in a trusted network.


Caution Always-on VPN does not currently support connecting though a proxy.

When AnyConnect detects always-on VPN in the profile, it protects the endpoint by deleting all other AnyConnect profiles, and ignores any public proxies configured to connect to the ASA.

To enhance the protection against threats, we recommend the following additional protective measures if you configure always-on VPN:

Pre-deploy a profile configured with always-on VPN to the endpoints to limit connectivity to the pre-defined ASAs. Predeployment prevents contact with a rogue server.

Restrict administrator rights so that users cannot terminate processes. A PC user with admin rights can bypass an always-on VPN policy by stopping the agent. If you want to ensure fully-secure always-on VPN, you must deny local admin rights to users.

Restrict access to the following folders or the Cisco sub-folders on Windows computers:

For Windows XP users: C:\Document and Settings\All Users

For Windows Vista and Windows 7 users: C:\ProgramData

Users with limited or standard privileges may sometimes have write access to their program data folders. They could use this access to delete the AnyConnect profile file and thereby circumvent the always-on feature.

Predeploy a group policy object (GPO) for Windows users to prevent users with limited rights from terminating the GUI. Predeploy equivalent measures for Mac OS users.

Always-on VPN Requirements

Support for always-on VPN requires one of the following licenses:

AnyConnect Premium (SSL VPN Edition)

Cisco AnyConnect Secure Mobility

You can use a Cisco AnyConnect Secure Mobility license to provide support for always-on VPN in combination with either an AnyConnect Essentials or an AnyConnect Premium license.

Always-on VPN requires a valid server certificate configured on the ASA; otherwise, it fails and logs an event indicating the certificate is invalid.

Ensure your server certificates can pass strict mode if you configure always-on VPN.

Always-on VPN supports only computers running Microsoft Windows 7, Vista, XP; and Mac OS X 10.5 and 10.6.

To prevent the download of an always-on VPN profile that locks a VPN connection to a rogue server, the AnyConnect client requires a valid, trusted server certificate to connect to a secure gateway. We strongly recommend purchasing a digital certificate from a certificate authority (CA) and enrolling it on the secure gateways.

If you generate a self-signed certificate, users connecting receive a certificate warning. They can respond by configuring the browser to trust that certificate to avoid subsequent warnings.


Note We do not recommend using a self-signed certificate because of the possibility a user could inadvertently configure a browser to trust a certificate on a rogue server and because of the inconvenience to users of having to respond to a security warning when connecting to your secure gateways.


ASDM provides an Enroll ASA SSL VPN with Entrust button on the Configuration > Remote Access VPN > Certificate Management > Identity Certificates panel to facilitate enrollment of a public certificate to resolve this issue on an ASA. The Add button on this panel lets you import a public certificate from a file or generate a self-signed certificate (Figure 3-12).

Figure 3-12 Enrolling a Public Certificate (ASDM 6.3 Example)


Note These instructions are intended only as a guideline for configuring certificates. For details, click the ASDM Help button, or see the ASDM or CLI guide for the secure gateway you are configuring. For example, Cisco ASA 5500 Series Configuration Guide using ASDM, 6.3 for ASA 8.3 provides comprehensive instructions in Configuring Digital Certificates.


Use the Advanced button to specify the domain name and IP address of the outside interface if you are generating a self-signed interface (Figure 3-13).

Figure 3-13 Generating a Self-Signed Certificate (ASDM 6.3 Example)

Following the enrollment of a certificate, assign it to the outside interface. To do so, choose Configuration > Remote Access VPN > Advanced > SSL Settings, edit the "outside" entry in the Certificates area, and select the certificate from the Primary Enrolled Certificate drop-down list (Figure 3-14).

Figure 3-14 Assigning a Certificate to the Outside Interface (ASDM 6.3 Example)

Add the certificate to all of the secure gateways and associate it with the IP address of the outside interfaces.

Configuring a Backup Cluster Members for Load-balancing with Always-on VPN

Always-on VPN affects the load balancing of AnyConnect VPN sessions. With always-on VPN disabled, when the client connects to a master device within a load balancing cluster, the client complies with a redirection from the master device to any of the backup cluster members. With always-on enabled, the client does not comply with a redirection from the master device unless the address of the backup cluster member is specified in the server list of the client profile. Therefore, be sure to add any backup cluster members to the server list.

To specify the addresses of backup cluster members in the client profile, use ASDM to add a load-balancing backup server list by following these steps:


Step 1 Launch the Profile Editor from ASDM (see Creating and Editing an AnyConnect Profile).

Step 2 Go to the Server List pane.

Step 3 Choose a server that is a master device of a load-balancing cluster and click Edit.

Step 4 Enter an FQDN or IP address of any load-balancing cluster member.


Configuring Always-on VPN

To configure AnyConnect to establish a VPN session automatically only when it detects that the computer is in an untrusted network,


Step 1 Configure TND (see Configuring Trusted Network Detection).

Step 2 Check Always On.


Configuring a Policy to Exempt Users from Always-on VPN

By default, always-on VPN is disabled. You can configure exemptions to override an always-on policy. For example, you might want to let certain individuals establish VPN sessions with other companies, or exempt the always-on VPN policy for noncorporate assets.

Configure a dynamic access policy that uses AAA or endpoint criteria to match sessions to noncorporate assets, as follows:


Step 1 Choose Configuration > Remote Access VPN > Network (Client) Access > Dynamic Access Policies > Add or Edit.

The Add or Edit Dynamic Policy window opens (Figure 3-15).

Figure 3-15 Exempting Users from Always-on VPN

Step 2 Configure criteria to exempt users from always-on VPN. For example, use the Selection Criteria area to specify AAA attributes to match user login IDs.

Step 3 Click the AnyConnect tab on the bottom half of the Add or Edit Dynamic Access Policy window.

Step 4 Click Disable next to "Always-On for AnyConnect VPN" client.


If a Cisco AnyConnect Secure Mobility client policy enables always-on VPN and a dynamic access policy or group policy disables it, the client retains the disable setting for the current and future VPN sessions as long as its criteria match the dynamic access policy or group policy on the establishment of each new session.

Disconnect Button for Always-on VPN

AnyConnect supports a Disconnect button for always-on VPN sessions. If you enable it, AnyConnect displays a Disconnect button upon the establishment of a VPN session. Users of always-on VPN sessions may want to click Disconnect so they can choose an alternative secure gateway for reasons such as the following:

Performance issues with the current VPN session.

Reconnection issues following the interruption of a VPN session.

The Disconnect button locks all interfaces to prevent data from leaking out and to protect the computer from internet access except for establishing a VPN session.


Caution Disabling the Disconnect button can at times hinder or prevent VPN access.

If the user clicks Disconnect during an always-on VPN session, AnyConnect locks all interfaces to prevent data from leaking out and protects the computer from internet access except for that required to establish a new VPN session. AnyConnect locks all interfaces, regardless of the connect failure policy


Caution The Disconnect locks all interfaces to prevent data from leaking out and to protect the computer from internet access except for establishing a VPN session. For the reasons noted above, disabling the Disconnect button can at times hinder or prevent VPN access.

Disconnect Button Requirements

The requirements for the disconnect option for always-on VPN match the Always-on VPN Requirements.

Enabling and Disabling the Disconnect Button

By default, the profile editor enables the Disconnect button when you enable always-on VPN. You can view and change the Disconnect button setting, as follows:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences (Cont) pane.

Step 3 Check or uncheck Allow VPN Disconnect.


Connect Failure Policy for Always-on VPN

The connect failure policy determines whether the computer can access the internet if always-on VPN is enabled and AnyConnect cannot establish a VPN session (for example, when a secure gateway is unreachable). The fail-close policy disables network connectivity-except for VPN access. The fail-open policy permits network connectivity. Regardless of the connect failure policy, AnyConnect continues to try to establish the VPN connection. The following table explains the fail open and fail close policies:

Always-on VPN Connect Policy
Scenario
Advantage
Trade-off

Fail open

AnyConnect fails to establish or reestablish a VPN session. This failure could occur if the secure gateway is unavailable, or if AnyConnect does not detect the presence of a captive portal (often found in airports, coffee shops and hotels).

Grants full network access, letting users continue to perform tasks where access to the Internet or other local network resources is needed.

Security and protection are not available until the VPN session is established. Therefore, the endpoint device may get infected with web-based malware or sensitive data may leak.

Fail close

Same as above except that this option is primarily for exceptionally secure organizations where security persistence is a greater concern than always-available network access.

The endpoint is protected from web-based malware and sensitive data leakage at all times because all network access is prevented except for local resources such as printers and tethered devices permitted by split tunneling.

Until the VPN session is established, this option prevents all network access except for local resources such as printers and tethered devices. It can halt productivity if users require Internet access outside the VPN and a secure gateway is inaccessible.



Caution A connect failure closed policy prevents network access if AnyConnect fails to establish a VPN session. AnyConnect detects most captive portals, described in "Captive Portal Hotspot Detection and Remediation" section; however, if it cannot detect a captive portal, the connect failure closed policy prevents all network connectivity.

If you deploy a closed connection policy, we highly recommend that you follow a phased approach. For example, first deploy always-on VPN with a connect failure open policy and survey users for the frequency with which AnyConnect does not connect seamlessly. Then deploy a small pilot deployment of a connect failure closed policy among early-adopter users and solicit their feedback. Expand the pilot program gradually while continuing to solicit feedback before considering a full deployment. As you deploy a connect failure closed policy, be sure to educate the VPN users about the network access limitation as well as the advantages of a connect failure closed policy.

Connect Failure Policy Requirements

Support for the connect failure policy feature requires one of the following licenses:

AnyConnect Premium (SSL VPN Edition)

Cisco AnyConnect Secure Mobility

You can use a Cisco AnyConnect Secure Mobility license to provide support for the connect failure policy in combination with either an AnyConnect Essentials or an AnyConnect Premium license.

The connect failure policy supports only computers running Microsoft Windows 7, Vista, XP; and Mac OS X 10.5 and 10.6.

Configuring a Connect Failure Policy

By default, the connect failure policy prevents Internet access if always-on VPN is configured and the VPN is unreachable. To configure a connect failure policy,


Step 1 Configure TND (see Configuring Trusted Network Detection).

Step 2 Check Always On.

Step 3 Set the Connect Failure Policy parameter to one of the following settings:

Closed—(Default) Restricts network access when the VPN is unreachable. The restricted state permits access only to secure gateways to which the computer is allowed to connect. It prevents captive portal remediation (described in the next sections) unless you specifically enable it as part of the fail-closed policy. The restricted state permits the application of the local resource rules imposed by the most recent VPN session if Apply Last VPN Local Resources is enabled in the client profile. For example, these rules could determine access to active sync and local printing. The network is unblocked and open during a AnyConnect software upgrade when Always-On is enabled. The purpose of the Closed setting is to help protect corporate assets from network threats when resources in the private network that protect the endpoint are not available.

Open—Does not restrict network access when the client cannot establish a VPN session (for example, when an ASA is unreachable). This setting permits network access by browsers and other applications when the client cannot connect to the ASA. An open connect failure policy does not apply if you enable the Disconnect button and the user clicks Disconnect.


Note Because the ASA does not support IPv6 addresses for split tunneling, the local print feature does not support IPv6 printers.



Captive Portal Hotspot Detection and Remediation

Many facilities that offer Wi-Fi and wired access, such as airports, coffee shops, and hotels, require the user to pay before obtaining access, agree to abide by an acceptable use policy, or both. These facilities use a technique called captive portal to prevent applications from connecting until the user opens a browser and accepts the conditions for access.

The following sections describe the captive portal detection and remediation features.

Captive Portal Hotspot Detection

AnyConnect displays the "Unable to contact VPN server" message on the GUI if it cannot connect, regardless of the cause. VPN server specifies the secure gateway. If always-on is enabled, and a captive portal is not present, the client continues to attempt to connect to the VPN and updates the status message accordingly.

If always-on VPN is enabled, the connect failure policy is closed, captive portal remediation is disabled, and AnyConnect detects the presence of a captive portal, the AnyConnect GUI displays the following message once per connection and once per reconnect:

The service provider in your current location is restricting access to the Internet. 
The AnyConnect protection settings must be lowered for you to log on with the service 
provider. Your current enterprise security policy does not allow this.
 
   

If AnyConnect detects the presence of a captive portal and the AnyConnect configuration differs from that described above, the AnyConnect GUI displays the following message once per connection and once per reconnect:

The service provider in your current location is restricting access to the Internet. 
You need to log on with the service provider before you can establish a VPN session. 
You can try this by visiting any website with your browser.
 
   

Captive portal detection is enabled by default, and is non-configurable.

Support for both captive portal detection and remediation requires one of the following licenses:

AnyConnect Premium (SSL VPN Edition)

Cisco AnyConnect Secure Mobility

You can use a Cisco AnyConnect Secure Mobility license to provide support for captive portal detection and remediation in combination with either an AnyConnect Essentials or an AnyConnect Premium license.

Captive portal detection and remediation support only computers running Microsoft Windows 7, Vista, XP; and Mac OS X 10.5 and 10.6.

Captive Portal Remediation

Captive portal remediation is the process of satisfying the requirements of a captive portal hotspot to obtain network access. By default, the connect failure policy prevents captive portal remediation because it restricts network access. You can configure AnyConnect to lift restricted access to let the user satisfy the captive portal requirements. You can also specify the duration for which the client lifts restricted access.

Captive Portal Remediation Requirements

Support for both captive portal detection and remediation requires one of the following licenses:

AnyConnect Premium (SSL VPN Edition)

Cisco AnyConnect Secure Mobility

You can use a Cisco AnyConnect Secure Mobility license to provide support for captive portal detection and remediation in combination with either an AnyConnect Essentials or an AnyConnect Premium license.

Captive portal detection and remediation support only computers running Microsoft Windows 7, Vista, XP; and Mac OS X 10.5 and 10.6.

Configuring Support for Captive Portal Remediation

If the connect failure policy is open, users can remediate captive portal requirements. The captive portal remediation feature applies only if the connect failure policy is closed and a captive portal is present.

By default, support for captive portal remediation is disabled. To enable captive portal remediation,


Step 1 Configure a connect failure policy (see Configuring a Connect Failure Policy).

Step 2 Set the following parameters:

Allow Captive Portal Remediation—Check to let the Cisco AnyConnect Secure Mobility client lift the network access restrictions imposed by the closed connect failure policy. Doing so lets the user meet the captive portal requirements. By default, this parameter is unchecked to provide the greatest security; however, you must enable it if you want the client to connect to the VPN if a captive portal is preventing it from doing so.

Remediation Timeout—Enter the number of minutes that AnyConnect lifts the network access restrictions. The user needs enough time to satisfy the captive portal requirements.

If always-on VPN is enabled, and the user clicks Connect or a reconnect is in progress, a message window indicates the presence of a captive portal. The user can then open a web browser window to remediate the captive portal.


If Users Cannot Access a Captive Portal Page

If users cannot access a captive portal remediation page, ask them to try the following steps successively until they can remediate:


Step 1 Disable and re-enable the network interface. This action triggers a captive portal detection retry.

Step 2 Terminate any applications that use HTTP, such as instant messaging programs, e-mail clients, IP phone clients, and all but one browser to perform the remediation. The captive portal may be actively inhibiting DoS attacks by ignoring repetitive attempts to connect, causing them to time out on the client end. The attempt by many applications to make HTTP connections exacerbates this problem.

Step 3 Retry Step 1.

Step 4 Restart the computer.


Client Firewall with Local Printer and Tethered Device Support

When users connect to the ASA, all traffic is tunneled through the connection and users cannot access resources on their local network. This includes printers, cameras, and Windows Mobile devices (tethered devices) that sync with the local computer. Enabling Local LAN Access in the client profile resolves this problem, however it can introduce a security or policy concern for some enterprises as a result of unrestricted access to the local network. You can use the ASA to deploy endpoint OS firewall capabilities to restrict access to particular types of local resources, such as printers and tethered devices.

To do so, enable client firewall rules for specific ports for printing. The client distinguishes between inbound and outbound rules. For printing capabilities, the client opens ports required for outbound connections, but blocks all incoming traffic. The client firewall is independent of the always-on feature.


Note Be aware that users logged in as administrators have the ability to modify the firewall rules deployed to the client by the ASA. Users with limited privileges cannot modify the rules. For either user, the client reapplies the rules when the connection terminates.


If you configure the client firewall, and the user authenticates to an Active Directory (AD) server, the client still applies the firewall policies from the ASA. However, the rules defined in the AD group policy take precedence over the rules of the client firewall.

Usage Notes about Firewall Behavior

The following notes clarify how the AnyConnect client uses the firewall:

The source IP is not used for firewall rules. The client ignores the source IP information in the firewall rules sent from the ASA. The client determines the source IP depending on whether the rules are public or private. Public rules are applied to all interfaces on the client. Private rules are applied to the Virtual Adapter.

The ASA supports many protocols for ACL rules. However, the AnyConnect firewall feature supports only TCP, UDP, ICMP, and IP. If the client receives a rule with a different protocol, it treats it as an invalid firewall rule, and then disables split tunneling and uses full tunneling for security reasons.

Be aware of the following differences in behavior for each operating system:

For Windows computers, deny rules take precedence over allow rules in Windows Firewall. If the ASA pushes down an allow rule to the AnyConnect client, but the user has created a custom deny rule, the AnyConnect rule is not enforced.

On Windows Vista, when a firewall rule is created, Vista takes the port number range as a comma-separated string. The port range can be a maximum of 300 ports. For example, from 1-300 or 5000-5300. If you specify a range greater than 300 ports, the firewall rule is applied only to the first 300 ports.

Windows users whose firewall service must be started by the AnyConnect client (not started automatically by the system) may experience a noticeable increase in the time it takes to establish a VPN connection.

On Mac computers, the AnyConnect client applies rules sequentially in the same order the ASA applies them. Global rules should always be last.

For third-party firewalls, traffic is passed only if both the AnyConnect client firewall and the third-party firewall allow that traffic type. If the third-party firewall blocks a specify traffic type that the AnyConnect client allows, the client blocks the traffic.

The following sections describe procedures on how to do this:

Deploying a Client Firewall for Local Printer Support

Tethered Devices Support

Deploying a Client Firewall for Local Printer Support

The ASA supports the SSL VPN client firewall feature with ASA version 8.3(1) or later, and ASDM version 6.3(1) or later. This section describes how to configure the client firewall to allow access to local printers, and how to configure the client profile to use the firewall when the VPN connection fails.

Limitations and Restrictions of the Client Firewall

The following limitations and restrictions apply to using the client firewall to restrict local LAN access:

Due to limitations of the OS, the client firewall policy on computers running Windows XP is enforced for inbound traffic only. Outbound rules and bidirectional rules are ignored. This would include firewall rules such as 'permit ip any any'.

Host Scan and some third-party firewalls can interfere with the firewall.

Because the ASA does not support IPv6 addresses for split tunneling, the client firewall does not support IPv6 devices on the local network.

Table 3-1 clarifies what direction of traffic is affected by the source and destination port settings:

Table 3-2

Source Port
Destination Port
Traffic Direction Affected

Specific port number

Specific port number

Inbound and outbound

A range or 'All' (value of 0)

A range or 'All' (value of 0)

Inbound and outbound

Specific port number

A range or 'All' (value of 0)

Inbound only

A range or 'All' (value of 0)

Specific port number

Outbound only


Source and Destination Ports and Traffic Direction Affected

Example ACL Rules for Local Printing

Table 3-3 shows example ACL rules for local printing:

.

Table 3-3 Example ACL Rules for Local Printing 

Description
Permission
Interface
Protocol
Source Port
Destination Address
Destination Port

Deny all

Deny

Public

Any

Default1

Any

Default

LPD

Allow

Public

TCP

Default

Any

515

IPP

Allow

Public

TCP

Default

Any

631

Printer

Allow

Public

TCP

Default

Any

9100

mDNS

Allow

Public

UDP

Default

224.0.0.251

5353

LLMNR

Allow

Public

UDP

Default

224.0.0.252

5355

NetBios

Allow

Public

TCP

Default

Any

137

NetBios

Allow

Public

UDP

Default

Any

137

1 The port range is 1 to 65535.



Note To enable local printing, you must enable the Local LAN Access feature in the client profile with a defined ACL rule allow Any Any.


Configuring Local Print Support

To enable local print support, follow these steps:


Step 1 Enable the SSL VPN client firewall in a group policy. Go to Configuration > Remote Access VPN > Network (Client) Access > Group Policies.

Step 2 Select a group policy and click Edit. The Edit Internal Group Policy window displays.

Step 3 Go to Advanced > SSL VPN Client > Client Firewall. Click Manage for the Private Network Rule.

Step 4 Create an ACL and specify an ACE using the rules in Table 3-3. Add this ACL as a Public Network Rule.

Step 5 If you enabled the Automatic VPN Policy always-on and specified a closed policy, in the event of a VPN failure, users have no access to local resources. You can apply the firewall rules in this scenario by going to Preferences (Cont) in the profile editor and checking Apply last local VPN resource rules.


Tethered Devices Support

To support tethered devices and protect the corporate network, create a standard ACL in the group policy, specifying destination addresses in the range that the tethered devices use. Then specify the ACL for split tunneling as a network list to exclude from tunneled VPN traffic. You must also configure the client profile to use the last VPN local resource rules in case of VPN failure.


Note For Windows Mobile devices that need to sync with the computer running AnyConnect, specify the destination address 169.254.0.0 in the ACL.


Follow these steps:


Step 1 In ASDM, go to Group Policy > Advanced > Split Tunneling.

Step 2 Next to the Network List field, click Manage. The ACL Manager displays.

Step 3 Click the Standard ACL tab.

Step 4 Click Add and then Add ACL. Specify a name for the new ACL.

Step 5 Choose the new ACL in the table and click Add and then Add ACE. The Edit ACE window displays.

Step 6 For Action, choose the Permit radio button. Specify the Destination as 169.254.0.0. For Service, choose IP. Click OK.

Step 7 In the Split Tunneling pane, for Policy, choose Exclude Network List Below. For Network List, choose the ACL you created. Click OK, then Apply.


Configuring Certificate Enrollment using SCEP

The secure mobility standalone client can employ the Simple Certificate Enrollment Protocol (SCEP) to provision and renew a certificate used for client authentication. The goal of SCEP is to support the secure issuance of certificates to network devices in a scalable manner, using existing technology whenever possible.

In our implementation of SCEP, the client sends a certificate request and the certificate authority (CA) automatically accepts or denies the request. (SCEP also allows for a method where the client requests a certificate and then polls the CA until it receives an accept or deny response. The polling method is not implemented in this release.)

You configure the use of SCEP requests in the client profile file. This file is an XML file downloaded with the client that contains settings that affect client behavior. Use of SCEP is supported on all operating systems that support the AnyConnect.

This section describes the following topics:

Provisioning and Renewing Certificates Automatically or Manually

Configuring SCEP to Provision and Renew Certificates

Certificate Storage after SCEP Request

Configuring Certificate Expiration Notice

Configuring the ASA to Support SCEP for AnyConnect

Provisioning and Renewing Certificates Automatically or Manually

You can configure SCEP requests so that either AnyConnect initiates certificate requests automatically or users initiate certificate requests manually.

Automatic Certificate Requests

AnyConnect attempts to automatically retrieve new certificates in two cases. For both cases, client certificate authentication must fail before the client tries to automatically retrieve the new certificates.

The first case is when users attempt to connect to a group-url which is identified in the Automatic SCEP Host settings of their client profile. The client initiates the SCEP certificate request after a VPN, based on the SCEP-enabled group-url, has been established.

The second method for triggering automatic certificate retrieval is the case where the certificate contents are not specified for matching in the client profile. In this case, the user attempts to connect using a connection profile that has been setup to support access to a certificate authority. Once the VPN has been activated, the client searches the client profile, downloaded as part of the VPN activation, to see if the group-url chosen for the connection is in the client profile.

If the client finds the group-url in the Automatic SCEP Host setting of the client profile, this triggers the automatic SCEP retrieval process in the same manner as described in the previous method.

The user may be prompted for a "CA Password". The CA Password is the challenge password or token to be offered to the certificate authority that identifies the user to the certificate authority. With this password, and the other data in the SCEP section of the profile, the client contacts the certificate authority and continues with the SCEP retrieval process. If the Prompt For Challenge PW attribute is enabled in the client profile, the client prompts the user for a CA Certificate.

Manual Certificate Retrieval

Users initiate requests for new certificates by clicking the Get Certificate or Enroll button on the client interface. The client presents these buttons to users in any of these circumstances as long as the SCEP feature is enabled in the client profile:

When the ASA requests a certificate and none of the certificates on the host that are available are accepted.

When the current certificate used by AnyConnect is set to expire within the number of days defined in the Certificate Expiration Threshold setting in the client profile.

When the current certificate used by AnyConnect has expired.

Users will only be able to initiate the certificate request in one of the following instances:

The host has direct access to the certificate authority.

The certificate authority is publicly available.

The host already has an established VPN tunnel which gives it access to the certificate authority.

The URL of the certificate authority is defined in the client profile in the CA URL field.

Figure 3-16 Get Certificate and Enroll Buttons


The user may be prompted for a "CA Password". The CA Password is the challenge password or token to be offered to the certificate authority that identifies the user to the certificate authority. With this password, and the other data in the SCEP section of the profile, the client contacts the certificate authority and continues with the SCEP retrieval process. If the Prompt For Challenge PW attribute is enabled in the client profile, the client prompts the user for a CA Certificate.

Windows Certificate Warning

When Windows clients first attempt to retrieve a certificate from the certificate authority, either manually or automatically, they may see a warning like the one in Figure 3-17. When prompted, users must click Yes. This allows them to receive the user certificate and the root certificate. Clicking No will only allow them to receive the user certificate, and they may not be able to authenticate.

Figure 3-17 Windows Certificate Security Warning

Configuring SCEP to Provision and Renew Certificates

AnyConnect retrieves certificates using SCEP if the SCEP settings are defined in a client profile, the client profile is specified in a group policy, and the group policy is specified in the users' connection profile.

See the "Creating and Editing an AnyConnect Profile" section for more information about how to configure a client profile.

To enable SCEP, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Click Add (or Edit) to create (or edit) an AnyConnect Profile and click Certificate Enrollment in the AnyConnect Client Profile tree on the left.

Step 3 In the Certificate Enrollment pane check Certificate Enrollment.

Step 4 Specify an Automatic SCEP Host to retrieve the certificate. Enter an FQDN or an IP address. For example: asa.cisco.com as the host name of the ASA and scep_eng as the name of the connection profile (tunnel group) configured for SCEP certificate retrieval.

Step 5 Specify a CA URL to identify the SCEP CA server. Enter an FQDN or IP Address. For example: http://ca01.cisco.com

Step 6 (Optional) Check Prompt For Challenge PW to prompt the user for their username and one-time password.

Step 7 (Optional) Enter a Thumbprint for the CA certificate. Use SHA1 or MD5 hashes. For example: 8475B661202E3414D4BB223A464E6AAB8CA123AB.


Note Your CA server administrator can provide the CA URL and thumbprint and should retrieve the thumbprint directly from the server and not from a "fingerprint" or "thumbprint" attribute field in a certificate it issued.


Step 8 Check Certificate Contents to be requested. For definitions of the see AnyConnect Profile Editor, Certificate Enrollment

Step 9 Specify a CA Domain. For example: cisco.com

Step 10 Check Display Get Certificate Button to permit users to manually request provisioning or renewal of authentication certificates. Typically, these users will be able to reach the certificate authority without first needing to create a VPN tunnel. Without this button, users see the Enroll button, along with a message box that AnyConnect is contacting the certificate authority to attempt certificate enrollment.

Step 11 (Optional) Enable SCEP for a specific host in the server list. Doing this overrides the SCEP host setting in Step 4. Go to the Server List pane and Edit an existing host entry or create a new one with an SCEP host.


Certificate Storage after SCEP Request

Certificates obtained through a SCEP request are stored in the user's personal certificate store. In addition, if the user has sufficient privileges on Windows desktop platforms, the certificate is also saved to the machine store. On Mac operating systems, certificates obtained through a SCEP request are only added to the "login" keychain. On Linux, we support the Firefox browser certificate store.

Configuring the ASA to Support SCEP for AnyConnect

To provide access to a private Registration Authority (RA), you should create a group-url that has an ACL restricting private side network connectivity to the desired RA. To automatically retrieve a certificate, users connect and authenticate to this group-url.

Once users have authenticated to this group-url, AnyConnect downloads the client profile assigned to the connection profile. The client profile contains a <CertificateEnrollment> section. With the information in this section, the client automatically connects to the certificate authority specified in the CA URL setting of the client profile and initiates certificate enrollment. You need to perform these configuration tasks:

Create a group-url on the ASA to point to the specially configured group.

Specify the group-url in the Automatic SCEP Host field in the user's client profile.

Attach the client profile with Certificate Enrollment enabled to the specially configured group.

Set an ACL for the specially configured group to restrict traffic to the private side RA.

To keep the SCEP-enabled group from being exposed to the user, it should not be "enabled" on the ASA. With the described implementation it is not necessary to expose the group to users for them to have access to it.

Configuring Certificate Only Authentication on the ASA

To support certificate-only authentication in an environment where multiple groups are used, you may provision more than one group-url. Each group-url would contain a different client profile with some piece of customized data that would allow for a group-specific certificate map to be created. For example, the Department_OU value of Engineering could be provisioned on the ASA to place the user in this group when the certificate from this process is presented to the ASA.

Configuring Certificate Expiration Notice

You can configure the client profile to warn users that their authentication certificate is about to expire. The Certificate Expiration Threshold setting specifies the number of days prior to the certificate's expiration date that AnyConnect warns users that their certificate is expiring.


Note The Certificate Expiration Threshold feature cannot be used with SCEP enrollment.


To set the Certificate Expiration Threshold, follow this procedure:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Click Add (or Edit) to create (or edit) an AnyConnect Profile and click Certificate Enrollment in the AnyConnect Client Profile tree on the left.

Step 3 In the Certificate Enrollment pane check Certificate Enrollment.

Step 4 Specify a Certificate Expiration Threshold—the number of days before the certificate expiration date, that AnyConnect warns users that their certificate is going to expire.

The default is 0 (no warning displayed). The range is 0-180 days.

Step 5 Do not check any Certificate Content checkboxes.

Step 6 Click OK.

Configuring a Certificate Store

You can configure how AnyConnect locates and handles certificate stores on the local host. Depending on the platform, this may involve limiting access to a particular store or allowing the use of files instead of browser based stores. The purpose is to direct AnyConnect to the desired location for Client certificate usage as well as Server certificate verification.

For Windows, you can control which certificate store the client uses for locating certificates. You may want to configure the client to restrict certificate searches to only the user store or only the machine store.

For Mac and Linux, you can create a certificate store for PEM-format certificate files.

These certificate store search configurations are stored in the AnyConnect client profile.


Note You can also configure more certificate store restrictions in the AnyConnect local policy. The AnyConnect local policy is an XML file you deploy using enterprise software deployment systems and it is separate from the AnyConnect client profile. The settings in the file restrict the use of the Firefox NSS (Linux and Mac), PEM file, Mac native (login keychain only) and Windows Internet Explorer native certificate stores. For more information, see Chapter 4 "Enabling FIPS and Additional Security in the Local Policy".


The following sections describe the procedures for configuring certificate stores and controlling their use:

Controlling the Certificate Store on Windows

Creating a PEM Certificate Store for Mac and Linux

Controlling the Certificate Store on Windows

Windows provides separate certificate stores for the local machine and for the current user. Using Profile Editor you can specify in which certificate store the AnyConnect client searches for certificates.

Users with administrative privileges on the computer have access to both certificate stores. Users without administrative privileges only have access to the user certificate store.

In the Preferences pane of Profile Editor, use the Certificate Store list box to configure in which certificate store AnyConnect searches for certificates. Use the Certificate Store Override checkbox to allow AnyConnect to search the machine certificate store for users with non-administrative privileges.

Figure 3-18 Certificate Store list box and Certificate Store Override check box

Certificate Store has three possible settings:

All—(default) Search all certificate stores.

Machine—Search the machine certificate store (the certificate identified with the computer).

User—Search the user certificate store.

Certificate Store Override has two possible settings:

checked—Allows AnyConnect to search a computer's machine certificate store even when the user does not have administrative privileges.

cleared—(default) Does not allow AnyConnect to search the machine certificate store of a user without administrative privileges.

Table 3-4 shows examples of Certificate Store and Certificate Store Override configurations.

Table 3-4 Examples of Certificate Store and Certificate Store Override Configurations

Certificate Store Setting
Certificate Store Override Setting
AnyConnect Action

All

cleared

AnyConnect searches all certificate stores. AnyConnect is not allowed to access the machine store when the user has non-administrative privileges.

This is the default setting. This setting is appropriate for the majority of cases. Do not change this setting unless you have a specific reason or scenario requirement to do so.

All

checked

AnyConnect searches all certificate stores. AnyConnect is allowed to access the machine store when the user has non-administrative privileges.

Machine

checked

AnyConnect searches the machine certificate store. AnyConnect is allowed to search the machine store of non-administrative accounts.

Machine

cleared

AnyConnect searches the machine certificate store. AnyConnect is not allowed to search the machine store when the user has non-administrative privileges.

Note This configuration might be used when only a limited group of users are allowed to authenticate using a certificate.

User

not applicable

AnyConnect searches in the user certificate store only. The certificate store override is not applicable because non-administrative accounts have access to this certificate store.


To specify in which certificate store the AnyConnect client searches for certificates, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see "Creating and Editing an AnyConnect Profile" section).

Step 2 Click the Preferences pane and choose a Certificate Store type from the drop-down list:

All—(default) Search all certificate stores.

Machine—Search the machine certificate store (the certificate identified with the computer).

User—Search the user certificate store.

Step 3 Check or clear the Certificate Store Override checkbox in order to allow AnyConnect client access to the machine certificate store if the user has a non-administrative account.

Step 4 Click OK.


Creating a PEM Certificate Store for Mac and Linux

AnyConnect supports certificate authentication using a Privacy Enhanced Mail (PEM) formatted file store. Instead of relying on browsers to verify and sign certificates, the client reads PEM-formatted certificate files from the file system on the remote computer, and verifies and signs them.


Note Anyconnect for Mac searches the login keychain for suitable certificates, but not the system keychain. If the use of a system-wide certificate is desired, use the PEM file certificate store.


Restrictions for PEM File Filenames

In order for the client to acquire the appropriate certificates under all circumstances, ensure that your files meet the following requirements:

All certificate files must end with the extension .pem.

All private key files must end with the extension .key.

A client certificate and its corresponding private key must have the same filename.
For example: client.pem and client.key


Note Instead of keeping copies of the PEM files, you can use soft links to PEM files.


Storing User Certificates

To create the PEM file certificate store, create the paths and folders listed in Table 5. Place the appropriate certificates in these folders:

Table 5 PEM File Certificate Store Folders and Types of Certificates Stored

PEM File Certificate Store Folders
Type of Certificates Stored

~/.cisco/certificates/ca1

Trusted CA and root certificates

~/.cisco/certificates/client

Client certificates

~/.cisco/certificates/client/private

Private keys

1 ~ is the home directory.



Note The requirements for machine certificates are the same as for PEM file certificates, with the exception of the root directory. For machine certificates, substitute /opt/.cisco for ~/.cisco. Otherwise, the paths, folders, and types of certificates listed in Table 5 apply.


Configuring Certificate Matching

AnyConnect supports the following certificate match types. Some or all of these may be used for client certificate matching. Certificate matchings are global criteria that can be set in an AnyConnect profile. The criteria are:

Key Usage

Extended Key Usage

Distinguished Name

Certificate Key Usage Matching

Certificate key usage offers a set of constraints on the broad types of operations that can be performed with a given certificate. The supported set includes:

DIGITAL_SIGNATURE

NON_REPUDIATION

KEY_ENCIPHERMENT

DATA_ENCIPHERMENT

KEY_AGREEMENT

KEY_CERT_SIGN

CRL_SIGN

ENCIPHER_ONLY

DECIPHER_ONLY

The profile can contain none or more matching criteria. If one or more criteria are specified, a certificate must match at least one to be considered a matching certificate.

The example in the "Certificate Matching Example" section shows how you might configure these attributes.

Extended Certificate Key Usage Matching

This matching allows an administrator to limit the certificates that can be used by the client, based on the Extended Key Usage fields. Table 3-6 lists the well known set of constraints with their corresponding object identifiers (OIDs).

Table 3-6 Extended Certificate Key Usage 

Constraint
OID

ServerAuth

1.3.6.1.5.5.7.3.1

ClientAuth

1.3.6.1.5.5.7.3.2

CodeSign

1.3.6.1.5.5.7.3.3

EmailProtect

1.3.6.1.5.5.7.3.4

IPSecEndSystem

1.3.6.1.5.5.7.3.5

IPSecTunnel

1.3.6.1.5.5.7.3.6

IPSecUser

1.3.6.1.5.5.7.3.7

TimeStamp

1.3.6.1.5.5.7.3.8

OCSPSign

1.3.6.1.5.5.7.3.9

DVCS

1.3.6.1.5.5.7.3.10


All other OIDs, such as 1.3.6.1.5.5.7.3.11, used in some examples in this document) are considered "custom." As an administrator, you can add your own OIDs if the OID you want is not in the well known set. The profile can contain none or more matching criteria. A certificate must match all specified criteria to be considered a matching certificate.

Certificate Distinguished Name Mapping

The certificate distinguished name mapping capability allows an administrator to limit the certificates that can be used by the client to those matching the specified criteria and criteria match conditions. Table 3-7 lists the supported criteria:

Table 3-7 Criteria for Certificate Distinguished Name Mapping 

Identifier
Description

CN

SubjectCommonName

SN

SubjectSurName

GN

SubjectGivenName

N

SubjectUnstructName

I

SubjectInitials

GENQ

SubjectGenQualifier

DNQ

SubjectDnQualifier

C

SubjectCountry

L

SubjectCity

SP

SubjectState

ST

SubjectState

O

SubjectCompany

OU

SubjectDept

T

SubjectTitle

EA

SubjectEmailAddr

DC

DomainComponent

ISSUER-CN

IssuerCommonName

ISSUER-SN

IssuerSurName

ISSUER-GN

IssuerGivenName

ISSUER-N

IssuerUnstructName

ISSUER-I

IssuerInitials

ISSUER-GENQ

IssuerGenQualifier

ISSUER-DNQ

IssuerDnQualifier

ISSUER-C

IssuerCountry

ISSUER-L

IssuerCity

ISSUER-SP

IssuerState

ISSUER-ST

IssuerState

ISSUER-O

IssuerCompany

ISSUER-OU

IssuerDept

ISSUER-T

IssuerTitle

ISSUER-EA

IssuerEmailAddr

ISSUER-DC

IssuerDomainComponent


The profile can contain zero or more matching criteria. A certificate must match all specified criteria to be considered a matching certificate. Distinguished Name matching offers additional match criteria, including the ability for the administrator to specify that a certificate must or must not have the specified string, as well as whether wild carding for the string should be allowed.

Certificate Matching Example


Note In this and all subsequent examples, the profile values for KeyUsage, ExtendedKeyUsage, and DistinguishedName are just examples. You should configure only the Certificate Match criteria that apply to your certificates.


To configure certificate matching in the client profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Certificate Matching pane.

Step 3 Check the Key Usage and Extended Key Usage settings to choose acceptable client certificates. A certificate must match at least one of the specified key to be selected. For descriptions of these usage settings, see the "AnyConnect Profile Editor, Certificate Matching" section

Step 4 Specify any Custom Extended Match Keys. These should be well-known MIB OID values, such as 1.3.6.1.5.5.7.3.11. You can specify zero or more custom extended match keys. A certificate must match all of the specified key(s) to be selected. The key should be in OID form. For example: 1.3.6.1.5.5.7.3.11

Step 5 Next to the Distinguished Names table, click Add to launch the Distinguished Name Entry window:

Name—A distinguished name.

Pattern—The string to use in the match. The pattern to be matched should include only the portion of the string you want to match. There is no need to include pattern match or regular expression syntax. If entered, this syntax will be considered part of the string to search for.

For example, if a sample string was abc.cisco.com and the intent is to match on cisco.com, the pattern entered should be cisco.com.

Operator—The operator to be used in performing the match.

Equal—Equivalent to ==

Not Equal—Equivalent to !=

Wildcard—Include wildcard pattern matching. The pattern can be anywhere in the string.

Match Case—Enable to perform case sensitive match with pattern.

Prompting Users to Select Authentication Certificate

You can configure the AnyConnect to present a list of valid certificates to users and let them choose the certificate with which they want to authenticate the session. This configuration is available only for Windows 7, XP, and Vista. By default, user certificate selection is disabled. To enable certificate selection, follow these steps to enable certificate selection in the AnyConnect profile:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences (Cont) pane and uncheck Disable Cert Selection. The client now prompts the user to select the authentication certificate.


Users Configuring Automatic Certificate Selection in AnyConnect Preferences

Enabling user certificate selection exposes the Automatic certificate selection checkbox in the AnyConnect Preferences dialog box. Users will be able to turn Automatic certificate selection on and off by checking or unchecking Automatic certificate selection. Figure 3-19 shows the Automatic Certificate Selection check box the user sees in the Preferences window:

Figure 3-19 Automatic Certificate Selection check box

Configuring a Server List

One of the main uses of the profile is to let the user list the connection servers. This server list consists of host name and host address pairs. The host name can be an alias used to refer to the host, an FQDN, or an IP address. The server list displays a list of server hostnames on the AnyConnect GUI in the Connect to drop-down list (Figure 3-20). The user can select a server from this list.

Figure 3-20 User GUI with Host Displayed in Connect to Drop-down List

Initially, the host you configure at the top of the list is the default server and appears in the GUI drop-down list. If the user selects an alternate server from the list, the client records the choice in the user preferences file on the remote computer, and the selected server becomes the new default server.

To configure a server list, follow this procedure:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Click Server List. The Server List pane opens.

Step 3 Click Add. The Server List Entry window opens (Figure 3-21).

Figure 3-21 Adding a Server List

Step 4 Enter a Hostname. You can enter an alias used to refer to the host, an FQDN, or an IP address. If you enter an FQDN or an IP address, you do not need to enter a Host Address.

Step 5 Enter a Host Address, if required.

Step 6 Specify a User Group (optional). The client uses the User Group in conjunction with the Host Address to form a group-based URL.

Step 7 Add backup servers (optional). If the server in the server list is unavailable, the client attempts to connect to the servers in that server's backup list before resorting to a global backup server list.

Step 8 Add load balancing backup servers (optional). If the host for this server list entry specifies a load balancing cluster of security appliances, and the always-on feature is enabled, specify the backup devices of the cluster in this list. If you do not, the always-on feature blocks access to backup devices in the load balancing cluster.

Step 9 Specify the URL of the SCEP CA server (optional). Enter an FQDN or IP Address. For example, http://ca01.cisco.com.

Step 10 Check Prompt For Challenge PW (optional) to enable the user to make certificate requests manually. When the user clicks Get Certificate, the client prompts the user for a username and one-time password.

Step 11 Enter the certificate thumbprint of the CA. Use SHA1 or MD5 hashes. Your CA server administrator can provide the CA URL and thumbprint and should retrieve the thumbprint directly from the server and not from a "fingerprint" or "thumbprint" attribute field in a certificate it issued.

Step 12 Click OK. The new server list entry you configured appears in the server list table (Figure 3-22).

Figure 3-22 A New Server List Entry


Configuring a Backup Server List

You can configure a list of backup servers the client uses in case the user-selected server fails. These servers are specified in the Backup Servers pane of the AnyConnect profile. In some cases, the list might specify host specific overrides. Follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Backup Servers pane and enter host addresses of the backup servers.


Configuring a Windows Mobile Policy

To let users connect using Windows Mobile devices, configure the Mobile Policy settings in the AnyConnect profile. These settings apply only to Windows Mobile devices. Include them only if your end users use Windows Mobile. See the latest version of Release Notes for Cisco AnyConnect Secure Mobility Client for detailed, current information about Windows Mobile device support.

Restrictions and Limitations

Before configuring the Mobile Policy, take note of these restrictions and limitations:

Windows Mobile Policy enforcement is supported only on Windows Mobile 5, Windows Mobile 5+AKU2, and Windows Mobile 6. It is not supported on Windows Mobile 6.1.

Attempts to connect to a secure gateway that is configured to require a security policy that cannot be enforced will fail. In environments containing Windows Mobile 6.1 devices, you should either create a separate group for Windows Mobile 6.1 users that does not contain Mobile Policy enforcement or disable Mobile Policy enforcement on the secure gateway.

A Windows Mobile device that uses the Microsoft Local Authentication Plug-ins (LAPs) must be configured with a password or PIN before establishing a VPN connection.

A Windows Mobile 5 device with the Messaging and Security Feature Pack, delivered as part of Adaptation Kit Upgrade 2 (AKU2), must be synchronized with an Exchange server before the Mobile Policy can be enforced.

You should remind users to check with their service provider regarding their data plans before using Cisco AnyConnect Secure Mobility client for Windows Mobile. Users might incur additional charges if they exceed the data usage limits of their plans.

The Mobile Policy merely validates the policy that is already present; it does not change it.

Configuring the Mobile Policy in the Client Profile

To enable the Mobile Device Lock in the client profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Mobile Policy pane and check Device Lock Required.

Step 3 In the Maximum Timeout Minutes field, enter the maximum number of minutes before the device lock takes effect.

Step 4 In the Minimum Password Length field, enter the minimum number of characters for the device lock password or PIN.

Step 5 Specify a Password Complexity for the required device lock password:

alpha—Requires an alphanumeric password.

pin—Requires a numeric PIN.

strong—Requires a strong alphanumeric password which must contain at least 7 characters, including a minimum of 3 from the set of uppercase, lowercase, numerals, and punctuation characters.


Configuring Auto Connect On Start

By default, AnyConnect, when started, automatically establishes a VPN connection with the secure gateway specified by the client profile. Upon connecting, the client replaces the local profile with the one provided by the secure gateway if the two do not match, and applies the settings of that profile.

If you disable Auto Connect on Start, and the user starts the client, the GUI displays the settings configured by default as user-controllable. The user must select the name of the secure gateway in the Connect to drop-down list in the GUI and click Connect. Upon connecting, the client applies the settings of the client profile provided by the security appliance.

By default, Auto Connect on Start is enabled. To disable it, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Choose Preferences in the navigation pane.

Step 3 Uncheck Auto Connect On Start.


Configuring Auto Reconnect

Unlike the IPsec VPN client, AnyConnect can recover from VPN session disruptions and can reestablish a session, regardless of the media used for the initial connection. For example, it can reestablish a session on wired, wireless, or 3G.

You can configure the Auto Reconnect feature to attempt to reestablish a VPN connection if you lose connectivity (the default behavior). You can also define the reconnect behavior during and after system suspend or system resume. A system suspend is a low-power standby, Windows "hibernation," or Mac OS or Linux "sleep." A system resume is a recovery following a system suspend.


Note Before AnyConnect 2.3, the default behavior in response to a system suspend was to retain the resources assigned to the VPN session and reestablish the VPN connection after the system resume. To retain that behavior, enable the Auto Reconnect Behavior Reconnect After Resume.


To configure the Auto Reconnect settings in the client profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Choose Preferences in the navigation pane.

Step 3 Check Auto Reconnect.


Note If you uncheck Auto Reconnect, the client does not attempt to reconnect, regardless of the cause of the disconnection.


Step 4 Choose the Auto Reconnect Behavior (not supported for Linux):

Disconnect On Suspend— AnyConnect releases the resources assigned to the VPN session upon a system suspend and does not attempt to reconnect after the system resume.

Reconnect After Resume—The client retains resources assigned to the VPN session during a system suspend and attempts to reconnect after the system resume.


Local Proxy Connections

By default, AnyConnect Release 2.5.1025 and later let users establish a VPN session through a transparent or non-transparent proxy on the local PC.

Some examples of elements that provide a transparent proxy service include:

Acceleration software provided by some wireless data cards

Network component on some antivirus software, such as Kaspersky.

Local Proxy Connections Requirements

AnyConnect supports this feature on the following Microsoft OSs:

Windows 7 (32-bit and 64-bit)

Windows Vista (32-bit and 64-bit)—SP2 or Vista Service Pack 1 with KB952876.

Windows XP SP2 and SP3.

Support for this feature requires either an AnyConnect Essentials or an AnyConnect Premium SSL VPN Edition license.

Configuring Local Proxy Connections

By default, AnyConnect supports local proxy services to establish a VPN session. To disable AnyConnect support for local proxy services, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Choose Preferences (cont) in the navigation pane.

Step 3 Uncheck Allow Local Proxy Connections near the top of the panel.


Optimal Gateway Selection

Using the Optimal Gateway Selection (OGS) feature, you can minimize latency for Internet traffic without user intervention. With OGS, AnyConnect identifies and selects which secure gateway is best for connection or reconnection. OGS begins upon first connection or upon a reconnection at least four hours after the previous disconnection. Users who travel to distant locations connect to a secure gateway nearer to the new location for better performance. Your home and office will get similar results from the same gateway, so no switch of secure gateways will typically occur in this instance. Connection to another secure gateway occurs rarely and only occurs if the performance improvement is at least 20%.


Note You can configure these threshold values using the Profile Editor. By optimizing these values for your particular network, you can find the correct balance between selecting the optimal gateway and reducing the number of times to force the re-entering of credentials.


OGS is not a security feature, and it performs no load balancing between secure gateway clusters or within clusters. You can optionally give the end user the ability to enable or disable the feature.

The minimum round trip time (RTT) solution selects the secure gateway with the fastest RTT between the client and all other gateways. The client always reconnects to the last secure gateway if the time elapsed has been less than four hours. Factors such as load and temporary fluctuations of the network connection may affect the selection process, as well as the latency for Internet traffic.

It contacts only the primary servers to determine the optimal one. Once determined, the connection algorithm is as follows:

1. Attempt to connect to the optimal server.

2. If that fails, try the optimal server's backup server list.

3. If that fails, try each remaining server in the OGS selection list, ordered by its selection results.

Refer to the "AnyConnect Profile Editor, Backup Servers" section for additional information on backup servers.

Optimal Gateway Selection Requirements

OGS supports VPN endpoints running:

Windows 7, Vista, and XP

Mac OS X 10.5 and 10.6

Configuring Optimal Gateway Selection

You control the activation and deactivation of OGS and specify whether end users may control the feature themselves in the AnyConnect profile. Follow these steps to configure OGS using the Profile Editor:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Check the Enable Optimal Gateway Selection check box to activate OGS.

Step 3 Check the User Controllable check box to make OGS configurable for the remote user accessing the client GUI.


Note When OGS is enabled, we recommend that you also make the feature user controllable. A user may need the ability to choose a different gateway from the profile if the AnyConnect client is unable to establish a connection to the OGS-selected gateway.


Step 4 At the Suspension Time Threshold parameter, enter the minimum time (in hours) the VPN must have been suspended before invoking a new gateway-selection calculation. The default is 4 hours.

Step 5 At the Performance Improvement Threshold parameter, enter the percentage of performance improvement that is required before triggering the client to re-connect to another secure gateway following a system resume. The default is 20%.


Note If too many transitions are occurring and users have to re-enter credentials quite frequently, you should increase either or both of these thresholds. Adjust these value for your particular network to find the correct balance between selecting the optimal gateway and reducing the number of times to force the re-entering of credentials.



If OGS is enabled when the client GUI starts, Automatic Selection displays in the Connect To drop-down menu on the Cisco AnyConnect Connection tab. You cannot change this selection. OGS automatically chooses the optimal secure gateway and displays the selected gateway on the status bar. You may need to click Select to start the connection process.

If you made the feature user controllable, the user can manually override the selected secure gateway with the following steps:


Step 1 If currently connected, click Disconnect.

Step 2 Open the Preferences tab and uncheck Enable Optimal Gateway Selection.

Step 3 Choose the desired secure gateway.


Note If AAA is being used, end users may have to re-enter their credentials when transitioning to a different secure gateway. The use of certificates eliminates this.



Writing and Deploying Scripts

AnyConnect lets you download and run scripts when the following events occur:

Upon the establishment of a new client VPN session with the security appliance. We refer to a script triggered by this event as an OnConnect script because it requires this filename prefix.

Upon the tear-down of an client VPN session with the security appliance. We refer to a script triggered by this event as an OnDisconnect script because it requires this filename prefix.

Thus, the establishment of a new client VPN session initiated by Trusted Network Detection triggers the OnConnect script (assuming the requirements are satisfied to run the script). The reconnection of a persistent VPN session after a network disruption does not trigger the OnConnect script.

Some examples that show how you might want to use this feature include:

Refreshing the group policy upon VPN connection.

Mapping a network drive upon VPN connection, and un-mapping it after disconnection.

Logging on to a service upon VPN connection, and logging off after disconnection.

These instructions assume you know how to write scripts and run them from the command line of the targeted endpoint to test them.


Note The AnyConnect software download site provides some example scripts; if you examine them, please remember that they are only examples; they may not satisfy the local computer requirements for running them, and are unlikely to be usable without customizing them for your network and user needs. Cisco does not support example scripts or customer-written scripts.


This section covers the following topics:

Scripting Requirements and Limitations

Writing, Testing, and Deploying Scripts

Configuring the AnyConnect Profile for Scripting

Troubleshooting Scripts

Scripting Requirements and Limitations

AnyConnect runs up to one OnConnect and up to one OnDisconnect script; however, these scripts may launch other scripts.

The client does not require the script to be written in a specific language but does require an application that can run the script to be installed on the client computer. Thus, for the client to launch the script, the script must be capable of running from the command line.

AnyConnect supports script launching on all Microsoft Windows, Mac OS X, and Linux platforms supported by AnyConnect.

On Microsoft Windows, AnyConnect can only launch scripts after the user logs onto Windows and establishes a VPN session. Thus, the restrictions imposed by the user's security environment apply to these scripts; scripts can only execute functions that the user has rights to invoke. AnyConnect hides the cmd window during the execution of a script on Windows, so executing a script to display a message in a .bat file for testing purposes does not work.

AnyConnect supports script launching during WebLaunch and standalone launches.

By default, the client does not launch scripts. Use the AnyConnect profile EnableScripting parameter to enable scripts. The client does not require the presence of scripts if you do so.

Client GUI termination does not necessarily terminate the VPN session; the OnDisconnect script runs after session termination.

Other requirements apply, as indicated in the next section.

Writing, Testing, and Deploying Scripts

Deploy AnyConnect scripts as follows:


Step 1 Write and test the script using the operating system type on which it will run when AnyConnect launches.


Note Scripts written on Microsoft Windows computers have different line endings than scripts written on Mac OS and Linux. Therefore, you should write and test the script on the targeted operating system. If a script cannot run properly from the command line on the native operating system, AnyConnect cannot run it properly.


Step 2 Do one of the following to deploy the scripts:

Use ASDM to import the script as a binary file to the ASA. Go to Network (Client) Access > AnyConnect Customization/Localization > Script.

If you use ASDM version 6.3 or later, the ASA adds the prefix scripts_ and the prefix OnConnect or OnDisconnect to your filename to identify the file as a script. When the client connects, the security appliance downloads the script to the proper target directory on the remote computer, removing the scripts_ prefix and leaving the remaining OnConnect or OnDisconnect prefix. For example, if you import the script myscript.bat, the script appears on the security appliance as scripts_OnConnect_myscript.bat. On the remote computer, the script appears as OnConnect_myscript.bat.

If you use an ASDM version earlier than 6.3, you must import the scripts with the following prefixes:

scripts_OnConnect

scripts_OnDisconnect

To ensure the scripts run reliably, configure all ASAs to deploy the same scripts. If you want to modify or replace a script, use the same name as the previous version and assign the replacement script to all of the ASAs that the users might connect to. When the user connects, the new script overwrites the one with the same name.

Or use an enterprise software deployment system to deploy scripts manually to the VPN endpoints on which you want to run the scripts.

If you use this method, use the script filename prefixes below:

OnConnect

OnDisconnect

Install the scripts in the directory shown in Table 3-8.

Table 3-8 Required Script Locations

OS
Directory

Microsoft Windows 7 and Vista

%ALLUSERSPROFILE%\Cisco\Cisco AnyConnect VPN Client\Script

Microsoft Windows XP

%ALLUSERSPROFILE%\Application Data\Cisco\Cisco AnyConnect VPN Client\
Script

Linux

(On Linux, assign execute permissions to the file for User, Group and Other.)

/opt/cisco/vpn/script

Mac OS X

/opt/cisco/vpn/script



Configuring the AnyConnect Profile for Scripting

To enable scripting in the client profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Choose Preferences (Cont) in the navigation pane.

Step 3 Check Enable Scripting. The client launches scripts on connecting or disconnecting the VPN connection.

Step 4 Check User Controllable to let users enable or disable the running of On Connect and OnDisconnect scripts.

Step 5 Check Terminate Script On Next Event to enable the client to terminate a running script process if a transition to another scriptable event occurs. For example, the client terminates a running On Connect script if the VPN session ends, and terminates a running OnDisconnect script if AnyConnect starts a new VPN session. On Microsoft Windows, the client also terminates any scripts that the On Connect or OnDisconnect script launched, and all their script descendents. On Mac OS and Linux, the client terminates only the On Connect or OnDisconnect script; it does not terminate child scripts.

Step 6 Check Enable Post SBL On Connect Script (enabled by default) to let the client launch the On Connect script (if present) if SBL establishes the VPN session.


Note Be sure to add the client profile to the ASA group policy to download it to the VPN endpoint.


Troubleshooting Scripts

If a script fails to run, try resolving the problem as follows:


Step 1 Make sure the script has an OnConnect or OnDisconnect prefix name. Table 3-8 shows the required scripts directory for each operating system.

Step 2 Try running the script from the command line. The client cannot run the script if it cannot run from the command line. If the script fails to run on the command line, make sure the application that runs the script is installed, and try rewriting the script on that operating system.

Step 3 Make sure the scripts directory on the VPN endpoint contains only one OnConnect and only one OnDisconnect script. If one ASA downloads one OnConnect script and during a subsequent connection a second ASA downloads an OnConnect script with a different filename suffix, the client might run the unwanted script. If the script path contains more than one OnConnect or OnDisconnect script and you are using the ASA to deploy scripts, remove the contents of the scripts directory and re-establish a VPN session. If the script path contains more than one OnConnect or OnDisconnect script and you are using the manual deployment method, remove the unwanted scripts and re-establish a VPN session.

Step 4 If the operating system is Linux, make sure the script file permissions are set to execute.

Step 5 Make sure the client profile has scripting enabled.


Authentication Timeout Control

By default, AnyConnect waits up to 12 seconds for an authentication from the secure gateway before terminating the connection attempt. AnyConnect then displays a message indicating the authentication timed out. AnyConnect Release 2.5.1025 and later lets you change the value of this timer.

Authentication Timeout Control Requirements

AnyConnect supports this feature on all OSs supported by AnyConnect.

Support for this feature requires either an AnyConnect Essentials or an AnyConnect Premium SSL VPN Edition license.

Configuring Authentication Timeout

To change the number of seconds AnyConnect waits for an authentication from the secure gateway before terminating the connection attempt, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Choose Preferences (cont) in the navigation pane.

Step 3 Enter a number of seconds in the range 10-120 into the Authentication Timeout Values text box.


Proxy Support

The following sections describe how to use the proxy support enhancement features.

Configuring the Client to Ignore Browser Proxy Settings

You can specify a policy in the AnyConnect profile to bypass the Microsoft Internet Explorer proxy configuration settings on the user's PC. It is useful when the proxy configuration prevents the user from establishing a tunnel from outside the corporate network.


Note Connecting through a proxy is not supported with the always-on feature enabled. Therefore, if you enable always-on, configuring the client to ignore proxy settings is unnecessary.


Follow these steps to enable AnyConnect to ignore Internet Explorer proxy settings:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences (Cont) pane.

Step 3 In the Proxy Settings drop-down list, choose Ignore Proxy.



Note AnyConnect currently supports only the Ignore Proxy setting; it does not support Native and Override.


Private Proxy

You can configure a group policy to download private proxy settings configured in the group policy to the browser after the tunnel is established. The settings return to their original state after the VPN session ends.

Private Proxy Requirements

An AnyConnect Essentials license is the minimum ASA license activation requirement for this feature.

AnyConnect supports this feature on computers running:

Internet Explorer on Windows

Safari on Mac OS

Configuring a Group Policy to Download a Private Proxy

To configure the proxy settings, establish an ASDM session with the security appliance and choose Configuration > Remote Access VPN > Network (Client) Access > Group Policies > Add or Edit > Advanced > Browser Proxy. ASDM versions earlier than 6.3(1) show this option as IE Browser Proxy; however, AnyConnect no longer restricts the configuration of the private proxy to Internet Explorer, regardless of the ASDM version you use.

The Do not use proxy parameter, if enabled, removes the proxy settings from the browser for the duration of the session.

Internet Explorer Connections Tab Lockdown

Under certain conditions, AnyConnect hides the Internet Explorer Tools > Internet Options > Connections tab. When exposed, this tab lets the user set proxy information. Hiding this tab prevents the user from intentionally or unintentionally circumventing the tunnel. The tab lockdown is reversed on disconnect, and it is superseded by any administrator-defined policies regarding that tab. The conditions under which this lockdown occurs are either of the following:

The ASA configuration specifies a private-side proxy.

AnyConnect uses a public-side proxy defined by Internet Explorer to establish the tunnel. In this case, the split tunneling policy on the ASA must be set to Tunnel All Networks.

Proxy Auto-Configuration File Generation for Clientless Support

Some versions of the ASA require extra AnyConnect configuration to continue to allow clientless portal access through a proxy server after establishing an AnyConnect session. AnyConnect uses a proxy auto-configuration (PAC) file to modify the client-side proxy settings to let this occur. AnyConnect generates this file only if the ASA does not specify private-side proxy settings.

Allowing a Windows RDP Session to Launch a VPN Session

You can allow users to log on, to a computer running the Cisco AnyConnect Secure Mobility client, using Windows Remote Desktop (RDP) and create a VPN connection to a secure gateway from the RDP session. A split tunneling VPN configuration is required for this to function correctly.

By default, a locally logged-in user can establish a VPN connection only when no other local user is logged in. The VPN connection is terminated when the user logs out, and additional local logons during a VPN connection result in the connection being torn down. Remote logons and logoffs during a VPN connection are unrestricted.


Note With this feature, AnyConnect disconnects the VPN connection when the user who established the VPN connection logs off. If the connection is established by a remote user, and that remote user logs off, the VPN connection is terminated.


You can use the following settings for Windows Logon Enforcement:

Single Local Logon—Allows only one local user to be logged on during the entire VPN connection. With this setting, a local user can establish a VPN connection while one or more remote users are logged on to the client PC, but if the VPN connection is configured for all-or-nothing tunneling, then the remote logon is disconnected because of the resulting modifications of the client PC routing table for the VPN connection. If the VPN connection is configured for split-tunneling, the remote logon might or might not be disconnected, depending on the routing configuration for the VPN connection. The SingleLocalLogin setting has no effect on remote user logons from the enterprise network over the VPN connection.

SingleLogon—Allows only one user to be logged on during the entire VPN connection. If more than one user is logged on, either locally or remotely, when the VPN connection is being established, the connection is not allowed. If a second user logs on, either locally or remotely, during the VPN connection, the VPN connection is terminated.


Note When you select the SingleLogon setting, no additional logons are allowed during the VPN connection, so a remote logon over the VPN connection is not possible.


The Windows VPN Establishment settings in the client profile specify the behavior of the client when a user who is remotely logged on a computer running AnyConnect establishes a VPN connection. The possible values are:

Local Users Only—Prevents a remotely logged-on user from establishing a VPN connection. AnyConnect client versions 2.3 and earlier operated in this manner.

Allow Remote Users—Allows remote users to establish a VPN connection. However, if the configured VPN connection routing causes the remote user to become disconnected, the VPN connection terminates to allow the remote user to regain access to the client computer. Remote users must wait 90 seconds after VPN establishment if they want to disconnect their RDP session without causing the VPN session to terminate.


Note On Vista, the Windows VPN Establishment profile setting is not currently enforced during Start Before Logon (SBL). AnyConnect does not determine whether the VPN connection is being established by a remote user before logon; therefore, a remote user can establish a VPN connection via SBL even when the Windows VPN Establishment setting is Local Users Only.


To enable an AnyConnect session from a Windows RDP Session, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences pane.

Step 3 Choose a Windows Logon Enforcement method:

Single Local Logon—Allows only one local user to be logged on during the entire VPN connection.

Single Logon—Allows only one user to be logged on during the entire VPN connection.

Step 4 Choose a Windows VPN Establishment method that specifies the behavior of the client when a user who is remotely logged on establishes a VPN connection:

Local Users Only—Prevents a remotely logged-on user from establishing a VPN connection.

Allow Remote Users—Allows remote users to establish a VPN connection.


Note On Vista, the Windows VPN Establishment setting is not currently enforced during Start Before Logon (SBL).



AnyConnect over L2TP or PPTP

ISPs in some countries require support of the L2TP and PPTP tunneling protocols.

To send traffic destined for the secure gateway over a PPP connection, AnyConnect uses the point-to-point adapter generated by the external tunnel. When establishing a VPN tunnel over a PPP connection, the client must exclude traffic destined for the ASA from the tunneled traffic intended for destinations beyond the ASA. To specify whether and how to determine the exclusion route, use the PPP Exclusion setting in the AnyConnect profile. The exclusion route appears as a non-secured route in the Route Details display of the AnyConnect GUI.

The following sections describe how to set up PPP exclusion:

Configuring AnyConnect over L2TP or PPTP

Instructing Users to Override PPP Exclusion

Configuring AnyConnect over L2TP or PPTP

By default, PPP Exclusion is disabled. To enable PPP exclusion in the profile, follow these steps:


Step 1 Launch the Profile Editor from ASDM (see the "Creating and Editing an AnyConnect Profile" section).

Step 2 Go to the Preferences (Cont) pane.

Step 3 Choose a PPP Exclusion Method. Checking User Controllable for this field lets users view and change these settings:

Automatic—Enables PPP exclusion. AnyConnect automatically uses the IP address of the PPP server. Instruct users to change the value only if automatic detection fails to get the IP address.

Override—Also enables PPP exclusion. If automatic detection fails to get the IP address of the PPP server, and the PPPExclusion UserControllable value is true, instruct users to follow the instructions in the next section to use this setting.

Disabled—PPP exclusion is not applied.

Step 4 In the PPP Exclusion Server IP field, enter the IP address of the security gateway used for PPP exclusion. Checking User Controllable for this field lets users view and change this IP address.


Instructing Users to Override PPP Exclusion

If automatic detection does not work, and you configured PPP Exclusion as user controllable, the user can override the settings by editing the AnyConnect preferences file on the local computer. The following procedure describes how to do this:


Step 1 Use an editor such as Notepad to open the preferences XML file.

This file is on one of the following paths on the user's computer:

Windows: %LOCAL_APPDATA%\Cisco\Cisco AnyConnect VPN Client\preferences.xml. For example,

Windows Vista—C:\Users\username\AppData\Local\Cisco\Cisco AnyConnect VPN Client\preferences.xml

Windows XP—C:\Documents and Settings\username\Local Settings\Application Data\Cisco\Cisco AnyConnect VPN Client\preferences.xml

Mac OS X: /Users/username/.anyconnect

Linux: /home/username/.anyconnect

Step 2 Insert the PPPExclusion details under <ControllablePreferences>, while specifying the Override value and the IP address of the PPP server. The address must be a well-formed IPv4 address. For example:

<AnyConnectPreferences>
<ControllablePreferences>
<PPPExclusion>Override
<PPPExclusionServerIP>192.168.22.44</PPPExclusionServerIP></PPPExclusion>
</ControllablePreferences>
</AnyConnectPreferences>
 
   

Step 3 Save the file.

Step 4 Exit and restart AnyConnect.


AnyConnect Profile Editor Parameter Descriptions

The following section describes all the settings that appear on the various panes of the profile editor.

Anyconnect Profile Editor, Preferences

Use Start Before Logon (Windows Only)—Forces the user to connect to the enterprise infrastructure over a VPN connection before logging on to Windows by starting AnyConnect before the Windows login dialog box appears. After authenticating, the login dialog box appears and the user logs in as usual. SBL also lets you control the use of login scripts, password caching, mapping network drives to local drives, and more.

Show Pre-connect Message—Displays a message to the user before the user makes the first connection attempt. For example, you could remind the user to insert their smartcard into the reader.

Certificate Store—Controls which certificate store AnyConnect uses for locating certificates. Windows provides separate certificate stores for the local machine and for the current user. Users with administrative privileges on the computer have access to both stores. The default setting (All) is appropriate for the majority of cases. Do not change this setting unless you have a specific reason or scenario requirement to do so.

All—(default) All certificates are acceptable.

Machine—Use the machine certificate (the certificate identified with the computer).

User—Use a user-generated certificate.

Certificate Store Override—Allows you to direct AnyConnect to search for certificates in the Windows machine certificate store. This is useful in cases where certificates are located in this store and users do not have administrator privileges on their machine.

Auto Connect On Start—AnyConnect, when started, automatically establishes a VPN connection with the secure gateway specified by the AnyConnect profile, or to the last gateway to which the client connected.

Minimize On Connect—After establishing a VPN connection, the AnyConnect GUI minimizes.

Local LAN Access—Allows the user complete access to the local LAN connected to the remote computer during the VPN session to the ASA.


Note Enabling Local LAN Access can potentially create a security weakness from the public network through the user computer into the corporate network. Alternatively, you can configure the security appliance (version 8.3(1) or later) to deploy an SSL client firewall that uses the new AnyConnect Client Local Print firewall rule (enable Apply last local VPN resource rules in the always-on VPN section of the client profile).


Auto Reconnect—AnyConnect attempts to reestablish a VPN connection if you lose connectivity (enabled by default). If you disable Auto Reconnect, it does not attempt to reconnect, regardless of the cause of the disconnection.

Auto Reconnect Behavior:

DisconnectOnSuspend (default)—AnyConnect releases the resources assigned to the VPN session upon a system suspend and does not attempt to reconnect after the system resumes.

ReconnectAfterResume—AnyConnect attempts to reestablish a VPN connection if you lose connectivity.


Note Before AnyConnect 2.3, the default behavior in response to a system suspend was to retain the resources assigned to the VPN session and reestablish the VPN connection after the system resume. To retain that behavior, choose ReconnectAfterResume for the Auto Reconnect Behavior.


Auto Update—Disables the automatic update of the client.

RSA Secure ID Integration (Windows only)—Controls how the user interacts with RSA. By default, AnyConnect determines the correct method of RSA interaction (automatic setting).

Automatic—Software or Hardware tokens accepted.

Software Token—Only software tokens accepted.

Hardware Token—Only hardware tokens accepted.

Windows Logon Enforcement—Allows a VPN session to be established from a Remote Desktop Protocol (RDP) session (A split tunneling VPN configuration is required). AnyConnect disconnects the VPN connection when the user who established the VPN connection logs off. If the connection is established by a remote user, and that remote user logs off, the VPN connection terminates.

Single Local Logon—Allows only one local user to be logged on during the entire VPN connection. A local user can establish a VPN connection while one or more remote users are logged on to the client PC.

Single Logon—Allows only one user to be logged on during the entire VPN connection. If more than one user is logged on, either locally or remotely, when the VPN connection is being established, the connection is not allowed. If a second user logs on, either locally or remotely, during the VPN connection, the VPN connection terminates. No additional logons are allowed during the VPN connection, so a remote logon over the VPN connection is not possible.

Windows VPN Establishment—Determines the behavior of AnyConnect when a user who is remotely logged on to the client PC establishes a VPN connection. The possible values are:

Local Users Only—Prevents a remotely logged-on user from establishing a VPN connection. This is the same functionality as in prior versions of AnyConnect.

Allow Remote Users—Allows remote users to establish a VPN connection. However, if the configured VPN connection routing causes the remote user to become disconnected, the VPN connection terminates to allow the remote user to regain access to the client PC. Remote users must wait 90 seconds after VPN establishment if they want to disconnect their remote login session without causing the VPN connection to be terminated.


Note On Vista, the Windows VPN Establishment setting is not currently enforced during Start Before Logon (SBL). AnyConnect does not determine whether the VPN connection is being established by a remote user before logon; therefore, a remote user can establish a VPN connection via SBL even when the Windows VPN Establishment setting is Local Users Only.


For more detailed configuration information about the client features that appear on this pane, see these sections:

Start Before LogonConfiguring Start Before Logon

Certificate Store and Certificate OverrideConfiguring a Certificate Store

Auto ReconnectConfiguring Auto Reconnect

Windows Logon EnforcementAllowing a Windows RDP Session to Launch a VPN Session

Anyconnect Profile Editor, Preferences Cont

Disable Cert Selection—Disables automatic certificate selection by the client and prompts the user to select the authentication certificate.

Allow Local Proxy Connections (present in AnyConnect Release 2.5.1025 and later)—By default, AnyConnect lets Windows users establish a VPN session through a transparent or non-transparent proxy service on the local PC. Some examples of elements that provide a transparent proxy service include:

Acceleration software provided by some wireless data cards

Network component on some antivirus software

Uncheck this parameter if you want to disable support for local proxy connections.

Proxy Settings—Specifies a policy in the AnyConnect profile to bypass the Microsoft Internet Explorer or Mac Safari proxy settings on the remote computer. This is useful when the proxy configuration prevents the user from establishing a tunnel from outside the corporate network. Use in conjunction with the proxy settings on the ASA.

Native (not supported)

Ignore Proxy—AnyConnect bypasses Microsoft Internet Explorer or Mac Safari proxy settings on the user computer.

Override (not supported)

Enable Optimal Gateway Selection—AnyConnect identifies and selects which secure gateway is best for connection or reconnection based on the round trip time (RTT), minimizing latency for Internet traffic without user intervention. Automatic Selection displays in the Connect To drop-down list on the Connection tab of the client GUI.

Suspension Time Threshold (hours)—The elapsed time from disconnecting to the current secure gateway to reconnecting to another secure gateway. If users experience too many transitions between gateways, increase this time.

Performance Improvement Threshold (%)—The performance improvement that triggers the client to connect to another secure gateway. The default is 20%.


Note If AAA is used, users may have to re-enter their credentials when transitioning to a different secure gateway. Using certificates eliminates this problem.


Automatic VPN Policy (Windows and Mac only)—Automatically manages when a VPN connection should be started or stopped according to the Trusted Network Policy and Untrusted Network Policy. If disabled, VPN connections can only be started and stopped manually.


Note Automatic VPN Policy does not prevent users from manually controlling a VPN connection.


Trusted Network Policy—AnyConnect automatically disconnects a VPN connection when the user is inside the corporate network (the trusted network).

Disconnect—Disconnects the VPN connection upon the detection of the trusted network.

Connect—Initiates a VPN connection upon the detection of the trusted network.

Pause (present in AnyConnect Release 2.5.1025 and later) —AnyConnect suspends the VPN session instead of disconnecting it if a user enters a network configured as trusted after establishing a VPN session outside the trusted network. When the user goes outside the trusted network again, AnyConnect resumes the session. This feature is for the user's convenience because it eliminates the need to establish a new VPN session after leaving a trusted network.

Do Nothing—Takes no action in the trusted network. Setting both the Trusted Network Policy and Untrusted Network Policy to Do Nothing disables Trusted Network Detection.

Untrusted Network Policy—AnyConnect starts the VPN connection when the user is outside the corporate network (the untrusted network). This feature encourages greater security awareness by initiating a VPN connection when the user is outside the trusted network.

Connect—Initiates the VPN connection upon the detection of an untrusted network.

Do Nothing—Initiates the VPN connection upon the detection of an untrusted network. This option disables always-on VPN. Setting both the Trusted Network Policy and Untrusted Network Policy to Do Nothing disables Trusted Network Detection.

Trusted DNS Domains—DNS suffixes (a string separated by commas) that a network interface may have when the client is in the trusted network. For example: *.cisco.com. Wildcards (*) are supported for DNS suffixes.

Trusted DNS Servers—DNS server addresses (a string separated by commas) that a network interface may have when the client is in the trusted network. For example: 161.44.124.*,64.102.6.247. Wildcards (*) are supported for DNS server addresses.

Always On—Determines whether AnyConnect automatically connects to the VPN when the user logs in to a computer running Windows 7, Vista, or XP; or Mac OS X 10.5 or 10.6. Use this feature to enforce corporate policies to protect the computer from security threats by preventing access to Internet resources when it is not in a trusted network. You can set the always-on VPN parameter in group policies and dynamic access policies to override this setting. Doing so lets you specify exceptions according to the matching criteria used to assign the policy. If an AnyConnect policy enables always-on VPN and a dynamic access policy or group policy disables it, the client retains the disable setting for the current and future VPN sessions as long as its criteria match the dynamic access policy or group policy on the establishment of each new session.

Allow VPN Disconnect—Determines whether AnyConnect displays a Disconnect button for always-on VPN sessions. Users of always-on VPN sessions may want to click Disconnect so they can choose an alternative secure gateway for reasons such as the following:

Performance issues with the current VPN session.

Reconnection issues following the interruption of a VPN session.


Caution The Disconnect locks all interfaces to prevent data from leaking out and to protect the computer from internet access except for establishing a VPN session. For the reasons noted above, disabling the Disconnect button can at times hinder or prevent VPN access.

For more information about this feature, see Disconnect Button for Always-on VPN.

Connect Failure Policy—Determines whether the computer can access the Internet if AnyConnect cannot establish a VPN session (for example, when an ASA is unreachable). This parameter applies only if always-on VPN is enabled.


Caution A connect failure closed policy prevents network access if AnyConnect fails to establish a VPN session. AnyConnect detects most captive portals; however, if it cannot detect a captive portal, the connect failure closed policy prevents all network connectivity. Be sure to read the "Connect Failure Policy for Always-on VPN" section" before configuring a connect failure policy.

Closed—Restricts network access when the VPN is unreachable. The purpose of this setting is to help protect corporate assets from network threats when resources in the private network responsible for protecting the endpoint are unavailable.

Open—Permits network access when the VPN is unreachable.

Allow Captive Portal Remediation—Lets AnyConnect lift the network access restrictions imposed by the closed connect failure policy when the client detects a captive portal (hotspot). Hotels and airports typically use captive portals to require the user to open a browser and satisfy conditions required to permit Internet access. By default, this parameter is unchecked to provide the greatest security; however, you must enable it if you want the client to connect to the VPN if a captive portal is preventing it from doing so.

Remediation Timeout—Number of minutes AnyConnect lifts the network access restrictions. This parameter applies if the Allow Captive Portal Remediation parameter is checked and the client detects a captive portal. Specify enough time to meet typical captive portal requirements (for example, 5 minutes).

Apply Last VPN Local Resource Rules—If the VPN is unreachable, the client applies the last client firewall it received from the ASA, which may include ACLs allowing access to resources on the local LAN.

PPP Exclusion —For a VPN tunnel over a PPP connection, specifies whether and how to determine the exclusion route so the client can exclude traffic destined for the secure gateway from the tunneled traffic intended for destinations beyond the secure gateway. The exclusion route appears as a non-secured route in the Route Details display of the AnyConnect GUI. If you make this feature user controllable, users can read and change the PPP exclusion settings.

Automatic—Enables PPP exclusion. AnyConnect automatically uses the IP address of the PPP server. Instruct users to change the value only if automatic detection fails to get the IP address.

Disabled—PPP exclusion is not applied.

Override—Also enables PPP exclusion. If automatic detection fails to get the IP address of the PPP server, and you configured PPP exclusion as user controllable, instruct users to follow the instructions in the "Instructing Users to Override PPP Exclusion" section.

PPP Exclusion Server IP—The IP address of the security gateway used for PPP exclusion.

Enable Scripting—Launches OnConnect and OnDisconnect scripts if present on the security appliance flash memory.

Terminate Script On Next Event—Terminates a running script process if a transition to another scriptable event occurs. For example, AnyConnect terminates a running OnConnect script if the VPN session ends, and terminates a running OnDisconnect script if the client starts a new VPN session. On Microsoft Windows, the client also terminates any scripts that the OnConnect or OnDisconnect script launched, and all their script descendents. On Mac OS and Linux, the client terminates only the OnConnect or OnDisconnect script; it does not terminate child scripts.

Enable Post SBL On Connect Script—Launches the OnConnect script if present and SBL establishes the VPN session. (Only supported if VPN endpoint is running Microsoft Windows 7, XP, or Vista).

Retain VPN On Logoff—Determines whether to keep the VPN session when the user logs off a Windows OS.

User Enforcement—Specifies whether to end the VPN session if a different user logs on. This parameter applies only if "Retain VPN On Logoff" is checked and the original user logged off Windows when the VPN session was up.

Authentication Timeout Values (present in AnyConnect Release 2.5.1025 and later)—By default, AnyConnect waits up to 12 seconds for an authentication from the secure gateway before terminating the connection attempt. AnyConnect then displays a message indicating the authentication timed out. Enter a number of seconds in the range 10-120.


For more detailed configuration information about the client features that appear on this pane, see these sections:

Allow Local Proxy ConnectionsLocal Proxy Connections

Proxy SettingsConfiguring the Client to Ignore Browser Proxy Settings

Optimal Gateway SelectionOptimal Gateway Selection

Automatic VPN Policy and Trusted Network DetectionConfiguring Trusted Network Detection

Always-on VPNPost Log-in Always-on VPN

Connect Failure Policy—Connect Failure Policy for Always-on VPN

Allow Captive Portal RemediationCaptive Portal Hotspot Detection and Remediation

PPP ExclusionAnyConnect over L2TP or PPTP

Authentication Timeout ValuesAuthentication Timeout Control

AnyConnect Profile Editor, Backup Servers

You can configure a list of backup servers the client uses in case the user-selected server fails. If the user-selected server fails, the client attempts to connect to the server at the top of the list first, and moves down the list, if necessary.

Host Address—Specifies an IP address or a Full-Qualified Domain Name (FQDN) to include in the backup server list.

Add—Adds the host address to the backup server list.

Move Up—Moves the selected backup server higher in the list. If the user-selected server fails, the client attempts to connect to the backup server at the top of the list first, and moves down the list, if necessary.

Move Down—Moves the selected backup server down in the list.

Delete—Removes the backup server from the server list.

For more information on configuring backup servers, see the "Configuring a Backup Server List" section.

AnyConnect Profile Editor, Certificate Matching

Enable the definition of various attributes that can be used to refine automatic client certificate selection on this pane.

Key Usage—You can use the following Certificate Key attributes for choosing acceptable client certificates:

Decipher_Only—Deciphering data, and that no other bit (except Key_Agreement) is set.

Encipher_Only—Enciphering data, and any other bit (except Key_Agreement) is not set.

CRL_Sign—Verifying the CA signature on a CRL.

Key_Cert_Sign—Verifying the CA signature on a certificate.

Key_Agreement—Key agreement.

Data_Encipherment—Encrypting data other than Key_Encipherment.

Key_Encipherment—Encrypting keys.

Non_Repudiation—Verifying digital signatures protecting against falsely denying some action, other than Key_Cert_sign or CRL_Sign.

Digital_Signature—Verifying digital signatures other than Non_Repudiation, Key_Cert_Sign or CRL_Sign.

Extended Key Usage—You can use these Extended Key Usage settings. The OIDs are included in parenthesis ():

ServerAuth (1.3.6.1.5.5.7.3.1)

ClientAuth (1.3.6.1.5.5.7.3.2)

CodeSign (1.3.6.1.5.5.7.3.3)

EmailProtect (1.3.6.1.5.5.7.3.4)

IPSecEndSystem (1.3.6.1.5.5.7.3.5)

IPSecTunnel (1.3.6.1.5.5.7.3.6)

IPSecUser (1.3.6.1.5.5.7.3.7)

TimeStamp (1.3.6.1.5.5.7.3.8)

OCSPSign (1.3.6.1.5.5.7.3.9)

DVCS (1.3.6.1.5.5.7.3.10)

Custom Extended Match Key (Max 10)—Specifies custom extended match keys, if any (maximum 10). A certificate must match all of the specified key(s) you enter. Enter the key in the OID format. For example: 1.3.6.1.5.5.7.3.11

Distinguished Name (Max 10):—Specifies distinguished names (DNs) for exact match criteria in choosing acceptable client certificates.

Name—The distinguished name (DN) to use for matching:

CN—Subject Common Name

C—Subject Country

DC—Domain Component

DNQ—Subject Dn Qualifier

EA—Subject Email Address

GENQ—Subject Gen Qualifier

GN—Subject Given Name

I—Subject Initials

L—Subject City

N—Subject Unstruct Name

O—Subject Company

OU—Subject Department

SN—Subject Sur Name

SP—Subject State

ST—Subject State

T—Subject Title

ISSUER-CN—Issuer Common Name

ISSUER-DC—Issuer Component

ISSUER-SN—Issuer Sur Name

ISSUER-GN—Issuer Given Name

ISSUER-N—Issuer Unstruct Name

ISSUER-I—Issuer Initials

ISSUER-GENQ—Issuer Gen Qualifier

ISSUER-DNQ—Issuer Dn Qualifier

ISSUER-C—Issuer Country

ISSUER-L—Issuer City

ISSUER-SP—Issuer State

ISSUER-ST—Issuer State

ISSUER-O—Issuer Company

ISSUER-OU—Issuer Department

ISSUER-T—Issuer Title

ISSUER-EA—Issuer Email Address

Pattern—The string to use in the match. The pattern to be matched should include only the portion of the string you want to match. There is no need to include pattern match or regular expression syntax. If entered, this syntax will be considered part of the string to search for.

For example, if a sample string was abc.cisco.com and the intent is to match cisco.com, the pattern entered should be cisco.com.

Wildcard—Enable to include wildcard pattern matching. With wildcard enabled, the pattern can be anywhere in the string.

Operator—The operator used in performing the match.

Equal—equivalent to ==

Not Equal—equivalent to !=

Match Case—Enable to make the pattern matching applied to the pattern case sensitive.

Selected—Perform case sensitive match with pattern.

Not Selected—Perform case in-sensitive match with pattern.

For more detailed configuration information about the certificate matching, see the "Configuring Certificate Matching" section.

AnyConnect Profile Editor, Certificate Enrollment

Configure certificate enrollment on this pane.

Certificate Enrollment—Enables AnyConnect to use the Simple Certificate Enrollment Protocol (SCEP) to provision and renew a certificate used for client authentication. The client sends a certificate request, and the certificate authority (CA) automatically accepts or denies the request.


Note The SCEP protocol also allows the client to request a certificate and then poll the CA until it receives a response. However, this polling method is not supported in this release.


Certificate Expiration Threshold—The number of days before the certificate expiration date that AnyConnect warns users their certificate is going to expire (not supported when SCEP is enabled). The default is zero (no warning displayed). The range of values is zero to 180 days.

Automatic SCEP Host—Specifies the host name and connection profile (tunnel group) of the ASA that has SCEP certificate retrieval configured. Enter a Fully Qualified Domain Name (FQDN) or a connection profile name of the ASA. For example, the hostname asa.cisco.com and the connection profile name scep_eng.

CA URL—Identifies the SCEP CA server. Enter an FQDN or IP Address of the CA server. For example, http://ca01.cisco.com.

Prompt For Challenge PW—Enable to let the user make certificate requests manually. When the user clicks Get Certificate, the client prompts the user for a username and one-time password.

Thumbprint—The certificate thumbprint of the CA. Use SHA1 or MD5 hashes.


Note Your CA server administrator can provide the CA URL and thumbprint and should retrieve the thumbprint directly from the server and not from a "fingerprint" or "thumbprint" attribute field in a certificate it issued.


Certificate Contents—defines how the client requests the contents of the certificate:

Name (CN)—Common Name in the certificate.

Department (OU)—Department name specified in certificate.

Company (O)—Company name specified in certificate.

State (ST)—State identifier named in certificate.

State (SP)—Another state identifier.

Country (C)—Country identifier named in certificate.

Email (EA)—Email address. In the following example, Email (EA) is %USER%@cisco.com. %USER% corresponds to the user's ASA username login credential.

Domain (DC)—Domain component. In the following example, Domain (DC) is set to cisco.com.

SurName (SN)—The family name or last name.

GivenName (GN)—Generally, the first name.

UnstructName (N)—Undefined name

Initials (I)—The initials of the user.

Qualifier (GEN)—The generation qualifier of the user. For example, "Jr." or "III."

Qualifier (DN)—a qualifier for the entire DN.

City (L)—The city identifier.

Title (T)—The person's title. For example, Ms., Mrs., Mr.

CA Domain—Used for the SCEP enrollment and is generally the CA domain.

Key size—The size of the RSA keys generated for the certificate to be enrolled.

Display Get Cert Button—If enabled, the AnyConnect GUI displays the Get Certificate button. By default, users see an Enroll button and a message that AnyConnect is contacting the certificate authority to attempt certificate enrollment. Displaying Get Certificate may give users a clearer understanding of what they are doing when interacting with the AnyConnect interface.

The button is visible to users if the certificate is set to expire within the period defined by the Certificate Expiration Threshold, after the certificate has expired, or no certificate is present.


Note Enable Display Get Cert Button if you permit users to manually request provisioning or renewal of authentication certificates. Typically, these users can reach the certificate authority without first needing to create a VPN tunnel. Otherwise, do not enable this feature.


For more detailed configuration information about Certificate Enrollment, see the "Configuring Certificate Enrollment using SCEP" section.

AnyConnect Profile Editor, Mobile Policy

Set parameters for AnyConnect running on Windows Mobile in this pane:

Device Lock Required—A Windows Mobile device must be configured with a password or PIN before establishing a VPN connection. This only applies to Windows Mobile devices that use the Microsoft Local Authentication Plug-ins (LAPs).

Maximum Timeout Minutes—The maximum number of minutes that must be configured before the device lock takes effect.

Minimum Password Length—Specifies the minimum number of characters for the device lock password or PIN.

Password Complexity—Specifies the complexity for the required device lock password:

alpha—Requires an alphanumeric password.

pin—Requires a numeric PIN.

strong—Requires a strong alphanumeric password which must contain at least 7 characters, including a minimum of 3 from the set of uppercase, lowercase, numerals, and punctuation characters.

For more detailed configuration information about Mobile Policy, see the "Configuring a Windows Mobile Policy" section.

AnyConnect Profile Editor, Server List

You can configure a list of servers that appear in the client GUI. Users can select servers in the list to establish a VPN connection.

Server List Table Columns:

Hostname—The alias used to refer to the host, IP address, or Full-Qualified Domain Name (FQDN).

Host Address—IP address or FQDN of the server.

User Group—Used in conjunction with Host Address to form a group-based URL.

Automatic SCEP Host—The Simple Certificate Enrollment Protocol specified for provisioning and renewing a certificate used for client authentication.

CA URL—The URL this server uses to connect to certificate authority (CA).

Add/Edit—Launches the Server List Entry dialog where you can specify the server parameters.

Delete—Removes the server from the server list.

Details—Displays more details about backup servers or CA URL s for the server.

AnyConnect Profile Editor, Add/Edit Server List

Add a server and its backup server and/or load balancing backup device in this pane.

Hostname—Enter an alias used to refer to the host, IP address, or Full-Qualified Domain Name (FQDN).

Host Address—Specify an IP address or an FQDN for the server.

User Group—Specify a user group. The user group is used in conjunction with Host Address to form a group-based URL.

Backup Server List—You can configure a list of backup servers the client uses in case the user-selected server fails. If the server fails, the client attempts to connect to the server at the top of the list first, and moves down the list, if necessary.

Host Address—Specifies an IP address or an FQDN to include in the backup server list. If the client cannot connect to the host, it attempts to connect to the backup server.

Add—Adds the host address to the backup server list.

Move Up—Moves the selected backup server higher in the list. If the user-selected server fails, the client attempts to connect to the backup server at the top of the list first, and moves down the list, if necessary.

Move Down—Moves the selected backup server down in the list.

Delete—Removes the backup server from the server list.

Load Balancing Server List—If the host for this server list entry is a load balancing cluster of security appliances, and the always-on feature is enabled, specify the backup devices of the cluster in this list. If you do not, the always-on feature blocks access to backup devices in the load balancing cluster.

Host Address—Specifies an IP address or an FQDN of a backup device in a load-balancing cluster.

Add—Adds the address to the load balancing backup server list.

Delete—Removes the load balancing backup server from the list.

CA URL—Specify the URL of the SCEP CA server. Enter an FQDN or IP Address. For example, http://ca01.cisco.com.

Prompt For Challenge PW—Enable to let the user make certificate requests manually. When the user clicks Get Certificate, the client prompts the user for a username and one-time password.

Thumbprint—The certificate thumbprint of the CA. Use SHA1 or MD5 hashes.


Note Your CA server administrator can provide the CA URL and thumbprint and should retrieve the thumbprint directly from the server and not from a "fingerprint" or "thumbprint" attribute field in a certificate it issued.


For more detailed configuration information about creating a server list, see the "Configuring a Server List" section.