Table Of Contents
Configuring Virtualization on the Virtual Firewall
Contents
Information About Virtualization
Contexts
Domains
Role-Based Access Control
Resource Classes
How to Configure Virtualization
Configuring Virtualization
Prerequisites
Displaying Virtualization Configuration and Statistics
Prerequisites
Configuration Examples for Virtualization
Additional References
Related Documents
Standards
MIBs
RFCs
Technical Assistance
Configuring Virtualization on the Virtual Firewall
This module describes how to configure virtualization for the VFW application.
Feature History for Configuring Network Address Translation on the VFW Application
Release
|
Modification
|
Release 3.5.0
|
This feature was introduced on the multiservice blade (MSB) for the Cisco XR 12000 Series Router.
|
Release 3.6.0
|
No modification.
|
Release 3.7.0
|
No modification.
|
Contents
•
Information About Virtualization
•
How to Configure Virtualization
•
Configuration Examples for Virtualization
Information About Virtualization
You can operate your VFW application in a single context or in multiple contexts. Multiple contexts use the concept of virtualization to partition your VFW application into multiple virtual devices or contexts. Each context contains its own set of policies, interfaces, resources, and administrators. This feature provides you with the tools to more closely and efficiently manage the system resources and users of the VFW application and to manage the services you provide to your customers.
By default, your VFW application provides an Admin context and five user contexts. This provision allows you to use multiple contexts if you choose to configure them. To increase the number of user contexts (up to a maximum of 250), you may purchase a separate license from Cisco Systems.
This section provides an overview of the basic concepts involved with virtualization. Virtualization consists of the following functional areas:
•
Contexts
•
Domains
•
Role-Based Access Control
•
Resource Classes
Contexts
The virtualized environment is divided into objects called contexts. Each context behaves like an independent VFW with its own policies, interfaces, domains, and administrators. Each context also has its own management interface that you can access using Telnet or SSH.
As the global administrator (Admin), you can configure and manage all contexts through the Admin context, which contains the basic settings for each virtual device or context. When the Admin logs in to the VFW application through the router processor using Telnet, the Admin is authenticated in the Admin context.
The Admin context is similar to other contexts, except that, when you log in to the Admin context (for example, using SSH), you have full system administrator access to the entire VFW application and all contexts and objects within it. The Admin context provides access to network-wide resources, for example, a syslog server or context configuration server. All global commands for the VFW application settings, contexts, resource classes, and so on are available only in the Admin context.
Each context, including the Admin context, has its own configuration file and local user database that are stored in the local disk partition on the flash disk or that can be downloaded from an FTP, TFTP, or HTTP(S) server. The startup-config for each context is stored as the startup-configuration file on the flash disk.
Figure 8 illustrates the concept of VFW application virtualization in which you create partitions that enable the VFW application to function as multiple virtual devices.
Figure 8 VFW Virtualization Chart
In the Admin context, use the changeto command in EXEC mode or the do changeto command in configuration modes to move between contexts. Only users authenticated in the Admin context can use the changeto command.
Each context you create represents a virtual device. You can partition each context into domains for managing access to context resources. Table 3 describes the various components in Figure 8.
Table 3 VFW Virtualization Elements
Element
|
Description
|
Context (Cn)
|
You can configure a single VFW application to behave as multiple, virtual devices by creating partitions called contexts. Each context functions as an independent device, with its own set of users, objects, and allocated resources. By default, the VFW application comes preconfigured with an Admin context and five configurable user contexts. To upgrade to a maximum of 250 user contexts, you must purchase a separate license from Cisco Systems. For more information about contexts, see the "Contexts" section.
|
Domain (Dn)
|
You can divide each context into multiple partitions called domains, allowing you to manage user access to the objects within a context. When you create a domain, you form an association between a select group of context users and a select group of context objects. For more information about domains, see the "Domains" section.
|
User (A, Un)
|
The VFW application is preconfigured with a default global system administrator that provides access to all VFW application functionality and allows you to create additional users. Any user you create while in Admin context, by default, has access to all resources in the VFW application. Any user you create while in a user-defined context, has access only to the resources within that context. You assign each user a role, which determines the commands and resources that are available to that user.
|
Object (Cn_On, Dn_On)
|
Objects are user-configurable items, such as:
• Access lists
• Defined interfaces
• Policy maps
• Scripts
The objects you create are specific to the context you are in while creating the object. If the context is partitioned into multiple domains, you allocate objects within each domain.
|
Domains
For management purposes, contexts are divided into objects called domains, and each domain is fully contained within a context. A domain provides a namespace in which a user operates, and each user is associated with at least one domain. The role assigned to a user determines the operations that a user can perform on the objects in a domain and the command set available to that user. When you create a context, the VFW application automatically creates a default domain for that context.
The global admin or context administrators can create additional domains. A domain name must be unique within the context with which it is associated.
You can add to a domain any object that you can create (for example, an interface) and you can add an object to multiple domains. If you add an object that has other objects associated with it to a domain, the associated objects do not automatically become part of the domain. You must add each object individually. When you create an object, the VFW application automatically adds it to your domain.
Note
A domain does not restrict the context configuration that you can display using the show running-config command. However, a domain does restrict a user's access to configurable objects in the VFW application. You can further restrict the operations a user can perform on those configurable objects by assigning a role to a user. For information about user roles, see the "Role-Based Access Control" section.
Role-Based Access Control
The VFW application provides role-based access control (RBAC), which is a mechanism that determines the commands and resources available to each user. A role defines a set of permissions for accessing the objects and resources in a context and the actions that you can perform on them. The global administrator or the context administrator assigns roles to users based on their network function and the resources to which you want them to have access.
The VFW application provides the following predefined roles that you cannot delete or modify:
•
Admin—If created in the Admin context, has complete access to, and control over, all contexts, domains, roles, users, resources, and objects in the entire VFW application. If created in a user context, this role gives a user complete access to and control over all the objects in that context. A context administrator can create, configure, and modify any object in that context, including policies, roles, domains, and so on.
•
Network Admin—Complete access to and control over the following features:
–
changeto command
–
Connection parameters
–
Copy configurations
–
Interfaces
–
Routing
–
NAT
•
Network-Monitor—Access to all show commands and the changeto command only. If you do not explicitly assign a role to a user with the username command, this is the default role.
•
Security-Admin—Complete access to and control over the following security-related features within a context:
–
AAA
–
ACLs
–
Application inspection
–
changeto command
–
Connection parameters
–
Copy configurations
–
Interfaces
–
NAT
Resource Classes
Resource classes are the means by which you manage context access to VFW application resources, such as concurrent connections or bandwidth rate. The VFW application is preconfigured with a default resource class that it applies to the Admin context and any user context upon creation. The default resource class is configured to allow a context to operate within a range that can vary from no resource access (0 percent) to complete resource access (100 percent). When you use the default resource class with multiple contexts, you run the risk of oversubscribing VFW application resources. This means that the VFW application permits all contexts to have full access to all resources on a first-come, first-served basis. When a resource is utilized to its maximum limit, the VFW application denies additional requests made by any context for that resource.
To avoid oversubscribing resources and to help guarantee access to a resource by any context, the VFW application allows you to create customized resource classes that you associate with one or more contexts. A context becomes a member of the resource class when you make the association. Creating a resource class allows you to set limits on the minimum and maximum amounts of each VFW application resource that a member context is entitled to use. You define the minimum and maximum values as a percentage of the whole.
You can limit and manage the allocation of the following VFW application resources:
•
ACL memory
•
Buffers for syslog messages and TCP out-of-order (OOO) segments
•
Concurrent connections (through-the-VFW application traffic)
•
Management connections (to-the-VFW application traffic)
•
Proxy connections
•
Regular expression (regexp) memory
•
Set resource limit as a rate (number per second)
•
Static or dynamic network address translations (Xlates)
By default, when you create a context, the VFW application associates the context with the default resource class. The default resource class provides resources of a minimum of 0 and a maximum of unlimited for all resources.
How to Configure Virtualization
•
Configuring Virtualization
•
Displaying Virtualization Configuration and Statistics
Configuring Virtualization
This task describes how to create and configure the virtualization feature for your VFW application. As the global administrator (SuperUser), you configure and manage all contexts through the Admin context, which contains the basic settings for each virtual device or context. Each context that you configure contains its own set of policies, interfaces, resources, and administrators.
Note
By default, the VFW application provides an Admin context and allows you to configure five user contexts. To create the maximum of 250 user contexts, you must purchase a license from Cisco Systems.
Prerequisites
You must attach from the route processor to the VFW application before you can perform this task. See the "Attaching to the VFW Application" section on page VFC-14.
SUMMARY STEPS
1.
configure
2.
resource-class name
3.
limit-resource {acl-memory | all | buffer {syslog} | conc-connections | mgmt-connections | proxy-connections | rate {bandwidth | connections | inspect-conn | mgmt-traffic | syslog} | regexp | xlates} {minimum number} {maximum {equal-to-min | unlimited}}
4.
exit
5.
context name
6.
member class
7.
do changeto name
8.
exit
9.
domain name
10.
add-object {access-list | all | class-map |interface |parameter-map | policy-map | script} name
11.
exit
12.
role name
13.
rule number {permit | deny} {create | modify | debug | monitor} [feature {AAA | access-list | config-copy | connection | fault-tolerant | inspect | interface || nat | syslog}]
14.
username name1 [password [0 | 5] {password}] [expire date] [role name2 {domain name3 name4 ... namen}]
15.
show running-config
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
configure
Example:
firewall/Admin# configure
Enter configuration commands, one per line.
End with CNTL/Z.
firewall/Admin(config)#
|
Enters global configuration mode. You are now within configuration mode of the VFW application.
|
Step 2
|
resource-class name
Example:
firewall/Admin(config)# resource-class RC1
|
Creates a resource class to allocate and manage the use of system resources by one or more contexts. The VFW application supports a maximum of 100 resource classes.
|
Step 3
|
limit-resource {acl-memory | all | buffer
{syslog} | conc-connections | mgmt-connections
| proxy-connections | rate {bandwidth |
connections | inspect-conn | mgmt-traffic |
syslog} | regexp | xlates} {minimum number}
{maximum {equal-to-min | unlimited}}
Example:
firewall/Admin(config-resource)# limit
resource all minimum 10 maximum equal-to-min
|
Limits resources used by user contexts. The arguments and keywords are:
• acl-memory—Limits memory space allocated for ACLs.
• all—Limits all resources to the specified value for all contexts assigned to this resource class.
• buffer—Limits the number of syslog buffers.
• conc-connections—Limits the number of simultaneous connections.
• mgmt-connections—Limits the number of management (to-the-VFW application) connections.
• proxy-connections—Limits the number of proxy connections.
• rate—Limits the resource as a number per second for:
– bandwidth—Limits context throughput in bytes per second
– connections—Limits the number of connections of any kind per second
– inspect conn—Limits the number of application protocol inspection connections per second for FTP and RTSP only
– mgmt-traffic—Limits management (to-the-VFW application) traffic in bytes per second
– syslog—Limits the number of syslog messages per second
• regexp—Limits the amount of regular expression memory.
• xlates—Limits the number of network and port address translations entries.
|
| |
|
• minimum number—Specifies the lowest acceptable value. Enter an integer from 0.00 to 100.00 percent (two-decimal places of granularity). The number argument specifies a percentage value for all contexts that are members of the class. When used with the rate keyword, the number argument specifies a value per second.
• maximum {equal-to-min | unlimited}—Specifies the maximum resource value: either the same as the minimum value or no limit.
Note The limit you set for individual resources using the limit-resource command overrides the limit you set for all resources using the limit-resource all command.
|
Step 4
|
exit
Example:
firewall/Admin(config-resource)# exit
firewall/Admin(config)#
|
Exits resource configuration mode.
|
Step 5
|
context name
Example:
firewall/Admin(config)# context C1
firewall/Admin(config-context)#
|
Creates a new context.
|
Step 6
|
member class
Example:
firewall/Admin(config-context)# member RC1
|
Associates the context with the resource class that you created in Step 2.
|
Step 7
|
do changeto name
Example:
firewall/Admin(config-context)# do changeto C1
firewall/C1(config-context)#
|
Changes to the context (name) that you created in Step 5 and enters configuration mode in that context.
|
Step 8
|
exit
Example:
firewall/C1(config-context)# exit
firewall/C1(config)#
|
Exits context configuration mode.
|
Step 9
|
domain name
Example:
firewall/C1(config)# domain D1
firewall/C1(config-domain)#
|
(Optional) Creates a domain for the context.
|
Step 10
|
add-object {access-list extended | all |
class-map |interface |parameter-map |
policy-map | script} name
Example:
firewall/C1(config-domain)# add-object
access-list extended acl1
|
Allocates objects (for example, ACLs, and so on) to the domain as needed. The keywords, arguments, and options are:
• access-list extended—Specifies an existing access control list (ACL) that you want to associate with the domain.
• all—Specifies that all existing configuration objects in the context are added to the domain.
• class-map—Specifies an existing class map for flow classification that you want to associate with the domain.
• interface—Specifies an existing interface that you want to associate with the domain.
• parameter-map—Specifies an existing parameter map that you want to associate with the domain.
• policy-map—Specifies an existing policy map that you want to associate with the domain.
• script—Specifies an existing script that you created with the VFW application TCL scripting language.
• name—Identifier of the specified object. Enter an unquoted text string with no spaces and a maximum of 64 alphanumeric characters.
|
Step 11
|
exit
Example:
firewall/C1(config-domain)# exit
firewall/C1(config)#
|
Exits domain configuration mode.
|
Step 12
|
role name
Example:
firewall/C1(config)# role UR1
firewall/C1(config)#
|
(Optional) Creates roles to define the object and resource permissions for different groups of users.
|
Step 13
|
rule number {permit | deny} {create | modify |
debug | monitor} [feature {AAA | access-list |
config-copy | connection | fault-tolerant |
inspect | interface || nat | syslog}]
Example:
firewall/C1(config-role)# rule 1 deny create
feature acl
|
Creates rules to define the role permissions. The keywords, arguments, and options are:
• number—An identifier of the rule and order of precedence, with a higher-numbered rule applied after a lower-numbered rule. Enter a unique integer from 1 to 16.
• deny—Disallows the role to perform the operations defined by the rest of the command keywords.
• permit—Allows the role to perform the operations defined by the rest of the command keywords.
• create—Specifies commands for the creation of new objects or the deletion of existing objects (includes modify, debug, and monitor commands).
• debug—Specifies commands for debugging problems (includes monitor commands).
• modify—Specifies commands for modifying existing configurations (includes debug and monitor commands).
• monitor—Specifies commands for monitoring resources an objects (show commands).
• feature—(Optional) Specifies a particular VFW application feature for which you are configuring this rule.
– AAA—Specifies commands for authentication, authorization, and accounting.
– access-list—Specifies commands for access control lists (ACLs). Includes ACL configuration, class maps for ACL, and policy maps containing ACL class maps.
– config-copy—Specifies commands for copying the running-config to the startup-config, startup-config to the running-config, and copying both config files to the flash disk (disk0:) or a to remote server.
– connection—Specifies commands for network connections.
– fault-tolerant—Specifies commands for redundancy.
– inspect—Specifies commands for packet inspection used in data-center security.
– interface—Specifies all interface commands.
– nat—Specifies commands for network address translation (NAT) associated with a class map in a policy map used in data-center security.
– syslog—Specifies the system logging facility setup commands.
|
Step 14
|
username name1 [password [0 | 5] {password}]
[expire date] [role role {domain domain1
domain2 ... domain10}]
Example:
firewall/C1(config)# username user1 password 5
MYPASSWORD role Network-Admin domain D1
|
Configures users as required and associates roles and domains with the users. The keywords, arguments, and options are:
• name1—Identifier of the user you are creating. Enter an unquoted text string with no spaces and a maximum of 24 characters.
• password—(Optional) Keyword that indicates that a password follows.
• 0—(Optional) Specifies a clear text password.
• 5—(Optional) Specifies an MD5-hashed strong encryption password.
• password—(Optional) Password in clear text, encrypted text, or MD5 strong encryption, depending on the numbered option (0, 5, or 7) you enter. If you do not enter a numbered option, the password is in clear text by default. If you enter the password keyword, you must enter a password. Enter a password as an unquoted text string with a maximum of 32 characters.
• expire date—(Optional) Specifies the expiration date of the user account. Enter the expiration date in the format yyyy-mm-dd.
• role role—(Optional) Specifies role that you want to assign to the user. Use the show role command to display available roles and their associated permissions. The role argument is context sensitive.
• domain domain1 domain2 ... domain10—Specifies the domains in which the user can operate. You can enter multiple domain names up to a maximum of 10, including default-domain.
|
Step 15
|
show running-config
Example:
firewall/C1# show running-config context
firewall/C1# show running-config domain
firewall/C1# show running-config
resource-class
firewall/C1# show running-config role
|
(Recommended) Verifies the virtualization configuration.
|
Table 4 lists the managed system resources of the VFW application. You can limit these resources per context or for all contexts associated with the resource class using the limit-resource command. See Step 3 in the task table.
Table 4 System Resource Maximum Values
Resource
|
Maximum Value
|
ACL Memory
|
78,610,432 bytes
|
Buffer Memory (Syslog)
|
4,000,000 bytes
|
Concurrent Connections
|
4,000,000 connections
|
Management Connections
|
5000 connections
|
Proxy Connections
|
524286 connections
|
Rate
|
Bandwidth
|
4 gigabits per second (Gbps)
You can upgrade the VFW application maximum bandwidth to 8 Gbps by purchasing a separate license from Cisco Systems.
|
Connections (any kind)
|
1,000,000 connections per second
|
Management Traffic
|
125,000,000 connections per second
|
Syslog
|
For to the VFW application traffic, 5 K messages per second
For through the VFW application traffic, 400 K messages per second
|
Regular Expression Memory
|
1,048,576 bytes
|
Xlates (network and port address translation entries)
|
524286 translations
|
The permissions of each of the system-defined roles are displayed using the show role command:
firewall/Admin# show role
Role: Admin (System-defined)
Description: Administrator
---------------------------------------------
Rule Type Permission Feature
---------------------------------------------
2. Permit Create user access
4. Permit Create changeto
Role: Network-Admin (System-defined)
Description: Admin for L3 (IP and Routes) and L4 VIPs
---------------------------------------------
Rule Type Permission Feature
---------------------------------------------
1. Permit Create interface
2. Permit Create connection
4. Permit Create config_copy
5. Permit Create changeto
Role: Security-Admin (System-defined)
Description: Administrator for all security features
---------------------------------------------
Rule Type Permission Feature
---------------------------------------------
1. Permit Create access-list
3. Permit Create connection
4. Permit Modify interface
7. Permit Create config_copy
8. Permit Create changeto
Role: Network-Monitor (System-defined)
Description: Monitoring for all features
---------------------------------------------
Rule Type Permission Feature
---------------------------------------------
2. Permit Monitor changeto
Displaying Virtualization Configuration and Statistics
This task describes the available commands to display to display configuration and statistical information for the contexts configured on your VFW application. There is no specific order to the steps in this task.
Prerequisites
You must attach from the route processor to the VFW application before you can perform this task. See the "Attaching to the VFW Application" section on page VFC-14.
SUMMARY STEPS
1.
show context context-name
2.
show resource allocation
3.
show resource usage context name resource conc-connections counter denied count_threshold
4.
show role
5.
show domain name
6.
show users name
7.
show user-account name
8.
clear user name
9.
clear statistics all
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
show context context-name
Example:
firewall/Admin# show context C1
|
(Optional) Displays a list of contexts including the name, description, resource class, and interfaces.
|
Step 2
|
show resource allocation
Example:
firewall/C1# show resource allocation
|
(Optional) Displays the allocation for each resource across all resource classes and class members. This command shows the resource allocation, but does not show the actual resources being used.
|
Step 3
|
show resource usage context name resource
conc-connections counter denied
count_threshold
Example:
firewall/C1# show resource allocation context
C1 resource concurrent-connections counter
denied 0
|
(Optional) Displays the resource usage for each context from the Admin context.
|
Step 4
|
show role
Example:
firewall/C1# show role
|
(Optional) Displays predefined and user-configured roles.
|
Step 5
|
show domain name
Example:
firewall/C1# show domain D1
|
(Optional) Displays information about the configured domains in the VFW application.
|
Step 6
|
show users name
Example:
firewall/C1# show users admin
|
(Optional) Displays information about users that are currently logged in to the VFW application.
|
Step 7
|
show user-account name
Example:
firewall/C1# show user-account admin
|
(Optional) Displays user account information.
|
Step 8
|
clear user name
Example:
firewall/C1# clear user John
|
(Optional) Forces a user to log out (clears the user session).
|
Step 9
|
clear stats all
Example:
firewall/C1# clear stats all
|
(Optional) Clears all statistical information in a context.
|
Configuration Examples for Virtualization
The following running-configuration example illustrates a basic virtualization configuration with one user-defined context, one resource class, one domain, and one user.
firewall/Admin(config)# resource-class RC1
firewall/Admin(config-resource)# limit-resource rate syslog minimum 10.00 maximum
equal-to-min
firewall/Admin(config-resource)# limit-resource acl-memory minimum 10.00 maximum unlimited
firewall/Admin(config-resource)# exit
firewall/Admin(config)# access-list ACL1 line 10 extended permit ip any any
firewall/Admin(config)# domain D1
firewall/Admin(config-domain)# add-object access-list extended ACL1
firewall/Admin(config-domain)# exit
firewall/Admin(config)# role Admin
firewall/Admin(config)# context C1
firewall/Admin(config-context)# description accounting department
firewall/Admin(config-context)# member RC1
firewall/Admin(config-context)# exit
firewall/Admin(config)# username JANE password 5 adropgijaeprgja9erjg2uWgtce1 role Admin
domain D1
Additional References
The following sections provide references related to virtualization.
Related Documents
Related Topic
|
Document Title
|
Virtual firewall virtualization command syntax
|
"Virtualization Commands on the Virtual Firewall" module in Cisco IOS XR Virtual Firewall Command Reference
|
Standards
Standards
|
Title
|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
|
—
|
MIBs
RFCs
RFCs
|
Title
|
No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.
|
—
|
Technical Assistance
Description
|
Link
|
The Cisco Technical Support website contains thousands of pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content.
|
http://www.cisco.com/techsupport
|