Information About the ASA CX Module
The ASA CX module lets you enforce security based on the full context of a situation. This context includes the identity of the user (who), the application or website that the user is trying to access (what), the origin of the access attempt (where), the time of the attempted access (when), and the properties of the device used for the access (how). With the ASA CX module, you can extract the full context of a flow and enforce granular policies such as permitting access to Facebook but denying access to games on Facebook, or permitting finance employees access to a sensitive enterprise database but denying the same access to other employees.
How the ASA CX Module Works with the ASA
The ASA CX module runs a separate application from the ASA. The ASA CX module includes external management interface(s) so you can connect to the ASA CX module directly. Any data interfaces on the ASA CX module are used for ASA traffic only.
Traffic goes through the firewall checks before being forwarded to the ASA CX module. When you identify traffic for ASA CX inspection on the ASA, traffic flows through the ASA and the ASA CX module as follows:
1. Traffic enters the ASA.
2. Incoming VPN traffic is decrypted.
3. Firewall policies are applied.
4. Traffic is sent to the ASA CX module.
5. The ASA CX module applies its security policy to the traffic, and takes appropriate actions.
6. Valid traffic is sent back to the ASA; the ASA CX module might block some traffic according to its security policy, and that traffic is not passed on.
7. Outgoing VPN traffic is encrypted.
8. Traffic exits the ASA.
Figure 30-1 shows the traffic flow when using the ASA CX module. In this example, the ASA CX module automatically blocks traffic that is not allowed for a certain application. All other traffic is forwarded through the ASA.
Figure 30-1 ASA CX Module Traffic Flow in the ASA
Note If you have a connection between hosts on two ASA interfaces, and the ASA CX service policy is only configured for one of the interfaces, then all traffic between these hosts is sent to the ASA CX module, including traffic originating on the non-ASA CX interface (because the feature is bidirectional). However, the ASA only performs the authentication proxy on the interface to which the service policy is applied, because authentication proxy is applied only to ingress traffic (see the “Information About Authentication Proxy” section).
Monitor-Only Mode
For demonstration purposes, you can configure a service policy or a traffic-forwarding interface in monitor-only mode.
For guidelines and limitations for monitor-only mode, see the “Guidelines and Limitations” section.
Service Policy in Monitor-Only Mode
For testing and demonstration purposes, you can configure the ASA to send a duplicate stream of read-only traffic to the ASA CX module, so you can see how the module inspects the traffic without affecting the ASA traffic flow. In this mode, the ASA CX module inspects the traffic as usual, makes policy decisions, and generates events. However, because the packets are read-only copies, the module actions do not affect the actual traffic. Instead, the module drops the copies after inspection. Figure 30-2 shows the ASA CX module in monitor-only mode.
Figure 30-2 ASA CX Monitor-Only Mode
Traffic-Forwarding Interface in Monitor-Only Mode
You can alternatively configure ASA interfaces to be traffic-forwarding interfaces, where all traffic received is forwarded directly to the ASA CX module without any ASA processing. For testing and demonstration purposes, traffic-forwarding removes the extra complication of ASA processing. Traffic-forwarding is only supported in monitor-only mode, so the ASA CX module drops the traffic after inspecting it. Figure 30-3 shows the ASA GigabitEthernet 0/3 interface configured for traffic-forwarding. That interface is connected to a switch SPAN port so the ASA CX module can inspect all of the network traffic.
Figure 30-3 ASA CX Traffic-Forwarding
Information About ASA CX Management
Initial Configuration
For initial configuration, you must use the CLI on the ASA CX module to run the
setup
command and configure other optional settings.
To access the CLI, you can use the following methods:
– ASA CX console port—The ASA CX console port is a separate external console port.
– ASA CX Management 1/0 interface using SSH—You can connect to the default IP address (192.168.8.8), or you can use ASDM to change the management IP address and then connect using SSH. The ASA CX management interface is a separate external Gigabit Ethernet interface.
Note You cannot access the ASA CX hardware module CLI over the ASA backplane using the session command.
-
ASA 5512-X through ASA 5555-X:
– ASA session over the backplane—If you have CLI access to the ASA, then you can session to the module and access the module CLI.
– ASA CX Management 0/0 interface using SSH—You can connect to the default IP address (192.168.1.2), or you can use ASDM to change the management IP address and then connect using SSH. These models run the ASA CX module as a software module. The ASA CX management interface shares the Management 0/0 interface with the ASA. Separate MAC addresses and IP addresses are supported for the ASA and ASA CX module. You must perform configuration of the ASA CX IP address within the ASA CX operating system (using the CLI or ASDM). However, physical characteristics (such as enabling the interface) are configured on the ASA. You can remove the ASA interface configuration (specifically the interface name) to dedicate this interface as an ASA CX-only interface. This interface is management-only.
Policy Configuration and Management
After you perform initial configuration, configure the ASA CX policy using Cisco Prime Security Manager (PRSM). Then configure the ASA policy for sending traffic to the ASA CX module using ASDM or the ASA CLI.
Note When using PRSM in multiple device mode, you can configure the ASA policy for sending traffic to the ASA CX module within PRSM, instead of using ASDM or the ASA CLI. Using PRSM lets you consolodate management to a single management system. However, PRSM has some limitations when configuring the ASA service policy; see the ASA CX user guide for more information.
Information About Authentication Proxy
When the ASA CX needs to authenticate an HTTP user (to take advantage of identity policies), you must configure the ASA to act as an authentication proxy: the ASA CX module redirects authentication requests to the ASA interface IP address/proxy port. By default, the port is 885 (user configurable). Configure this feature as part of the service policy to divert traffic from the ASA to the ASA CX module. If you do not enable the authentication proxy, only passive authentication is available.
Note If you have a connection between hosts on two ASA interfaces, and the ASA CX service policy is only configured for one of the interfaces, then all traffic between these hosts is sent to the ASA CX module, including traffic orginiating on the non-ASA CX interface (the feature is bidirectional). However, the ASA only performs the authentication proxy on the interface to which the service policy is applied, because this feature is ingress-only.
Information About VPN and the ASA CX Module
The ASA includes VPN client and user authentication metadata from the Cisco AnyConnect client when forwarding traffic to the ASA CX module, which allows the ASA CX module to include this information as part of its policy lookup criteria. The VPN metadata is sent only at VPN tunnel establishment time along with a type-length-value (TLV) containing the session ID. The ASA CX module caches the VPN metadata for each session. Each tunneled connection sends the session ID so the ASA CX module can look up that session’s metadata.
Compatibility with ASA Features
The ASA includes many advanced application inspection features, including HTTP inspection. However, the ASA CX module provides more advanced HTTP inspection than the ASA provides, as well as additional features for other applications, including monitoring and controlling application usage.
To take full advantage of the ASA CX module features, see the following guidelines for traffic that you send to the ASA CX module:
-
Do not configure ASA inspection on HTTP traffic.
-
Do not configure Cloud Web Security (ScanSafe) inspection. If you configure both the ASA CX action and Cloud Web Security inspection for the same traffic, the ASA only performs the ASA CX action.
-
Other application inspections on the ASA are compatible with the ASA CX module, including the default inspections.
-
Do not enable the Mobile User Security (MUS) server; it is not compatible with the ASA CX module.
-
Do not enable ASA clustering; it is not compatible with the ASA CX module.
-
If you enable failover, when the ASA fails over, any existing ASA CX flows are transferred to the new ASA, but the traffic is allowed through the ASA without being acted upon by the ASA CX module. Only new flows recieved by the new ASA are acted upon by the ASA CX module.
-
(9.1(1) and earlier) Does not support NAT 64. In 9.1(2) and later, NAT 64 is supported.
Guidelines and Limitations
Context Mode Guidelines
(9.1(2) and earlier) Supported in single context mode only. Does not support multiple context mode.
(9.1(3) and later) Supported in multiple context mode. See the following guidelines:
-
The ASA CX module itself (configured in PRSM) is a single context mode device; the context-specific traffic coming from the ASA is checked against the common ASA CX policy.
-
For ASA CX module support, you cannot use the same IP addresses in multiple contexts; each context must include unique networks.
Firewall Mode Guidelines
Supported in routed and transparent firewall mode. Traffic-forwarding interfaces are only supported in transparent mode.
Failover Guidelines
Does not support failover directly; when the ASA fails over, any existing ASA CX flows are transferred to the new ASA, but the traffic is allowed through the ASA without being inspected by the ASA CX.
ASA Clustering Guidelines
Does not support clustering.
IPv6 Guidelines
-
Supports IPv6.
-
(9.1(1) and earlier) Does not support NAT 64. In 9.1(2) and later, NAT 64 is supported.
Model Guidelines
-
Supported only on the ASA 5585-X and 5512-X through ASA 5555-X. See the
Cisco ASA Compatibility Matrix
for more information:
http://www.cisco.com/en/US/docs/security/asa/compatibility/asamatrx.html
-
For the 5512-X through ASA 5555-X, you must install a Cisco solid state drive (SSD). For more information, see the ASA 5500-X hardware guide.
Monitor-Only Mode Guidelines
-
You cannot configure both monitor-only mode and normal inline mode at the same time on the ASA. Only one type of security policy is allowed. In multiple context mode, you cannot configure monitor-only mode for some contexts, and regular inline mode for others.
-
The following features are not supported in monitor-only mode:
– Deny policies
– Active authentication
– Decryption policies
-
The ASA CX does not perform packet buffering in monitor-only mode, and events will be generated on a best-effort basis. For example, some events, such as ones with long URLs spanning packet boundaries, may be impacted by the lack of buffering.
-
Be sure to configure both the ASA policy and the ASA CX to have matching modes: both in monitor-only mode, or both in normal inline mode.
Additional guidelines for traffic-forwarding interfaces:
-
The ASA must be in transparent mode.
-
You can configure up to 4 interfaces as traffic-forwarding interfaces. Other ASA interfaces can be used as normal.
-
Traffic-forwarding interfaces must be physical interfaces, not VLANs or BVIs. The physical interface also cannot have any VLANs associated with it.
-
Traffic-forwarding interfaces cannot be used for ASA traffic; you cannot name them or configure them for ASA features, including failover or management-only.
-
You cannot configure both a traffic-forwarding interface and a service policy for ASA CX traffic.
Additional Guidelines and Limitations
Configuring the ASA CX Module
This section describes how to configure the ASA CX module.
Connecting the ASA CX Management Interface
In addition to providing management access to the ASA CX module, the ASA CX management interface needs access to an HTTP proxy server or a DNS server and the Internet for signature updates and more. This section describes recommended network configurations. Your network may differ.
ASA 5585-X (Hardware Module)
The ASA CX module includes a separate management and console interface from the ASA. For initial setup, you can connect with SSH to the ASA CX Management 1/0 interface using the default IP address (192.168.8.8/24). If you cannot use the default IP address, you can either use the console port or use ASDM to change the management IP address so you can use SSH.
If you have an inside router
If you have an inside router, you can route between the management network, which can include both the ASA Management 0/0 and ASA CX Management 1/0 interfaces, and the ASA inside network for Internet access. Be sure to also add a route on the ASA to reach the Management network through the inside router.
If you do not have an inside router
If you have only one inside network, then you cannot also have a separate management network, which would require an inside router to route between the networks. In this case, you can manage the ASA from the inside interface instead of the Management 0/0 interface. Because the ASA CX module is a separate device from the ASA, you can configure the ASA CX Management 1/0 address to be on the same network as the inside interface.
ASA 5512-X through ASA 5555-X (Software Module)
These models run the ASA CX module as a software module, and the ASA CX management interface shares the Management 0/0 interface with the ASA. For initial setup, you can connect with SSH to the ASA CX default IP address (192.168.1.2/24). If you cannot use the default IP address, you can either session to the ASA CX over the backplane or use ASDM to change the management IP address so you can use SSH.
If you have an inside router
If you have an inside router, you can route between the Management 0/0 network, which includes both the ASA and ASA CX management IP addresses, and the inside network for Internet access. Be sure to also add a route on the ASA to reach the Management network through the inside router.
If you do not have an inside router
If you have only one inside network, then you cannot also have a separate management network. In this case, you can manage the ASA from the inside interface instead of the Management 0/0 interface. If you remove the ASA-configured name from the Management 0/0 interface, you can still configure the ASA CX IP address for that interface. Because the ASA CX module is essentially a separate device from the ASA, you
can
configure the ASA CX management address to be on the same network as the inside interface.
Note You must remove the ASA-configured name for Management 0/0; if it is configured on the ASA, then the ASA CX address must be on the same network as the ASA, and that excludes any networks already configured on other ASA interfaces. If the name is not configured, then the ASA CX address can be on any network, for example, the ASA inside network.
(ASA 5512-X through ASA 5555-X; May Be Required) Installing the Software Module
If you purchase the ASA with the ASA CX module, the module software and required solid state drive(s) (SSDs) come pre-installed and ready to go. If you want to add the ASA CX to an existing ASA, or need to replace the SSD, you need to install the ASA CX boot software and partition the SSD according to this procedure. To physically install the SSD, see the ASA hardware guide.
Note For the ASA 5585-X hardware module, you must install or upgrade your image from within the ASA CX module. See the ASA CX module documentation for more information.
Prerequisites
-
The free space on flash (disk0) should be at least 3GB plus the size of the boot software.
-
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
Step 1 Download the ASA CX boot software from Cisco.com to your computer.
If you have a Cisco.com login, you can obtain the boot software from the following website:
http://www.cisco.com/cisco/software/release.html?mdfid=284325223&softwareid=284399946
The boot software lets you set basic ASA CX network configuration, partition the SSD, and download the larger system software from a server of your choice to the SSD.
Step 2 Download the ASA CX system software from Cisco.com to an HTTP, HTTPS, or FTP server accessible from the ASA CX management interface.
If you have a Cisco.com login, you can obtain the boot software from the following website:
http://www.cisco.com/cisco/software/release.html?mdfid=284325223&softwareid=284399946
Step 3 Copy the boot software to disk0 on the ASA using the
copy
command. Do
not
transfer the system software; it is downloaded later to the SSD. For example:
ciscoasa# copy tftp://10.1.1.1/asacx-boot-9.1.1.img disk0:/asacx-boot-9.1.1.img
Step 4 If you are replacing the IPS module with the ASA CX module, shut down and uninstall the IPS module, and then reload the ASA:
ciscoasa# sw-module module ips shutdown ciscoasa# sw-module module ips uninstall
After the ASA reloads, reconnect to the ASA CLI.
Step 5 Set the ASA CX module boot image location in ASA disk0 by entering the following command:
ciscoasa# sw-module module cxsc recover configure image disk0:file_path
Example:
ciscoasa# sw-module module cxsc recover configure image disk0:asacx-boot-9.1.1.img
Step 6 Load the ASA CX boot image by entering the following command:
ciscoasa# sw-module module cxsc recover boot
Step 7 Wait approximately 5 minutes for the ASA CX module to boot up, and then open a console session to the now-running ASA CX boot image. The default username is
admin
and the default password is
Admin123
.
ciscoasa# session cxsc console Establishing console session with slot 1 Opening console session with module cxsc. Connected to module cxsc. Escape character sequence is 'CTRL-SHIFT-6 then x'.
Step 8 Partition the SSD:
Partition Successfully Completed
Step 9 Perform the basic network setup using the
setup
command according to the “Configuring Basic ASA CX Settings at the ASA CX CLI” section (do not exit the ASA CX CLI), and then return to this procedure to install the software image.
Step 10 Install the system software from the server:
asacx-boot> system install url
Example:
The following command installs the asacx-sys-9.1.1.pkg system software.
asacx-boot> system install https://upgrades.example.com/packages/asacx-sys-9.1.1.pkg Cisco ASA CX System Upgrade Do you want to continue with upgrade? [n]: Y Warning: Please do not interrupt the process or turn off the system. Doing so might leave system in unusable state. Stopping all the services ... Starting upgrade process ... Reboot is required to complete the upgrade. Press Enter to reboot the system.
Step 11 Press
Enter
to reboot the ASA CX module. Rebooting the module closes the console session. Allow 10 or more minutes for application component installation and for the ASA CX services to start.
(ASA 5585-X) Changing the ASA CX Management IP Address
If you cannot use the default management IP address (192.168.8.8), then you can set the management IP address from the ASA. After you set the management IP address, you can access the ASA CX module using SSH to perform initial setup.
Note For a software module, you can access the ASA CX CLI to perform setup by sessioning from the ASA CLI; you can then set the ASA CX management IP address as part of setup. See the “Configuring Basic ASA CX Settings at the ASA CX CLI” section.
Guidelines
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
|
|
session 1 do setup host ip
ip_address
/
mask
,
gateway_ip
ciscoasa# session 1 do setup host ip 10.1.1.2/24,10.1.1.1
|
Sets the ASA CX management IP address, mask, and gateway.
|
Configuring Basic ASA CX Settings at the ASA CX CLI
You must configure basic network settings and other parameters on the ASA CX module before you can configure your security policy.
Detailed Steps
Step 1 Do one of the following:
-
(All models) Use SSH to connect to the ASA CX management IP address.
-
(ASA 5512-X through ASA 5555-X) Open a console session to the module from the ASA CLI (see the “Getting Started” chapter in the general operations configuration guide to access the ASA CLI). In multiple context mode, session from the system execution space.
ciscoasa# session cxsc console
Step 2 Log in with the username
admin
and the password
Admin123
. You will change the password as part of this procedure.
Step 3 Enter the following
command:
Example:
Welcome to Cisco Prime Security Manager Setup Default values are inside [ ]
You are prompted through the setup wizard. The following example shows a typical path through the wizard; if you enter
Y
instead of
N
at a prompt, you will be able to configure some additional settings. This example shows how to configure both IPv4 and IPv6 static addresses. You can configure IPv6 stateless auto configuration by answering
N
when asked if you want to configure a static IPv6 address.
Enter a hostname [asacx]: asa-cx-host Do you want to configure IPv4 address on management interface?(y/n) [Y]: Y Do you want to enable DHCP for IPv4 address assignment on management interface?(y/n)[N]: N Enter an IPv4 address [192.168.8.8]: 10.89.31.65 Enter the netmask [255.255.255.0]: 255.255.255.0 Enter the gateway [192.168.8.1]: 10.89.31.1 Do you want to configure static IPv6 address on management interface?(y/n) [N]: Y Enter an IPv6 address: 2001:DB8:0:CD30::1234/64 Enter the gateway: 2001:DB8:0:CD30::1 Enter the primary DNS server IP address [ ]: 10.89.47.11 Do you want to configure Secondary DNS Server? (y/n) [N]: N Do you want to configure Local Domain Name? (y/n) [N] Y Enter the local domain name: example.com Do you want to configure Search domains? (y/n) [N] Y Enter the comma separated list for search domains: example.com Do you want to enable the NTP service?(y/n) [N]: Y Enter the NTP servers separated by commas: 1.ntp.example.com, 2.ntp.example.com
Step 4 After you complete the final prompt, you are presented with a summary of the settings. Look over the summary to verify that the values are correct, and enter
Y
to apply your changed configuration. Enter
N
to cancel your changes.
Example:
Apply the changes?(y,n) [Y]: Y Configuration saved successfully! Generating self-signed certificate, the web server will be restarted after that Press ENTER to continue...
Note If you change the host name, the prompt does not show the new name until you log out and log back in.
Step 5 If you do not use NTP, configure the time settings. The default time zone is the UTC time zone. Use the
show time
command to see the current settings. You can use the following commands to change time settings:
Step 6 Change the admin password by entering the following command:
Example:
The password must be at least 8 characters long and must contain at least one uppercase letter (A-Z), at least one lowercase letter (a-z) and at least one digit (0-9). Enter password: Farscape1 Confirm password: Farscape1 SUCCESS: Password changed for user admin
Step 7 Enter the
exit
command to log out.
Configuring the Security Policy on the ASA CX Module Using PRSM
This section describes how to launch PRSM to configure the ASA CX module application. For details on using PRSM to configure your ASA CX security policy, see the ASA CX user guide.
Detailed Steps
You can launch PRSM from your web browser, or you can launch it from ASDM.
-
Launch PRSM from a web browser by enter the following URL:
https://ASA_CX_management_IP
Where the ASA CX management IP address is the one you set in the “Configuring Basic ASA CX Settings at the ASA CX CLI” section.
-
Launch PRSM from ASDM by choosing
Home > ASA CX Status
, and clicking the
Connect to the ASA CX application
link.
(Optional) Configuring the Authentication Proxy Port
The default authentication port is 885. To change the authentication proxy port, perform the following steps. For more information about the authentication proxy, see the “Information About Authentication Proxy” section.
Guidelines
In multiple context mode, perform this procedure within each security context.
Detailed Steps
|
|
cxsc auth-proxy port
port
ciscoasa(config)# cxsc auth-proxy port 5000
|
Sets the authentication proxy port greater than 1024. The default is 885.
|
Redirecting Traffic to the ASA CX Module
You can redirect traffic to the ASA CX module by creating a service policy that identifies specific traffic. For demonstration purposes only, you can also enable monitor-only mode for the service policy, which forwards a copy of traffic to the ASA CX module, while the original traffic remains unaffected.
Another option for demonstration purposes is to configure a traffic-forwarding interface instead of a service policy in monitor-only mode. The traffic-forwarding interface sends all traffic directly to the ASA CX module, bypassing the ASA.
Creating the ASA CX Service Policy
This section identifies traffic to redirect from the ASA to the ASA CX module. Configure this policy on the ASA. If you want to use a traffic-forwarding interface for demonstration purposes, skip this procedure and see the “Configuring Traffic-Forwarding Interfaces (Monitor-Only Mode)” section instead.
Note When using PRSM in multiple device mode, you can configure the ASA policy for sending traffic to the ASA CX module within PRSM, instead of using ASDM or the ASA CLI. However, PRSM has some limitations when configuring the ASA service policy; see the ASA CX user guide for more information.
Prerequisites
-
If you enable the authentication proxy on the ASA using this procedure, be sure to also configure a directory realm for authentication on the ASA CX module. See the ASA CX user guide for more information.
-
If you have an active service policy redirecting traffic to an IPS module (that you replaced with the ASA CX), you must remove that policy before you configure the ASA CX service policy.
-
Be sure to configure both the ASA policy and the ASA CX to have matching modes: both in monitor-only mode, or both in normal inline mode.
-
In multiple context mode, perform this procedure within each security context.
Detailed Steps
|
|
|
Step 1
|
class-map
name
ciscoasa(config)# class-map cx_class
|
Creates a class map to identify the traffic for which you want to send to the ASA CX module.
If you want to send multiple traffic classes to the ASA CX module, you can create multiple class maps for use in the security policy.
|
Step 2
|
match
parameter
ciscoasa(config-cmap)# match access-list cx_traffic
|
Specifies the traffic in the class map. See the “Identifying Traffic (Layer 3/4 Class Maps)” section for more information.
|
Step 3
|
policy-map
name
ciscoasa(config)# policy-map cx_policy
|
Adds or edits a policy map that sets the actions to take with the class map traffic.
|
Step 4
|
class
name
ciscoasa(config-pmap)# class cx_class
|
Identifies the class map you created in Step 1.
|
Step 5
|
cxsc
{
fail-close
|
fail-open
} [
auth-proxy
|
monitor-only
]
ciscoasa(config-pmap-c)# cxsc fail-close auth-proxy
|
Specifies that the traffic should be sent to the ASA CX module.
The
fail-close
keyword sets the ASA to block all traffic if the ASA CX module is unavailable.
The
fail-open
keyword sets the ASA to allow all traffic through, uninspected, if the ASA CX module is unavailable.
The optional
auth-proxy
keyword enables the authentication proxy, which is required for active authentication.
For demonstration purposes only, specify
monitor-only
to send a read-only copy of traffic to the ASA CX module. When you configure this option, you see a warning message similar to the following:
WARNING: Monitor-only mode should be used for demonstrations and evaluations only. This mode prevents CXSC from denying or altering traffic.
See the “Monitor-Only Mode” section for more information.
Note You must configure all classes and policies to be either in monitor-only mode, or in normal inline mode; you cannot mix both modes on the same ASA.
|
Step 6
|
(Optional)
class
name2
ciscoasa(config-pmap)# class cx_class2
|
If you created multiple class maps for ASA CX traffic, you can specify another class for the policy.
See the “Feature Matching Within a Service Policy” section for detailed information about how the order of classes matters within a policy map. Traffic cannot match more than one class map for the same action type.
|
Step 7
|
(Optional)
cxsc
{
fail-close
|
fail-open
} [
auth-proxy
|
monitor-only
]
ciscoasa(config-pmap-c)# cxsc fail-close auth-proxy
|
Specifies that the second class of traffic should be sent to the ASA CX module.
Add as many classes as desired by repeating these steps.
|
Step 8
|
service-policy policymap_name {global | interface
interface_name
}
ciscoasa(config)# service-policy cx_policy interface outside
|
Activates the policy map on one or more interfaces.
global
applies the policy map to all interfaces, and
interface
applies the policy to one interface. Only one global policy is allowed. You can override the global policy on an interface by applying a service policy to that interface. You can only apply one policy map to each interface.
|
Prerequisites
-
Be sure to configure both the ASA policy and the ASA CX to have matching modes: both in monitor-only.
-
In multiple context mode, perform this procedure within each security context.
Detailed Steps
|
|
|
Step 1
|
interface
physical_interface
ciscoasa(config)# interface gigabitethernet 0/5
|
Enters interface configuration mode for the physical interface you want to use for traffic-forwarding.
|
Step 2
|
no nameif
ciscoasa(config-ifc)# no nameif
|
Removes any name configured for the interface. If this interface was used in any ASA configuration, that configuration is removed. You cannot configure traffic-forwarding on a named interface.
|
Step 3
|
traffic-forward cxsc monitor-only
ciscoasa(config-ifc)# traffic-forward cxsc monitor-only
|
Enables traffic-forwarding. You see a warning similar to the following:
WARNING: This configuration is purely for demo of CX functionality and shouldn't be used on a production ASA and any issues found when mixing demo feature with production ASA is not supported.
|
Step 4
|
no shutdown
ciscoasa(config-ifc)# no shutdown
|
Enables the interface.
|
Step 8 Repeat for any additional interfaces.
Step 9 Click
Send
.
Examples
The following example makes GigabitEthernet 0/5 a traffic-forwarding interface:
interface gigabitethernet 0/5 traffic-forward cxsc monitor-only
Managing the ASA CX Module
This section includes procedures that help you manage the module.
Resetting the Password
You can reset the module password to the default. For the user
admin
, the default password is
Admin123
. After resetting the password, you should change it to a unique value using the module application.
Resetting the module password causes the module to reboot. Services are not available while the module is rebooting.
To reset the module password to the default of Admin123, perform the following steps.
Guidelines
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
|
|
For a hardware module (ASA 5585-X):
hw-module module
1
password-reset
For a software module (ASA 5512-X through ASA 5555-X):
sw-module module
cxsc
password-reset
ciscoasa# hw-module module 1 password-reset
|
Resets the module password to
Admin123
for user
admin
.
|
Reloading or Resetting the Module
To reload or reset the module, enter one of the following commands at the ASA CLI.
Guidelines
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
|
|
For a hardware module (ASA 5585-X):
hw-module module 1 reload
For a software module (ASA 5512-X through ASA 5555-X):
sw-module module cxsc reload
ciscoasa# hw-module module 1 reload
|
Reloads the module software.
|
For a hardware module:
For a software module:
sw-module module cxsc reset
ciscoasa# hw-module module 1 reset
|
Performs a reset, and then reloads the module.
|
Shutting Down the Module
Shutting down the module software prepares the module to be safely powered off without losing configuration data.
Note
: If you reload the ASA, the module is not automatically shut down, so we recommend shutting down the module before reloading the ASA. To gracefully shut down the module, perform the following steps at the ASA CLI.
Guidelines
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
|
|
For a hardware module (ASA 5585-X):
hw-module module 1 shutdown
For a software module (ASA 5512-X through ASA 5555-X):
sw-module module cxsc shutdown
ciscoasa# hw-module module 1 shutdown
|
Shuts down the module.
|
(ASA 5512-X through ASA 5555-X) Uninstalling a Software Module Image
To uninstall a software module image and associated configuration, perform the following steps.
Guidelines
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
|
|
|
Step 1
|
sw-module module
cxsc
uninstall
ciscoasa# sw-module module cxsc uninstall
Module cxsc will be uninstalled. This will completely remove the
disk image associated with the sw-module including any configuration
that existed within it.
Uninstall module <id>? [confirm]
|
Permanently uninstalls the software module image and associated configuration.
|
Step 2
|
reload
ciscoasa# reload
|
Reloads the ASA. You must reload the ASA before you can install a new module type.
|
(ASA 5512-X through ASA 5555-X) Sessioning to the Module From the ASA
To access the ASA CX software module CLI from the ASA, you can session from the ASA. You can either session to the module (using Telnet) or create a virtual console session. A console session might be useful if the control plane is down and you cannot establish a Telnet session.
Guidelines
In multiple context mode, perform this procedure in the system execution space.
Detailed Steps
|
|
Telnet session.
ciscoasa# session cxsc
Opening command session with slot 1.
Connected to module cxsc. Escape character sequence is 'CTRL-^X'.
cxsc login: admin
Password: Admin123
|
Accesses the module using Telnet. You are prompted for the username and password. The default username is
admin
, and the default password is
Admin123
.
|
Console session.
ciscoasa# session cxsc console
Establishing console session with slot 1
Opening console session with module cxsc.
Connected to module cxsc. Escape character sequence is 'CTRL-SHIFT-6 then x'.
cxsc login: admin
Password: Admin123
|
Accesses the module console. You are prompted for the username and password. The default username is
admin
, and the default password is
Admin123
.
Note Do not use this command in conjunction with a terminal server where Ctrl-Shift-6, x is the escape sequence to return to the terminal server prompt. Ctrl-Shift-6, x is also the sequence to escape the ASA CX console and return to the ASA prompt. Therefore, if you try to exit the ASA CX console in this situation, you instead exit all the way to the terminal server prompt. If you reconnect the terminal server to the ASA, the ASA CX console session is still active; you can never exit to the ASA prompt. You must use a direct serial connection to return the console to the ASA prompt.
Use the session cxsc command instead.
|
Monitoring the ASA CX Module
Note For ASA CX-related syslog messages, see the syslog messages guide. ASA CX syslog messages start with message number 429001.
Showing Module Status
To check the status of a module, enter one of the following commands:
|
|
|
Displays the status.
|
show module
{
1
|
cxsc
}
details
|
Displays additional status information. Specify
1
for a hardware module and
cxsc
for a software module.
|
|
Displays the network parameters for transferring a software module boot image.
|
Examples
The following is sample output from the
show module
command for an ASA with an ASA CX SSP installed:
Mod Card Type Model Serial No. --- -------------------------------------------- ------------------ ----------- 0 ASA 5585-X Security Services Processor-10 wi ASA5585-SSP-10 JAF1507AMKE 1 ASA 5585-X CX Security Services Processor-10 ASA5585-SSP-CX10 JAF1510BLSA Mod MAC Address Range Hw Version Fw Version Sw Version --- --------------------------------- ------------ ------------ --------------- 0 5475.d05b.1100 to 5475.d05b.110b 1.0 2.0(7)0 100.7(6)78 1 5475.d05b.2450 to 5475.d05b.245b 1.0 2.0(13)0 0.6.1 Mod SSM Application Name Status SSM Application Version --- ------------------------------ ---------------- -------------------------- 1 ASA CX Security Module Up 0.6.1 Mod Status Data Plane Status Compatibility --- ------------------ --------------------- -------------
Showing Module Statistics
To show module statistics, enter the following command:
|
|
show service-policy cxsc
|
Displays the ASA CX statistics and status per service policy.
|
Examples
The following is sample output from the
show service-policy
command showing the ASA CX policy and the current statistics as well as the module status when the authentication proxy is disabled:
hostname# show service-policy cxsc Service-policy: global_policy CXSC: card status Up, mode fail-open, auth-proxy disabled packet input 2626422041, packet output 2626877967, drop 0, reset-drop 0, proxied 0
The following is sample output from the
show service-policy
command showing the ASA CX policy and the current statistics as well as the module status when the authentication proxy is enabled; in this case, the proxied counters also increment:
hostname# show service-policy cxsc Default Queueing Set connection policy: random-sequence-number disable CXSC: card status Up, mode fail-open, auth-proxy enabled packet input 7724, packet output 7701, drop 0, reset-drop 0, proxied 10
Monitoring Module Connections
To show connections through the ASA CX module, enter one of the following commands:
|
|
show asp table classify domain cxsc
|
Shows the NP rules created to send traffic to the ASA CX module.
|
show asp table classify domain cxsc-auth-proxy
|
Shows the NP rules created for the authentication proxy for the ASA CX module.
|
show asp drop
|
Shows dropped packets. The following drop types are used:
Frame Drops:
-
cxsc-bad-tlv-received—This occurs when ASA receives a packet from CXSC without a Policy ID TLV. This TLV must be present in non-control packets if it does not have the Standy Active bit set in the actions field.
-
cxsc-request—The frame was requested to be dropped by CXSC due a policy on CXSC whereby CXSC would set the actions to Deny Source, Deny Destination, or Deny Pkt.
-
cxsc-fail-close—The packet is dropped because the card is not up and the policy configured was 'fail-close' (rather than 'fail-open' which allows packets through even if the card was down).
-
cxsc-fail—The CXSC configuration was removed for an existing flow and we are not able to process it through CXSC it will be dropped. This should be very unlikely.
-
cxsc-malformed-packet—The packet from CXSC contains an invalid header. For instance, the header length may not be correct.
Flow Drops:
-
cxsc-request—The CXSC requested to terminate the flow. The actions bit 0 is set.
-
reset-by-cxsc—The CXSC requested to terminate and reset the flow. The actions bit 1 is set.
-
cxsc-fail-close—The flow was terminated because the card is down and the configured policy was 'fail-close'.
|
show asp event dp-cp cxsc-msg
|
This output shows how many ASA CX module messages are on the dp-cp queue. Currently, only VPN queries from the ASA CX module are sent to dp-cp.
|
show conn
|
This command already shows if a connection is being forwarded to a module by displaying the ‘X - inspected by service module’ flag. Connections being forwarded to the ASA CX module will also display the ‘X’ flag.
|
Examples
The following is sample output from the
show asp table classify domain cxsc
command:
ciscoasa# show asp table classify domain cxsc in id=0x7ffedb4acf40, priority=50, domain=cxsc, deny=false hits=15485658, user_data=0x7ffedb4ac840, cs_id=0x0, use_real_addr, flags=0x0, protocol=0 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=0.0.0.0, mask=0.0.0.0, port=0, dscp=0x0 input_ifc=outside, output_ifc=any in id=0x7ffedb4ad4a0, priority=50, domain=cxsc, deny=false hits=992053, user_data=0x7ffedb4ac840, cs_id=0x0, use_real_addr, flags=0x0, protocol=0 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=0.0.0.0, mask=0.0.0.0, port=0, dscp=0x0 input_ifc=inside, output_ifc=any in id=0x7ffedb4ada00, priority=50, domain=cxsc, deny=false hits=0, user_data=0x7ffedb4ac840, cs_id=0x0, use_real_addr, flags=0x0, protocol=0 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=0.0.0.0, mask=0.0.0.0, port=0, dscp=0x0 input_ifc=m, output_ifc=any Last clearing of hits counters: Never
The following is sample output from the
show asp table classify domain cxsc-auth-proxy
command. For the first rule in the output, the destination “port=2000” is the auth-proxy port configured by the
cxsc auth-proxy port 2000
command, and the destination “ip/id=192.168.0.100” is the ASA interface IP address.
ciscoasa# show asp table classify domain cxsc-auth-proxy in id=0x7ffed86cc470, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=192.168.0.100, mask=255.255.255.255, port=2000, dscp=0x0 input_ifc=inside, output_ifc=identity in id=0x7ffed86cce20, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=2.2.2.2, mask=255.255.255.255, port=2000, dscp=0x0 input_ifc=new2, output_ifc=identity in id=0x7ffed86cd7d0, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=172.23.58.52, mask=255.255.255.255, port=2000, dscp=0x0 input_ifc=mgmt, output_ifc=identity in id=0x7ffed86caa80, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=192.168.5.172, mask=255.255.255.255, port=2000, dscp=0x0 input_ifc=outside, output_ifc=identity in id=0x7ffed86cb3c0, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 dst ip/id=fe80::5675:d0ff:fe5b:1102/128, port=2000 input_ifc=outside, output_ifc=identity in id=0x7ffed742be10, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 dst ip/id=1:1:1:1::10/128, port=2000 input_ifc=outside, output_ifc=identity Last clearing of hits counters: Never
The following is sample output from the
show asp drop
command. This output is just an example and lists all the possible reasons for a dropped frame or flow from the ASA CX module:
CXSC Module received packet with bad TLV's (cxsc-bad-tlv-received) 2 CXSC Module requested drop (cxsc-request) 1 CXSC card is down (cxsc-fail-close) 1 CXSC config removed for flow (cxsc-fail) 3 CXSC Module received malformed packet (cxsc-malformed-packet) 1 Last clearing: 18:12:58 UTC May 11 2012 by enable_15 Flow terminated by CXSC (cxsc-request) 2 Flow reset by CXSC (reset-by-cxsc) 1 CXSC fail-close (cxsc-fail-close) 1 Last clearing: 18:12:58 UTC May 11 2012 by enable_15
The following is sample output from the
show asp event dp-cp cxsc-msg
command:
ciscoasa# show asp event dp-cp cxsc-msg DP-CP EVENT QUEUE QUEUE-LEN HIGH-WATER Identity-Traffic Event Queue 0 0 Non-Blocking Event Queue 0 2 Midpath High Event Queue 0 53 Midpath Norm Event Queue 8074 8288 Threat-Detection Event Queue 0 3 EVENT-TYPE ALLOC ALLOC-FAIL ENQUEUED ENQ-FAIL RETIRED 15SEC-RATE
The following is sample output from the
show conn detail
command:
ciscoasa# show conn detail Flags: A - awaiting inside ACK to SYN, a - awaiting outside ACK to SYN, B - initial SYN from outside, b - TCP state-bypass or nailed, C - CTIQBE media, D - DNS, d - dump, E - outside back connection, F - outside FIN, f - inside FIN, G - group, g - MGCP, H - H.323, h - H.225.0, I - inbound data, i - incomplete, J - GTP, j - GTP data, K - GTP t3-response k - Skinny media, M - SMTP data, m - SIP media, n - GUP O - outbound data, P - inside back connection, p - Phone-proxy TFTP connection, q - SQL*Net data, R - outside acknowledged FIN, R - UDP SUNRPC, r - inside acknowledged FIN, S - awaiting inside SYN, s - awaiting outside SYN, T - SIP, t - SIP transient, U - up, V - VPN orphan, W - WAAS, X - inspected by service module TCP outside 208.80.152.2:80 inside 192.168.1.20:59928, idle 0:00:10, bytes 79174, flags XUIO
Capturing Module Traffic
To configure and view packet captures for the ASA CX module, enter one of the following commands:
|
|
capture
name
interface asa_dataplane
|
Captures packets between ASA CX module and the ASA on the backplane.
|
copy capture
|
Copies the capture file to a server.
|
show capture
|
Shows the capture at the ASA console.
|
Note Captured packets contain an additional AFBP header that your PCAP viewer might not understand; be sure to use the appropriate plugin to view these packets.
Troubleshooting the ASA CX Module
Debugging the Module
To enable ASA CX debugging, enter the following command:
|
|
debug cxsc
[
error
|
event
|
message
]
|
Enables debugs at error, event, or message level.
|
When you enable the authentication proxy, the ASA generates a debug messge when it sends an authentication proxy TLV to the ASA CX module, giving IP and port details:
DP CXSC Event: Sent Auth proxy tlv for adding Auth Proxy on interface: inside4. DP CXSC Event: Sent Auth proxy tlv for adding Auth Proxy on interface: cx_inside. DP CXSC Event: Sent Auth proxy tlv for adding Auth Proxy on interface: cx_outside.
When the interface IP address is changed, auth-proxy tlv updates are sent to the ASA CX module:
DP CXSC Event: Sent Auth proxy tlv for removing Auth Proxy for interface inside. DP CXSC Event: Sent Auth proxy tlv for adding Auth Proxy on interface: inside.
When a flow is freed on the ASA, the ASA CX module is notified so it can clean up the flow:
DP CXSC Msg: Notifying CXSC that flow (handle:275233990) is being freed for 192.168.18.5:2213 -> 10.166.255.18:80.
When the ASA CX module sends a redirect to a client to authenticate, and that redirect is sent to the ASA, the ASA sends it to the ASA CX module. In this example, 192.168.18.3 is the interface address and port 8888 is the authentication proxy port reserved on that interface for the authentication proxy feature:
DP CXSC Msg: rcvd authentication proxy data from 192.168.18.5:2214 -> 192.168.18.3:8888, forwarding to cx
When a VPN connection is established on the ASA, and the ASA sends connection information to the ASA CX module:
CXSC Event: Dumping attributes from the vpn session record CXSC Event: tunnel->Protocol: 17 CXSC Event: tunnel->ClientVendor: SSL VPN Client CXSC Event: tunnel->ClientVersion: Cisco AnyConnect VPN Agent for Windows 2.4.1012 CXSC Event: Sending VPN RA session data to CXSC CXSC Event: sess index: 0x3000 CXSC Event: sess type id: 3 CXSC Event: username: devuser CXSC Event: domain: CN=Users,DC=test,DC=priv CXSC Event: directory type: 1 CXSC Event: login time: 1337124762 CXSC Event: nac result: 0 CXSC Event: posture token: CXSC Event: public IP: 172.23.34.108 CXSC Event: assigned IP: 192.168.17.200 CXSC Event: client OS id: 1 CXSC Event: client type: Cisco AnyConnect VPN Agent for Windows 2.4.1012 CXSC Event: anyconnect data: , len: 0
Problems with the Authentication Proxy
If you are having a problem using the authentication proxy feature, follow these steps to troubleshoot your configuration and connections:
1. Check your configurations.
-
On the ASA, check the output of the
show asp table classify domain cxsc-auth-proxy
command and make sure there are rules installed and that they are correct.
-
In PRSM, ensure the directory realm is created with the correct credentials and test the connection to make sure you can reach the authentication server; also ensure that a policy object or objects are configured for authentication.
2. Check the output of the
show service-policy cxsc
command to see if any packets were proxied.
3. Perform a packet capture on the backplane, and check to see if traffic is being redirected on the correct configured port. See the “Capturing Module Traffic” section. You can check the configured port using the
show running-config cxsc
command or the
show asp table classify domain cxsc-auth-proxy
command.
Note If you have a connection between hosts on two ASA interfaces, and the ASA CX service policy is only configured for one of the interfaces, then all traffic between these hosts is sent to the ASA CX module, including traffic orginiating on the non-ASA CX interface (the feature is bidirectional). However, the ASA only performs the authentication proxy on the interface to which the service policy is applied, because this feature is ingress-only.
Example 30-1 Make sure port 2000 is used consistently:
1. Check the authentication proxy port:
ciscoasa# show running-config cxsc cxsc auth-proxy port 2000
2. Check the authentication proxy rules:
ciscoasa# show asp table classify domain cxsc-auth-proxy in id=0x7ffed86cc470, priority=121, domain=cxsc-auth-proxy, deny=false hits=0, user_data=0x7ffed86ca220, cs_id=0x0, flags=0x0, protocol=6 src ip/id=0.0.0.0, mask=0.0.0.0, port=0 dst ip/id=192.168.0.100, mask=255.255.255.255, port=2000, dscp=0x0 input_ifc=inside, output_ifc=identity
3. In the packet captures, the redirect request should be going to destination port 2000.