|
This chapter describes all of the configurable attributes in the Subscriber Edge Services Manager (SESM) software components. Use this chapter to change or fine-tune attributes after installation.
This chapter includes the following topics:
This section provides an overview of the configuration technology used by SESM. It includes the following topics:
If you change configuration information, you must stop and restart the SESM web application and the Jetty server. If you deployed SESM in LDAP mode, you also must stop and restart RDP. See "Running SESM Components," for instructions.
SESM configuration is based on the Java Management Extensions (JMX) specification and its related JMX MBean standards. For descriptions of these standards, go to:
http://java.sun.com/products/JavaManagement
The configuration elements involved in SESM are:
Cisco ConfigAgent performs the following management functions for MBeans.
The contents of the MBean configuration files control ConfigAgent activity.
This section includes the following topics:
The J2EE configuration files, such as web. xml and webdefaults.xml, define how the applications run in the J2EE environment. These files conform to Java specifications, as described in the Java Servlet Version 2.3 specifications from Sun Microsystems.
The Cisco Subscriber Edge Services Manager Web Developer Guide describes application-specific parameters in the J2EE configuration files. For information about other parameters, see the Java Servlet Version 2.3 specifications. To download these specifications, go to:
Table 6-1 shows the J2EE configuration files used to configure SESM web portals.
Component | File Path and Name | Description |
---|---|---|
Container (Jetty) | jetty
| This file sets attributes for the Jetty server's handling of HTTP requests and how they map to servlets and JSPs. |
SESM web application | applicationName
| This file defines J2EE application parameters, including parameters related to Java Server Pages (JSPs). There is a separate web.xml file for each web application. |
Table 6-2 lists all of the MBean configuration files in an SESM deployment.
Component | File Path and Name | Description |
---|---|---|
Container (Jetty) | jetty
| These files configure the Jetty server instance associated with each application. These files configure:
|
SESM web portals | nwsp
wap
pda
captiveportal
messageportal
| This file configures:
|
RDP | rdp
| This file configures:
|
CDAT | cdat
| This file configures:
|
SPE | dess-auth
| This file configures attributes used by the executing classes in the SPE application programming interfaces (APIs). The SPE APIs provide the underlying support for communication between an LDAP directory and the RDP, CDAT, and SESM portal applications. If these applications are installed on the same machine, the same config.xml file applies to all of the applications. This file configures LDAP directory security and connection attributes, SPE caching, and SPE logging. |
This section summarizes the MBean file format defined in xmlconfig.dtd. The purpose of this summary is to provide enough information for you to easily edit the MBean files. For the full text of the DTD, including extensive comments, see "DTD for MBean Configuration Files."
Use the following example as a reference while reading the format guidelines that follow. The example configures the debugging MBean for an SESM application.
<Instantiate order="1"
class="com.cisco.aggbu.jmx.LoggerMBean"
jmxname="com.cisco.aggbu:name=Logger"/>
</Instantiate>
<!-- ================================================================ -->
<Configure jmxname="com.cisco.aggbu:name=Logger">
<Set name="debug" type="boolean"><SystemProperty name="nwsp.debug"
default="false"/></Set>
<Set name="debugPatterns"></Set>
<Set name="debugThreads"></Set>
<Set name="debugVerbosity">LOW</Set>
<Set name="logDateFormat">yyyyMMdd:HHmmss.SSS</Set>
<Set name="logFile"><SystemProperty name="application.log"
default="./logs"/>/yyyy_mm_dd.application.log</Set>
<Set name="logFrame" type="boolean">false</Set>
<Set name="logStack" type="boolean">false</Set>
<Set name="logThread" type="boolean">true</Set>
<Set name="logToErr" type="boolean"><SystemProperty name="nwsp.logToErr"
default="false"/></Set>
<Set name="trace" type="boolean">true</Set>
<Set name="warning" type="boolean">true</Set>
</Configure>
The following guidelines explain the basic format of the MBean configuration files.
<set name="parmName" [type="dataType"]>value</set>
The MBean configuration files use Java system properties as the value for some attributes. The value of a Java system property is set as follows:
1. You can specify a value on the command line at run time. The command line value overrides all other values. The -D argument to the JAVA command defines the value of a system property.
2. You can specify a value in the startup script. For example, the following lines from the installed start scripts (START.sh or START.cmd) set some system properties.
$JAVA -Xmx64m -Xmx64m\
-classpath $CLASSPATH \
-Djetty.home=$JETTYDIR \
-Dapplication.home=$APPDIR \
-Dapplication.log=$LOGDIR \
-Dapplication.portno=$PORTNO \
3. If a value is not specified by either of the above methods at run time, the application uses a default value specified in the MBean configuration file.
<SystemProperty name="propertyName" default="value"/>
Note If a system property is defined in the startup script, the default values in the MBean configuration files are not used, unless you delete the setting in the startup script. |
This section includes the following topics:
This section defines containers and applications, and describes the relationship between them.
SESM applications and CDAT are J2EE web applications. The J2EE web server is the container for the applications that run in it. For example, the Jetty server is the container for the installed NWSP application.
This one-to-one relationship means that you can configure the J2EE server differently for each application. For example, you can turn on logging for one application and turn it off for another.
Each SESM web application (and also CDAT) has two MBean configuration files associated with it. The two files are:
nwsp
config
nwsp.xml
cdat
config
cdat.xml
jetty
config
nwsp.jetty.xml
cdat.jetty.xml
newapplication.jetty.xml
This modular approach has the following advantages:
The RDP and SPE components are not web applications. Therefore, the jetty directory does not contain an MBean configuration file for those components.
jetty
config
nwsp.jetty.xml
cdat.jetty.xml
The container MBean configuration files configure the following MBeans:
Table 6-3 describes the attributes in the container MBean configuration files. For an example file, see the "Sample Container MBean Configuration File" section.
Object Name | Attribute Name | Explanation | |
---|---|---|---|
Indicates if messages overwrite existing contents (false) or are appended to the existing file (true). Installed default: true | |||
Specifies the log filename and path, as follows:
Where:
| |||
Installed default: empty | |||
Controls the format of the date stamp in the log messages. Installed default: yyyyMMdd:HHmmss.SSS | |||
Controls whether or not logging messages include frame details. Installed default: false | |||
Installed default: false | |||
Controls whether or not logging messages include an indication of stack depth. Installed default: false | |||
Controls whether or not logging messages include trace information. Installed default: false | |||
Installed default: false | |||
Installed default: false | |||
Indicates the number of days to keep an old log file before deleting it. Installed default: 31 | |||
Controls whether or not debugging messages are produced. Installed default: false | |||
By specifying one or more patterns, you turn on a filtering mechanism that excludes any message that does not match the pattern. The patterns are file, class, or method names. Pattern matching is based on substring matches. For example, if you specify the pattern RADIUS, the software focuses on RADIUS messages. To specify multiple patterns, separate the patterns using a comma. Installed default: empty | |||
Installed default: empty | |||
Specifies the level of detail reported in debugging messages. The range of allowed values is 0 (no details) to 255 (all details). Installed default: 0 | |||
Controls whether or not stack information is included in debug messages. Installed default: false | |||
Controls whether or not warning messages are included in debug messages. Installed default: false | |||
Sets the port number that the web server listens on. The installed value is a Java system property named: application.portno
Note The startup script sets this system property. Unless you alter the startup script, the default value in the MBean configuration file is ignored during application startup. To change the value of Installed value: The SESM installation program sets the | |||
Sets the minimum number of threads that this listener will maintain during periods of low load. This listener will always have system resources allocated for this number of threads. Installed default: 5 | |||
Sets the maximum number of threads that this listener can allocate resources for, even during peak loads. This listener can have up to this number of threads. Installed default: 255 | |||
Specifies how long a thread can be idle (not used) before the listener deallocates it. The unit is milliseconds. Installed default: 60000 | |||
Specifies the time that a read on a request can block. This is how long the web server waits for a request to come from a client after the client opens a socket connection. When maxReadTimeMs is exceeded, the web server closes the socket connection. Installed default: 60000 | |||
Jetty | Sets the port that the secure socket layer (SSL) listener uses. The installed value is a Java system property named: application.ssl.portno
Note The startup script sets this system property. Unless you alter the startup script, the default value in the MBean configuration file is ignored during application startup. The generic startup script derives a value for application.ssl.portno = application.portno - 80 + 443
To change the value of | ||
Sets the minimum number of threads that this listener will maintain during periods of low load. This listener will always have system resources allocated for this number of threads. Installed default: 5 | |||
Sets the maximum number of threads that this listener can allocate resources for, even during peak loads. The listener can allocate up to this number of threads. Installed default: 255 | |||
Specifies the length of time a thread can be idle (not used) before the listener deallocates it. The unit is milliseconds. Installed default: 50000 | |||
Sets the path name of the SSL keystore file. The keystore file is a binary file created by keytool. A sample keystore file is included in the installation. The name and location of the sample is:
Where:
| |||
Must match the value in the keystore file referenced above. | |||
Must match the value in the keystore file referenced above. | |||
Jetty Configures a log file that records the incoming HTTP requests. | This is a positional argument. |
Where:
| |
Indicates the number of days to keep an old log file before deleting it. Installed default: 90 | |||
Indicates whether or not to append messages to an existing file or to create a new file for each application instance. Installed default: true | |||
Jetty <Call AddWebApplication> This call adds the NWSP application to run on the web server. | These are positional arguments. | AddWebApplication has five positional arguments: 1. The first positional argument specifies the virtual host name for the web server application. 2. The second positional argument specifies the context path for locating the web server application. For example, / or /pathname/*. 3. The third positional argument identifies the location of the application. The value is:
4. The fourth positional argument identifies the location of the webdefault.xml file for this application. The value is:
5. The fifth positional argument specifies whether or not web archive (WAR) files are used. Valid values are TRUE and FALSE. Set this value to FALSE, because NWSP and CDAT are not WAR files. The first three arguments define the location of the web server application. host/context/application
The NWSP start script derives the values for application.home and jetty.home from an expected (installed) directory structure. To change the value of application.home or jetty.home, edit the start script. |
nwsp
config
nwsp.xml
The application MBean configuration file configures the following MBeans:
Table 6-4 explains the configurable attributes in the MBeans listed above. For an example file, see the "Sample Application MBean Configuration File" section.
Object | Attribute Name | Explanation |
---|---|---|
Turns debugging on or off. Note that logging is on regardless of this value.
The following parameters control the contents of debug messages that the application generates: logFrame, logStack, logThread, debugPatterns, and debugThreads. The following parameters control the types of logging messages produced: trace and warning. Installed default: false | ||
By specifying one or more patterns, you turn on a filtering mechanism that excludes any message that does not match the pattern. The patterns are file, class, or method names. Pattern matching is based on substring matches. For example, if you specify the pattern RADIUS, the software focuses on RADIUS messages. To specify multiple patterns, separate the patterns using a comma. Installed default: empty, which means that you receive all messages. | ||
Specifies a specific thread name for which to show debugging messages. You can specify multiple thread names, separating them using a comma. By default, no thread name is specified. Because each user interaction with the SESM web application takes place in a thread named for that user, this parameter can be used to focus the logging trace on a specific user activity. (This feature is not implemented in SESM Release 3.1(1).) Installed default: empty | ||
Specifies the level of detail in debugging messages. When the debug attribute is set to false, this attribute is ignored. Values are:
Installed default: LOW | ||
Specifies format of dates in the log file. Installed default: yyyyMMdd:HHmmss.SSS | ||
Logger (continued) | Specifies the filename and location for the logging (tracing) of business events performed by the SESM application. The installed default is:
Where:
| |
Controls whether or not to log the calling member function. Installed default: false | ||
Controls whether or not to log stack traces. Installed default: false | ||
Controls whether or not to log thread IDs. Installed default: true | ||
Controls whether or not to route log messages to stderr, in addition to the log file. This parameter is useful for monitoring the SESM web application at the command line. Displaying output to stderr is not recommended for production deployments. Installed default: true | ||
Controls whether or not to log trace messages. These messages indicate entry and exit to code points. Installed default: true | ||
Controls whether or not to log warning messages (nonfatal exceptions). Installed default: true | ||
Specifies a port for a management console. The management console displays the current settings of all attributes in all of the MBean configuration files. The console is useful in development and testing environments. Note The ManagementConsole is the HTML adaptor server included with the Sun example JMX server. However, the HTML adaptor server is not production quality. For example, configuration changes that you make using the management console are not persistent. You should remove the HTML adaptor server from your configuration before transitioning the SESM deployment to public use. To remove the JMX HTML adaptor server, comment out the following lines in the configuration files: <Configure jmxname="com.cisco.aggbu:name=ManagementConsole">
<Call name="start"/>
</Configure>
The port value is a Java system property named: management.portno
All of the installed startup scripts set this Java system property to the following value:
For example, if the application.portno is 8080, the management.portno is 8180. This runtime setting overrides any value you enter in the configuration file. To change the value of this attribute, edit the start script. | ||
AuthInfo provides a level of access control on the Management Console. When a user attempts to access the management console port from a web browser, a logon window appears first. The user must enter a user ID and password that matches the values specified here. AuthInfo requires two positional arguments: 1. User IDEnter a user ID that will be required to access the management console. The default value in all of the MBean configuration files is 2. PasswordEnter a password that will be required to access the management console. The default value in all of the MBean configuration files is | ||
An SESM portal runs in one of the following modes.
The value for mode is a Java system property named:
This system property is different from most of the other system properties used in the MBean configuration files, in that, by default, the startup script does not set this system property. Therefore, the application runs in the mode specified in the MBean configuration file unless you explicitly override that value at run time. The installation program sets the default value to match the type of installation you perform (RADIUS, LDAP, or Demo.) To change the mode, you can:
Note The best way to change the SESM mode is to reinstall the software. Several other configuration attributes must be aligned with the mode for SESM to run properly in the selected mode. Also, you might not have all of the appropriate components to run in a mode other than the one you installed. For example, a demo installation does not install the SPE component. | ||
SESM (continued) | Enables or disables the single sign-on feature.
Installed default: true | |
In RADIUS mode, set this attribute to false, because SSG automatically makes the connections immediately after authentication. You do not need SESM to request those connections. In LDAP mode, the SSG performs automatic connections if it obtains a service list from the RDP. If SSG does not obtain the service list from RDP, you should set this attribute to true. The Add Services option, which is set during RDP installation, controls whether or not the RDP returns a service list to SSG. The Add Services option configures RDP to either:
| ||
Specifies the time in seconds that a service or group object must be idle in the cache before its resources are deallocated from memory. Installed default: 600 | ||
The minimum time in seconds that an SESM session can be in memory without being accessed. Installed default: 1200 | ||
SESM (continued) |
Installed default: false | |
Specifies the file that contains data for demo mode. The installed value is:
Where:
The NWSP start script derives the value for application.home from an expected (installed) directory structure. To change the value of application.home, edit the start script. | ||
The time in seconds between checking the authorization tokens. Default: 300 seconds | ||
The length of time in seconds a token can remain in cache without being used before it is deleted. Default: 600 seconds | ||
Global attributes The global attributes apply to all SSGs that the SESM web application might communicate with. To determine how an SSG was configured, use the show run command on the SSG host. | The global value for the maximum number of simultaneous requests that SESM portals can send to an SSG. The RADIUS protocol queues additional requests and issues them as the SSG returns responses or timeout messages for previous requests. You cannot override the global value. (The same throttle value applies to all SSGs.) Installed default: 20 | |
The global value for RADIUS ports on the SSG hosts. This value must match the value that was configured on the SSG device using the following command:
You can create subnet entries in the MBean configuration file to override this global value for specific SSGs. | ||
The number of seconds the SESM web application waits before timing out RADIUS packets that it sends to SSG. You cannot override this global value. Installed default: 5 | ||
The number of times the SESM web application resends a RADIUS packet to SSG if no response is received. You cannot override this global value. Installed default: 3 | ||
The global value for the RADIUS protocol shared secret used for communication between the SESM web application and the SSGs. This value must match the value entered on the SSG device using the You can create subnet entries in the MBean configuration file to override this global value for specific SSGs. | ||
The global value for the mask that the SESM web application applies to incoming subscriber IP addresses to derive an IP address for the SSG. You can create subnet entries in the MBean configuration file to override this global value for specific subnets. | ||
The global value for the port bundle length that SSGs use when the port-bundle host key feature is enabled. The port bundle length is the number of bits that SSG uses to indicate bundled slots. For example, a value of 4 indicates 16 bundled slots. This value must match the value used in the following command on the SSG host: ssg port-map length
Default: You set this value during installation. | ||
SSG global attributes (continued) | The global value indicating whether or not the port-bundle host key feature is enabled on the SSGs. If BUNDLE_LENGTH is zero, then the value of this switch is important.
Note If BUNDLE_LENGTH is non-zero, this switch is ignored, because a nonzero value implies the use of the host key feature. | |
Use subnet entries to override the global values or to map client subnets to specific SSGs when the port-bundle host key feature is not being used. | Subnet entries use positional arguments. | The call to setSubnetAttribute has four positional arguments: 1. subnetAddress is the subnet for which you are explicitly setting a value, overriding the globally set value. 2. subnetMask is the mask that can be applied to the subscriber's IP address to derive the subnet. 3. argumentName is the argument that you are explicitly setting. 4. argumentValue is the value for argumentName. See the "Associating SSGs and Subscriber Requests" section for more information. |
This MBean defines communication between the SESM web application and the RADIUS server, which occurs only when the SESM application is running in RADIUS mode. | The Configure element in the AAA MBean includes a connection attribute that identifies the type of request. Values are:
| |
The maximum number of simultaneous requests that SESM web applications can send to a RADIUS server. This is a RADIUS protocol attribute. The RADIUS protocol queues additional requests and issues them as the server returns responses or timeout messages for previous requests. Installed default: 256 | ||
The number of seconds the SESM web application waits before timing out RADIUS packets that it sends to the AAA server. Installed default: 4 | ||
The number of times the SESM web application resends packets to the AAA server if no response is received. Installed default: 3 | ||
The IP address or the host name of the primary AAA server. | ||
The port number that the primary RADIUS server listens on. Default: 1812 | ||
The shared secret used between the RADIUS server and the SESM web application. The shared secret must be the same for the primary and secondary servers. It must match the secret specified when you configured SESM as a NAS client on the RADIUS server. Default: | ||
The IP address or host name of the secondary AAA server. If you are not using a secondary RADIUS server, reenter the primary server. | ||
The port number that the secondary RADIUS server listens on. If you are not using a secondary server, reenter the primary server. Default: 1812 | ||
The password that the SESM web application uses to request service profiles from the RADIUS server. It must match the service password values used in the service profiles in the RADIUS database. It must also match the value that was configured on the SSG host with the following command: ssg service-password password
The service-password value must be the same on all of your SSGs. Default: | ||
The password that the SESM web application uses to request group profiles from the RADIUS server. It must match the service group password values used in the service group profiles in the RADIUS database. Default: | ||
WebApp | Controls whether or not the application prompts the user for confirmation before it acts on a request to start a service. Default: FALSE | |
Controls whether or not the application prompts the user for confirmation before it acts on a request to log off. Default: TRUE | ||
Controls whether or not the application prompts the user for confirmation before it acts on a request to log off of the SESM application. Default: TRUE | ||
The number of seconds of inactivity allowed before the application closes a session. This value overrides the timeout value in the nwsp.jetty.xml file. Default: 7200 | ||
Controls the maximum length of user names and passwords. Default: 30 | ||
These attributes are related to the captive portal solution. See Table 8-6 for explanations of these attributes. | ||
Call addDimension | The addDimension call adds any arbitrary property to an incoming request. See the "Configuration-based Location and Brand Awareness" section for more information. |
A typical SESM deployment consists of multiple SSGs. An SESM web application must know which SSG is handling each subscriber request. This section describes how to configure the associations between a subscriber request and its SSG. It includes the following topics:
Note To use the port-bundle host key feature, the SSG device must be running Cisco IOS Release 12.2(2)B or later and the SSG port-bundle host key feature must be configured appropriately. |
When the port-bundle host key feature is enabled on an SSG, the SSG replaces the subscriber IP address in the request with a software token (or key) when it forwards the request to SESM. The SESM application uses this key in its responses to SSG, and the SSG does an internal translation to an actual host object.
The key is a unique combination of an SSG IP address from a range of IP addresses and a port number from a range of port numbers, as follows:
The IP address and port ranges are configured on each SSG. The key uniquely identifies each subscriber currently logged on to SESM, even when multiple subscribers are using the same IP address.
To use the port-bundle host key feature to associate SSGs, follow these procedures:
1. Enable and configure the port-bundle host key feature on all of the SSGs, as described in the "Configuring the Host Key Port Bundle Feature on SSG" section.
2. Configure the same values on all of the SSG hosts for the following attributes:
ssg radius-helper
authenticationPort
ssg radius-helper
key
ssg port-map length
3. Enter these globally configured values when the SESM installation program prompts you for them. These values are reflected in global elements in the <Configure name="SSG"> section of the application MBean configuration file, as the following example illustrates.
When the port-bundle host key feature is enabled and configured, you can set all parameters globally.
<Configure name="com.cisco.aggbu:name=SSG">
<Call name="setGlobalAttribute"><Arg>PORT</Arg><Arg>1812</Arg></Call>
<Call name="setGlobalAttribute"><Arg>SECRET</Arg><Arg>cisco</Arg></Call>
<Call name="setGlobalAttribute"><Arg>MASK</Arg><Arg>255.255.255.255</Arg></Call>
<Call name="setGlobalAttribute"><Arg>BUNDLE_LENGTH</Arg><Arg>4</Arg></Call>
</Configure>
In this example, all SSGs are configured to use a port of 1812 and a shared RADIUS secret of cisco
. The BUNDLE_LENGTH of 4 indicates that port-bundle host key is configured on all SSGs.
The MASK attribute specifies the mask that SESM applies to the client (source) IP address in a received message to determine the client's subnet, and, from that, the SSG IP address. However, when a host key is used, the client (source) IP address is the SSG IP address. The SESM installation program provides the default mask of 255.255.255.255.
If port-bundle host key is enabled on all SSGs, but some are configured differently, you can configure the global case and then specifically configure the exceptions. For example, if all but one SSG is assigned the same shared secret, you can configure the shared secret attribute globally, and then add one subnet entry to configure the different secret for the one SSG.
The installation program lets you provide one set of SSG global attribute values and one subnet entry. It records these attribute values in the <Configure name="SSG"> section of the application MBean configuration file, as illustrated in the following example.
In this example, port-bundle host key is enabled on all SSGs. In addition, all SSGs are using the same port, secret, and client IP address mask, except that one SSG uses a different port. In this case, you can set all parameters globally, and then use one subnet entry to define:
In the following example, the SSG that services subnet 10.1.1.0 uses port 1245.
<Configure name="com.cisco.aggbu:name=SSG">
<Call name="setGlobalAttribute"><Arg>PORT</Arg><Arg>1812</Arg></Call>
<Call name="setGlobalAttribute"><Arg>SECRET</Arg><Arg>cisco</Arg></Call>
<Call name="setGlobalAttribute"><Arg>MASK</Arg><Arg>255.255.255.255</Arg></Call>
<Call name="setGlobalAttribute"><Arg>BUNDLE_LENGTH</Arg><Arg>4</Arg></Call>
<Call name="setSubnetAttribute"><Arg>10.1.1.0</Arg><Arg>255.255.255.0</Arg><Arg>PORT
</Arg><Arg>1245</Arg></Call>
</Configure>
Each request arriving at an SESM web application contains a source, or client, IP address. SESM uses this client IP address to determine which SSG should handle each request.
<Call name="setSubnetAttribute">
<Arg>10.2.0.0</Arg><Arg>255.255.0.0</Arg><Arg>IP</Arg><Arg>10.6.7.1</Arg></Call>
In this example, port-bundle host key is not being used. In this case, you must explicitly define the mapping from subscriber subnet to the SSG IP address.
<Configure name="com.cisco.aggbu:name=SSG">
<Call name="setGlobalAttribute"><Arg>PORT</Arg><Arg>1645</Arg></Call>
<Call name="setGlobalAttribute"><Arg>SECRET</Arg><Arg>cisco</Arg></Call>
<Call name="setGlobalAttribute"><Arg>MASK</Arg><Arg>255.255.255.255</Arg></Call>
<Call name="setGlobalAttribute"><Arg>BUNDLE_LENGTH</Arg><Arg>0</Arg></Call>
<Call name="setSubnetAttribute"><Arg>10.1.1.0</Arg><Arg>255.255.255.0</Arg><Arg>IP
</Arg><Arg>10.21.1.2</Arg></Call>
<Call name="setSubnetAttribute"><Arg>10.1.2.0</Arg><Arg>255.255.255.0</Arg><Arg>IP
</Arg><Arg>10.21.2.2</Arg></Call>
<Call name="setSubnetAttribute"><Arg>10.1.3.0</Arg><Arg>255.255.255.0</Arg><Arg>IP
</Arg><Arg>10.21.3.2</Arg></Call>
<Call name="setSubnetAttribute"><Arg>10.1.4.0</Arg><Arg>255.255.255.0</Arg><Arg>IP
</Arg><Arg>10.21.4.2</Arg></Call>
</Configure>
You can set the attributes that associate an SSG with subscriber requests globally, by client subnet, or for a specific client IP address, as follows:
The format for the global attribute entries is illustrated in the following examples:
<Configure name="com.cisco.aggbu:name=SSG">
<Call name="setGlobalAttribute"><Arg>PORT</Arg><Arg>1645</Arg></Call>
<Call name="setGlobalAttribute"><Arg>SECRET</Arg><Arg>cisco</Arg></Call>
<Call name="setGlobalAttribute"><Arg>MASK</Arg><Arg>255.255.255.0</Arg></Call>
<Call name="setGlobalAttribute"><Arg>BUNDLE_LENGTH</Arg><Arg>0</Arg></Call>
</Configure>
The format for subnet entries is:
<Call name="setSubnetAttribute">
<Arg>subnetAddress</Arg>
<Arg>subnetMask</Arg>
<Arg>argumentName</Arg>
<Arg>argumentValue</Arg>
</Call>
argumentName Value | argumentValue Explanation |
---|---|
The SSG port for the specified subnet. Overrides the globally-set SSG port. | |
The mask used on the subscriber's IP address to derive the subnet. Overrides the globally-set mask. | |
The shared secret used between SESM and SSG. Overrides the globally-set shared secret. | |
The host key bundle length used on the SSG. Overrides the globally-set bundle length. Bundle length is the number of bits that SSG uses for the port bundle feature. For example, a value of 4 indicates 16 bundled slots. A value of 0 indicates that the SSG is not using the port-bundle host key mechanism. This value must match the value used in the following command on the SSG host: ssg port-map length
To determine how SSG has configured the port bundle length, use the show run command on the SSG host. | |
Explicitly sets the IP address for the SSG that services the specified subnetAddress. | |
The location associated with the specified subnet. Valid values are defined as arbitrary properties in the WebApp MBean. See the "Configuration-based Location and Brand Awareness" section for more information. | |
The brand of service associated with the specified subnet. Valid values are defined as arbitrary properties in the WebApp MBean. See the "Configuration-based Location and Brand Awareness" section for more information. |
This section describes how to configure the RDP application. The section includes the following topics:
You choose the mode during RDP installation. The content of the rdp.xml file is significantly different depending on the mode. Therefore, to change the mode, we recommend reinstalling the RDP component. (Choose a Custom installation to reinstall a single component.)
The MBean configuration file for RDP is located in:
rdp
config
rdp.xml
The rdp.xml file configures the following MBeans:
Table 6-6 explains the configurable attributes in these MBeans. For an example file, see the "Sample RDP MBean Configuration File" section.
MBean | Attribute Name | Explanation |
---|---|---|
See the Logger object in Table 6-4. | ||
See the ManagementConsole object in Table 6-4. | ||
Note RDP uses password values, described below, to identify the type of request it receives and determine how to handle the request. Each of the three password values must be unique. The only attributes in this MBean that administrators must change are the password attributes associated with service profile requests. These password attributes are used to identify a service request as one of the following: a single service request, a service group request, or a next hop table request. SSG sets the password in the request; RDP interprets the password. You must configure the values on both sides, as follows:
If the password in a request from SSG does not match one of the three values you set on the RDP side, the request is discarded. To find the password attributes in this MBean, search the file for the following string: <arg>PASSWORD:
No security implications exist for these attributes. It might be helpful to view the attributes as identifying keys, rather than passwords. The three password attributes are:
ssg next-hop download nextHopTableName password
See one of the following sections for more information about matching these password values to values configured elsewhere in an SESM deployment:
See "RDP Packet Handlers," for more information about how RDP processes requests from SSG. | ||
The useClientList attribute, which appears later in this MBean, affects how the secret attribute is used.
radius-server key SharedSecret
The installation program's displayed default is cisco. | ||
Enter the IP address or host name of the RDP. Note This value cannot be localhost (127.0.0.1) | ||
Enter the port on which the RDP will listen. The installed value is a Java system property:
The installation program sets the value of application.portno in the RDP startup script to whatever you specified during installation. To change the value of application.portno, edit the start script. The installation program's displayed default is 1812. | ||
Sets the minimum number of threads that RDP will maintain during periods of low load. RDP will always have system resources allocated for this number of threads. Installed default: 10 | ||
The total number of simultaneous requests that the RDP can handle. If the RDP is receiving more requests than the current setting, and the RDP host machine is not processor-bound, then you can increase this number for a potential performance improvement. Installed default: 256 | ||
The number of milliseconds that a thread can remain idle before the system deallocates its resources. Installed default: 10000 | ||
Specifies whether to use the 2-key or 3-key method to authenticate a subscriber.
Installed default: false | ||
RDP (continued) | Specifies the RADIUS attribute number to use for the additional key when 3-key authentication is turned on. Any standard RADIUS attribute can be used. Typical values are: | |
Turns the RDP restricted client feature on or off. Values are:
You set the initial value of this attribute during RDP installation. | ||
These are positional arguments. |
radius-server key SharedSecret
| |
This MBean applies only when RDP is configured in Proxy mode. | The Configure tag for the AAA MBean includes a connection attribute whose value is either: The RDP proxy handlers use the connection name to identify the AAA server to proxy the request to. | |
Installed default: 256 | ||
The number of seconds RDP waits before timing out RADIUS packets that it sends to the AAA server. Installed default: 4 | ||
The number of times RDP resends packets to the AAA server if no response is received. Installed default: 1 | ||
Enter the IP address or the host name of the primary RADIUS AAA server that you want RDP to communicate with. | ||
Enter the port number on the primary RADIUS server host that the RADIUS server listens on. | ||
Enter the RADIUS client shared secret used between RDP and the RADIUS server. The shared secret must be the same for both servers. The installation program's displayed default value is | ||
Enter the IP address or the host name of the secondary RADIUS server. If you are not using a secondary RADIUS server, enter the same value used for the primary server. | ||
Enter the port number on the secondary RADIUS server host that the RADIUS server listens on. If you are not using a secondary RADIUS server, enter the same value used for the primary server. |
Make sure that the cookies feature is enabled on the browser where you are running CDAT. If the CDAT application seems to log itself off unexpectedly, check your cookies setting.
The CDAT MBean configuration file is located in:
cdat
config
cdat.xml
The cdat.xml file configures the following MBeans:
Table 6-7 explains the configurable attributes in this MBean. For an example file, see the "Sample CDAT MBean Configuration File" section.
MBean Name | Attribute Name | Explanation |
---|---|---|
Logger | See the Logger object in Table 6-4. | |
ManagementConsole | See the ManagementConsole object in Table 6-4. | |
Default: 600 | ||
The maximum number of page/page instance variables allowed for each CDAT session. This number affects how many pages can be visited before their state is lost, though it is not a one-to-one mapping. If you see many StateTimedOut errors, you should increase this number. Default: 40 | ||
The maximum number of results to return from any one directory query. Changes will take immediate effect. A value of zero will remove any limits. Default: 500 | ||
Default: 0 |
This section describes how to configure the SPE component. The section includes the following topics:
Also see the "LDAP Directory Configuration Requirements" section, which describes basic configuration requirements for the LDAP directory that must be met before you install the SPE component.
The MBean configuration file for SPE is located in:
dess-auth
config
config.xml
This file applies to SESM applications that incorporate the SPE APIs, which are:
If these applications are installed on the same machine, the same config.xml file applies to all of them. If the applications are installed on different machines, the SPE component will be installed with each of them, and each config.xml file can contain different attribute values.
The config.xml file for SPE contains the following MBean:
Table 6-8 explains the configurable attributes in this MBean. For a sample file, see the "Sample SPE MBean Configuration File" section.
.
Object Name | Attribute Name | Explanation |
---|---|---|
Number of active connections allowed to the LDAP server. | ||
Credentials (such as password) used for connecting to the LDAP server. | ||
Default LDAP context. This is the organization and organizational unit that was created to hold the SESM data. | ||
If set to true, all the attributes of an LDAP entry are returned for every query. | ||
Name of the directory log file. | ||
Should be one of: NONE, ERROR, BRIEF, VERBOSE, or DEBUG. | ||
If set to true, the application sends trace messages to the console and writes them into the log file. | ||
If set to true, the application prints a stack trace with each trace message. | ||
Specifies the maximum number of software objects to hold in the cache. Objects represent subscribers, services, privileges, roles, and so on. When the cache contains cacheMaxObjects, old objects are deleted from cache, regardless of available cache space. Set this value high to allow the available cache space to be the determining factor for cache management. Installed default: 50000 | ||
Specifies the percentage of Java virtual memory that must remain available (that is, not used by the cache) after the application is loaded into memory. You can calculate the specific amount of memory available for the cache as follows: cacheSize = (JavaVM - applCodeSize) * (100% - cacheMinFreeMem)
Where: JavaVM is the maximum virtual memory size specified at application startup time with the jvm argument. The installed startup scripts use the following values:
applCodeSize is the application size. The NWSP is approximately 18 MB. cacheMinFreeMem specifies the percentage of Java virtual memory that must remain available after the application is loaded into memory. The installed default value is 10. If NWSP and RDP applications are installed on the same machine, the same cacheMinFreeMem attribute value applies to both applications. For example, using all of the installed default values, the cacheSize for the NWSP application is 90% of 14 MB, or 12.6 MB: cacheSize = (32 MB - 18 MB) * (100% - 10%) Installed default: 10 | ||
Specifies the timeout of inactive client sessions in seconds. Installed default: 600 | ||
Specifies the interval in seconds after which the cache attempts to expire objects. Note Do not set this attribute to 0. A value of 0 causes every request to go to the directory, bypassing caching and any memory storage from a recent request for the same object. A value of 0 degrades performance substantially. Installed default: 600 | ||
Specifies the number of seconds before objects time out. Installed default: 600 |
The SPE installation process optionally performs these two update activities. If you did not choose these options during the installation, you must do them before running CDAT or an SESM application running in LDAP mode.
Note If the SESM components are distributed among different servers, which means that SPE might be installed in more than one location, you only need to perform these update activities one time against the LDAP directory. |
To perform these updates after the initial SPE installation, use either of the following procedures:
To use the SESM custom installation process to extend the directory schema and load initial RBAC objects, follow these procedures:
Step 1 Make sure the LDAP directory server is running.
Step 2 Make sure you know the following user IDs and passwords:
Step 3 Execute the SESM installation program on a server that has network access to the LDAP directory.
Step 4 When the installation program prompts for setup type, choose Custom.
Step 5 When the installation program prompts for the components to install, choose SPE.
Step 6 When the installation program prompts for directory connection information, provide correct information to access the directory. This includes the names of the organization and organizational unit you created to hold the SESM data.
Step 7 When the installation program displays the options, click the Update schema and Install RBAC check boxes.
To use LDIF commands to manually update the directory, follow these procedures:
Step 1 Make sure the LDAP directory server is running.
Step 2 Make sure you have a user ID and password for the directory that allows you to update the schema.
Step 3 Obtain the required updates from the following location under your installation directory. Choose NDS or Netscape, depending on the LDAP directory you are using:
dess-auth
schema
NDS
Netscape
Apply the contents of all of the ldf files found under the NDS or Netscape directories:
authattr.ldf
authclas.ldf
dessattr.ldf
dessclas.ldf
Policy15.ldf
Step 4 Use the ldapmodify command to apply all of the preceding files to your directory.
On successful completion, you have applied all of the required updates.
See the Cisco Distributed Administration Tool Guide for information about the initial RBAC objects, loading sample data, and logging into CDAT.
The sample data is located in the following directory:
dess-auth
schema
Note The sample data uses common name (cn) as a component of distinguished name (dn). If your LDAP directory uses unique identifier (uid) rather than common name to allow access to the directory, you must edit the sample data files before loading them. Edit the DESSusecasedata.ldf and DESSadmin.ldf files, replacing all occurrences of cn with uid. |
This section describes how to configure the following features:
In general, if a service is marked as an auto connect service, the SSG performs the automatic connection after the subscriber authenticates. There is a special case with SESM in LDAP mode in which SESM is involved with automatic connection.
A subscriber profile specifies services for automatic connection. The subscriber profile also controls whether or not the service is hidden or not. If an auto connect service is hidden, it does not appear in the service list displayed on a service connection page.
In RADIUS mode, to configure a service for automatic connection, use the Account-Info A attribute in the subscriber profile. See Table D-5 for more information.
In LDAP mode, to configure a service for automatic connection:
In LDAP mode, the SSG performs automatic connections if it has the service list. If SSG does not have the service list, the SESM application can perform the automatic connections. During RDP installation, the Add Services option configures RDP to either:
<Set name="autoConnect" type="boolean">false</Set>
true
to enable automatic connections by the SESM web application.To change the setting of the RDP service list option, either reinstall RDP or edit the configuration files to enable the correct set of packet handlers. See "RDP Packet Handlers," for information about the packet handlers that are used in the various configurations.
The status page in an SESM portal shows the status for all services, including automatically connected services. In NWSP, the selection page includes service status indicators for each service listed. Hidden services are not listed. See the "Configuring a Service for Automatic Connection" section for an explanation of a hidden service.
Immediately after logging in, the service status for auto connect services might display as not connected. This happens if the service indicators display before the connection is completed. Proxy and tunnel services, for example, can take a while to connect. If the subscriber refreshes the window or selects the status window, the automatically connected services display with a connected status.
If the subscriber has a home URL set to an auto connect service, the pop-up window for the service might appear before the connection completes. If this occurs, the following message appears in the pop-up window:
Page cannot be displayed.
The URL is the correct one. If the subscriber waits a short time and resubmits the request using the URL already displayed in the window, the service pages appear.
In LDAP mode, a subscriber can use the SESM self-management features to select or deselect the auto connect property. These changes are recorded immediately in the LDAP directory, but the change is not effective immediately. Changes are not visible in SESM until the cache timeout period in RDP elapses.
For example, a subscriber might select the auto connect property for a service, log out of SESM, log back in, and notice that the service was not automatically connected. Caching in the RDP causes this delay.
Caching in RDP improves system performance. The deployer can turn off caching or reduce the cache period, but those actions impact performance.
An SESM session might expire, for example, because the subscriber closed the browser or navigated away from the SESM pages. When an SESM session expires:
We recommend running SESM portal applications with single sign-on turned on.
You can use various ways to determine a subscriber's location and brand. This section describes how to implement the configuration-based methods. See the "Location Awareness" section and "Brand Awareness" section sections for a summary of other ways to determine location and brand.
You can implement location and brand awareness by adding the following elements in the SESM portal application's configuration file.
For the session or brand determination to be meaningful, a web developer must change the SESM portal application to use the values. For new arbitrary properties to be meaningful, the portal must be changed to take an action with them.
The nwsp.xml file includes a configuration example that:
Note The example is only a configuration example; the NWSP application does not use the derived location or the associated URL. |
The Cisco SESM is a collection of components for creating specialized Java 2 Platform, Enterprise Edition (J2EE) web server applications. J2EE provides a framework for using various Java-based components to develop multi-tiered applications. The multi-tiered application (as opposed to the 2-tiered client server application) provides many opportunities for isolating and controlling functional pieces of a large application. For more information about the J2EE development platform, see:
A Cisco SESM application consists of the following:
<installDir>nwsp
call "%SCRIPTDIR%start.cmd" nwsp %PORTNO%
jetty
subdirectory. For example, for the NWSP application, the configuration filename is: nwsp.jetty.xml
To create the required configuration files and startup scripts for a customized SESM application that will run in a Jetty server, follow these steps:
Step 1 Create a configuration file for the new application in the container's config directory. You can copy the nwsp.jetty.xml
file and appropriately rename it. For example:
jetty
config
newApplication.jetty.xml
Step 2 Edit the new file, enabling and disabling features as described in the "Configuring an SESM Portal Application" section.
Step 3 Create a startup script for the new application by copying the startNWSP
script and appropriately renaming the copy. For example:
jetty
bin
startNewApplication
Step 4 Edit the new file, changing the application name and the port number parameters. See the "Startup Script Explanation" section for more information.
Step 5 Copy the nwsp directory structure, and rename the nwsp objects appropriately. For example, copy:
nwsp
config
nwsp.xml
docroot
docs
Step 6 See the Cisco Subscriber Edge Services Manager Web Developer Guide for information about customizing the JSPs, images, and other components. That guide also describes how to update the docroot folder, recompile affected components, and edit the web.xml file.
Posted: Mon Aug 26 08:46:51 PDT 2002
All contents are Copyright © 1992--2002 Cisco Systems, Inc. All rights reserved.
Important Notices and Privacy Statement.