|
|
This document provides an end-to-end configuration example of how one company established CiscoSecure using the Oracle Distributed Database feature. This document contains the following sections:
In this particular scenario, a customer wanted to implement the Oracle Distributed Database feature to authenticate and authorize their network users using CiscoSecure. They have over 20,000 users accessing 16 access servers. They decided to have one master site from which 16 snapshot sites obtain their information.
Their network topology (at least, as far as it relates to replication) is relatively simple: a basic star pattern topology. At the center of this star is the master site, NOC: a Sun Ultra 2 workstation, running Solaris 2.5.1, Oracle 7.3.4, and CiscoSecure 2.2.2. All data is entered and maintained in NOC's Oracle database. Sixteen snapshot sites spiral off from this master site, each one connected (over Ethernet) to a Cisco AS5200, which acts as the network access server (NAS) for that portion of the network. Snapshot sites also run Solaris 2.5.1 (Ultra 1 workstations) and CiscoSecure 2.2.2, but maintain an Oracle 7.3.4 read-only database, replicated periodically from the master site. Snapshot sites connect to the master site, NOC, over WAN links at T 1 speeds. Users dial in to the NAS and are authenticated by the snapshot site using the authentication information contained in its replicated database. Figure 1 shows the basic network topology for this company.

Because of the logistics involved in setting up and testing this configuration, it was decided to first establish a functioning system via LAN. After this was established, the LAN was dismantled and the devices transferred to their respective WAN locations. The configuration information included in this document is derived from the LAN network setup.
The following prerequisites are assumed:
There were seven basic configuration tasks performed in establishing CiscoSecure using the Oracle Distributed Database feature for this company:
The first task performed was to make sure that the Solaris operating system on each Sun workstation was installed properly and that each device, whether master or snapshot, was configured to support both Oracle Database Replication and CiscoSecure.
Complete these steps before installing Oracle on either the master or snapshot devices:
#df -k | Check partition size. |
Need commands here for BIOS to perform autoboot. | Configure BIOS to perform autoboot. |
/cdrom/cdrom0/solaris*/s0 pkgadd | Install the necessary Solaris packages. |
cp /tmp/*.tar . mkdir install | Untar 103600-18.tar file and install the patch. |
mkdir install | Untar 103640-12.tar file and install the patch.
|
tar -xvf ..103566-23.tar | Untar 103566-23.tar file and install the patch.
|
Oracle needs to be installed on all devices, both master and snapshot devices, before CiscoSecure can be successfully installed. The version of Oracle used in this scenario was version 7.3.4. The installation procedure varies per version; the steps described below are specific to version 7.3.4. The procedure listed below is not intended to be an all-inclusive example; for more information about installing Oracle, refer to the Oracle Installation manual that came with your software.
Select edit, then add.
| |
Group name: dba Group ID: <default value> Members List: oracle | |
As before, select edit, then add. Define Oracle user identity. Enter: · User name: oracle · User ID: 101 · Primary Group: dba · Login Shell: Korn · Path: /export/home/app/oracle/product/ Click OK.
| |
· Enter: Verify that the account exists. | |
Change to the /etc directory and open the services file. This file lists all of the ports on the system. Add two lines: listener 1521/tcp
| |
Set the following system tuning parameters: · set shmsys: shminfo_shmmax=28388608 · set shmsys: shminfo_shmmin=1 · set shmsys: shminfo_shmmni=100 · set shmsys: shminfo_shmseg=20 · set semsys: seminfo_semmns=200 · set semsys: seminfo_semmni=70 · set semsys: seminfo_semmsl=100
Reboot the system for these parameters to take effect.
| |
mkdir /opt/bin | At the root, create a first-level directory. |
chown oracle /oracle | Give ownership to the Oracle user. |
rlogin localhost -l oracle mkdir /oracle/app mkdir /oracle/app/oracle mkdir /oracle/app/oracle/product mkdir /oracle/app/oracle/product/7.3.4 mkdir /oracle/app/oracle/product/7.3.4/oradata | Become the Oracle user. Then prepare a structure for Oracle installation. |
| |
| |
This directory was shared using the UNIX share command. The other systems mounted this directory using the UNIX mount command.
| |
Use the cd $ORACLE_TERMINAL command to change directories. Start Oracle installation using the orainst command. The command orainst /m starts the GUI installation interface in MOTIF mode. To install Oracle with a text-mode interface, use the orainst /c command. This command starts the installation in the character mode. | |
Click OK. | |
Click OK. | |
Click OK. | |
· ORACLE_BASE: · ORACLE_HOME: Click OK. | |
· Installer Log · SQL Log · Makefile Log · OS Log Click OK to accept the default values. | |
Click OK. | |
· Each site must have a unique SID. · SIDs are case-sensitive. · SIDs cannot be longer than eight characters. (If you enter a SID larger than eight characters, installation will fail. Oracle documentation recommends that SIDs contain four characters or less for maximum compatibility.) | |
Click OK. | |
| |
Click OK. | |
· Advanced Replication Option · Oracle Server Manager · Oracle 7 Distributed Database Option · Oracle UNIX Installer · Oracle 7 Server (RDBMS) 7.3.4.0.1 · PL/SQL V2 2.3.4.0.0 · SQL*Net V2 · SQL*Plus 3.3 · TCP/IP Protocol Adapter Click Install. | |
| |
| |
Click OK. | |
(This particular parameter is specific to the customer. Oracle normally recommends Yes to allow for fault tolerance. If you select Yes, you will be prompted for three different mount points.) | |
| |
Click OK. | |
Click OK. Retype the password to confirm. Click OK. | |
Click OK. | |
Click OK.
| |
| |
For snapshot sites, click No. | |
| |
| |
| |
From the Default DB screen, select No. | |
/oracle/oradata/AST/system01.dbf Click OK. | |
Click OK. | |
/oracle/oradata/AST/redoAST01.log Click OK. | |
Click OK. | |
/oracle/oradata/AST/redoAST02.log Click OK. | |
Click OK. | |
/oracle/oradata/AST/redoAST03.log Click OK. | |
Click OK. | |
/oracle/oradata/AST/rbs01.dbf Click OK. | |
Click OK. | |
/oracle/oradata/AST/temp01.dbf Click OK.
| |
Click OK. | |
/oracle/oradata/AST/users01.dbf Click OK.
| |
Click OK. This is the initial size of your actual CiscoSecure database. In a later configuration step, the database can be configured to automatically grow (autoextend). | |
/oracle/oradata/AST/tools01.dbf Click OK.
| |
Click OK. | |
| |
| |
| |
The customer opted not to have the Help Facility. Oracle recommends that you click Yes here. | |
The customer opted not to have the Demo Tables. Oracle recommends that you click Yes here. | |
After this, Oracle installs on your system. You will be asked if you want to relink the Client Shared Library. Click No. From the Main Install screen, click Exit. You will receive a message telling you that installation was successful. |
Be sure you have enough disk space. If you run out of disk space, Oracle might not create all of the necessary .dbf files. In addition, Oracle will not send an error message informing you that there is not enough disk space.
After Oracle is installed, additional configuration tasks need to be completed before CiscoSecure can be successfully installed. This section documents these post-Oracle installation configuration tasks.
These steps are performed for both master site and snapshot sites. In this example, we are showing the post-Oracle installation steps for one of the snapshot sites, AST.
| |
cd /var/opt/oracle AST: /oracle/app/oracle/product 7.3.4: Y | Modify the oratab file located at /var/opt/oracle. Change product version from 7.3.4:N to 7.3.4:Y. |
cd /etc/init.d vi dbora #!/bin/sh ORA_HOME=/oracle/app/oracle/product/7.3.4 ORA_OWNER=oracle if [ ! -f $ORA_HOME/bin/dbstart -0 ! -d $ORA_HOME ] then echo "Oracle startup: cannot start" exit fi case "$1" in 'start') su - $ORA_OWNER -c $ORA_HOME/bin/dbstart su - $ORA_OWNER -c "lsnrctl start" ;; 'stop') su - $ORA_OWNER -c $ORA_HOME/bin/dbshut su - $ORA_OWNER -c "lsnrctl stop" ;; esac | Create a script to allow Solaris to autostart Oracle when you reboot the Sun workstation. |
ln -s /etc/init.d/dbora /etc/rc0.d/K81dbora ln -s /etc/init.d/bora /etc/rc2.d/S79dbora | Create links. |
export ORAENV_ASK=NO /opt/bin/oraenv | Log in as Oracle. Add two lines to the Oracle user startup script .profile: · export ORAENV_ASK=NO · ./opt/bin/oraenv |
job_queue_interval=30 job_queue_processes=4 shared_pool_size=6000000 <medium> compatible=7.3.0.0
| Change directory to ORACLE_HOME/dbs. Edit the initAST.ora file. This file contains the Oracle tuning parameters: · Comment out (add # symbol) to the statement: shared_pool_size=<small> · Remove the comment out symbol (delete # symbol) from the statement: shared_pool_size=6000000 <medium> Add these parameters to the initAST.ora file: · job_queue_interval=30 · job_queue_processes=4 · compatible=7.3.0.0 |
dbora start | Log in as root. Type dbora start to start database. Test to see if the database instance is reachable by using tnsping. |
$ORACLE_HOME/network/admin Put an entry for the system itself (in this case, AST) in the tnsname.ora file. | |
| |
:11421.es | |
| After you install the tools you need, you must exit the program and reboot the system. |
| Choose Add Database Alias and click OK.
|
| |
| |
|
· Host Name: IP address of the system. In this case, 10.30.0.0 · Database instance: AST (This is the SID name.) Click OK to add. Click Cancel when complete. |
| Create the CSECURE user. From the Oracle Enterprise Manager program group, select the Security Manager tool and log in. Username: sys Service: TNS name (The TNS name was created in the previous steps using SQL*NetEasy.) Click OK
|
| From the General tab, select user/create. · User: CSECURE · Password: <CESECURE password> · Tablespace: default values |
| Grant the CSECURE user privileges. From the Role/Privileges tab, select the following privileges: · Connect · Resource
|
| Grant the CSECURE user object privileges. From the Object/Privileges tab, follow this path: schema/sys/views · Select dba_freespace, then highlight SELECT from available privileges. Click the down arrow to add. · From the General tab, highlight SELECT from available privileges, then click Create. · Select dba_users. Click the down arrow to add. · From the General tab, click Create.
|
| This customer chose not to autoextend the size of the database. To autoextend the size of the database, perform the following steps: · From Oracle Enterprise manager, select the Storage Manager tool. · Username: sys · Service: AST (the TNS name) · From Users tablespace, select the option tab for autoextend. Set the increment to the desired value. Click OK. You need to do this for both the temporary tablespace and the RBS tablespace. |
After Oracle has been successfully installed on each Sun workstation and post-Oracle installation tasks have been completed, CiscoSecure is installed. In this particular scenario, the systems administrator created a temporary directory (/tmp) to hold the package file prior to installation. CiscoSecure installation steps are the same for both master site and snapshot sites. In this example, CiscoSecure is being installed on the master site, NOC.
The procedure documented here should be supplemented by the information contained in CiscoSecure ACS 2.2.2 for UNIX User Guide. Please refer to this manual for additional information.
#pgktrans C* -d /tmp The following packages are available: | Execute pgktrans on CiscoSecure to /tmp directory. |
Select package(s) you wish to process (or `all' to process | Type 1. |
#cd /tmp | Check to see that files were transferred to /tmp directory. |
#pkgadd -d . The following packages are available: 1 CSCEacs CiscoSecure Access Control Software | Install CiscoSecure in the default directory. |
Select package(s) you wish to process (or `all' to process | Type 1. |
To install this product, you must agree to accept the terms | Type y. |
Is this a new install (y/n/q) (default: yes, q to quit)? y | Type y. |
Enter the directory name in which to install CiscoSecure [?,q] | Type /opt/acs for the CiscoSecure home directory. |
Select an IP address to install CiscoSecure on | Press Enter to accept the default. |
If the hostname of this server is not the same as its fully qualified domain name (FQDN), enter the FQDN, e.g., www.cisco.com. Otherwise, press enter to use the default (default noc) [?,q] | Because the snapshot sites were in a different domain than the NOC, this field was modified to put the FQDN as NOC.company.com. |
Enter the AAA Server License key (default:<none>) [?,q] | Enter the AAA license key. For more information, refer to the CiscoSecure Installation manual. |
Enter the TACACS+NAS name to use (default:<none>) [?,q] | Press Enter to accept the default. |
Enter the TACACS+NAS Secret Key to use (default:<none>) [?,q] | Press Enter to accept the default, which is "SECRET12345." |
Select any or all Token Cards to use | Press Enter to accept the default. |
Enter selection: 1 SQLAnywhere | Type 2 for Oracle. |
Enter the username for the ORACLE DB account [?,q] csecure | Type csecure. |
Enter the password for the ORACLE DB account [?,q] csecure | Enter the value you used when creating csecure user. (In this case, csecure was used.) |
Enter the TNS Service name for the Oracle Server [?,q] noc | Type noc. |
Enter the ORACLE_HOME directory [?,q] /oracle/app/oracle/product/7.3.4 | Type /oracle/app/oracle/product/ |
Enter an available TCP/IP Port to be reserved for the CiscoSecure DB Server process (default: 9900) [0-65535,?,q] | Press Enter to accept the default. |
Enter a unique name for the CiscoSecure DB Server Process (default:CSdbServer) [?,q] | Press Enter to accept the default. |
Enter the number of connections to use for ORACLE RDBMS (default: 4) [?,q] 20 | Type the number of connections minus 2 (n - 2) you have licensed from Cisco. For this customer, the number was 20. |
Enter the directory path to use for the AAA server profile caching (default: /, q to quit)? /opt | Type /opt. |
Do you want to modify any selections shown below? New CiscoSecure Install YES | |
This package contains scripts which will be executed with super-user permission during the process of installing this package. Do you want to continue with the installation of <CSCEacs> [y,n,?] y . . . | |
Installation is complete. However, further configuration may be necessary. For more information on the steps necessary to finish configuration, read the /opt/acs/DOCS/README.txt.file. Results of this installation are saved in the /tmp/cs_install.log file and in /opt/acs/logfiles/cs_install.log. Installation of <CSCEacs> was successful. The following packages are available: 1 CSCEacs CiscoSecure Access Control Software |
|
Select package(s) you wish to process (or `all' to process | |
After Oracle and CiscoSecure have been installed on all systems, one device (NOC) is selected as the master replication device. All other devices are then configured as snapshots of this master. The following steps explain how the master device is configured.
Follow the same initial procedure to configure both master and snapshot sites. The following configuration steps are used to configure both master and snapshot sites.
Ping all devices to check TCP/IP Connectivity. | Verify TCP/IP connectivity by pinging the master from all snapshot devices. |
| |
· Name of the snapshot database. · Snapshot host name or host address. (This field is not case-sensitive.) · Port over which this database is running. · System ID (SID). (This field is case-sensitive.)
| |
| |
| |
In the initSID.ora file (where SID is the SID for the master site), add the following two lines: · job_queue_interval = 30 · job_queue_processes = 4 · Comment out (add # symbol) to the statement: shared_pool_size=<small> · Remove the comment out symbol (delete # symbol) from the statement: shared_pool_size=<large> | |
Restart Oracle for these changes to take effect. | |
· Log in as sys user. · Service in this instance refers to the master site TNS name, noc. | |
· Log in as sys user. · Service in this instance refers to the master site TNS name, noc. From the Main menu, select User/Create. | |
· Name: repadmin · Profile: DEFAULT · Password: Enter password, then verify password · Tablespaces: Click Create. | |
· Log in as sys user. · Host string in this instance refers to the master site TNS name, noc. Click OK.
| |
(This command is not case-sensitive, but it is space-sensitive.) |
After you have completed the previous steps, you need to configure the following steps, which are specific to the master site.
Run Schema Manager (located in the Oracle Enterprise Manager program group). · Log in as repadmin. · Service in this instance refers to the master site TNS name, noc. · Click OK.
| |
Click OK.
| |
· Name: Snapshot SID (case-sensitive) In this example: PYM · Check the Public box. · Username: repadmin · Password: Password you assigned to the repadmin user. · Service name: TNS name of the snapshot site. In this example, pym. Click Create to create the link. | |
The system will display the following message if the link has been successfully established: The database is active. | |
Use the Oracle Replication manager (located in the Oracle Replication manager program group). Click Create. A wizard screen will appear. Click Cancel and proceed with the following steps. | |
· Log in as repadmin. · Database in this instance refers to the master site TNS name, noc. · Click Create.
| |
Click Create. | |
· Master Group Name: This value is arbitrary. In this case, Master-RO-Snapshot was entered.
| |
Click Add.
| |
· Select the schema for the CiscoSecure user. In this case, CSECURE. · Click the Tables check box to select tables as the object type to display. · Select the following six tables: Click Add, then click Close. | |
| |
| |
| |
Highlight Snapshot Logs. Click Create. | |
Schema: CSECURE Table: Select one of the six. (Only one table can be done at a time.) | |
· Extent Characteristics: Click Create. Repeat the previous two steps for the remaining five tables. | |
|
After the master device is configured to support database replication, the snapshot sites are configured (in this scenario, 16 sites). The following steps explain how one of the snapshot devices, pym, was configured. As mentioned before, the first group of configuration steps are identical for both master and snapshot sites. The following configuration steps are used to configure snapshot sites.
connect csecure/csecure@pym (Once again, pym is the name of the snapshot site. | |
Fifteen tables were installed by CiscoSecure, including: CS_GROUP_PROFILE | |
From the File menu, select Create New, then Database Connection to get to this screen. · Log in as repadmin. · Database in this instance refers to the snapshot site TNS name, pym. · Click the Always prompt for password check box. · Click Create.
| |
| |
Click Snapshot Groups, then Create. | |
· Public Links · Master Definition Site Click Next. | |
Click Next. | |
Highlight all six tables. Click Add.
| |
Click Next. | |
From the Snapshot Group Wizard - Individualized Snapshot Settings window: · Select a table from the Snapshots in the group list. · Uncheck Updatable. (The snapshot sites are READ ONLY.) · Check Tablespace & Extent Specs. Click Edit. | |
· Select the correct tablespace (in this case, USERS) · Extent Characteristics: Click Back and repeat this for the remaining five tables. Click Next. | |
| |
Click OK. | |
From Oracle Replication Manager, expand the directory tree following this path: repadmin@pym | |
| |
| |
Click OK. | |
· Clear the Update master before a refresh check box. · Clear the Refresh after errors updating master check box. Click Apply. | |
Add cache triggers. Log in to pym as the root user. From the CiscoSecure directory, /opt/acs, change to the utils/bin directory. Enter the command: ./CSdbTool cache_trigger_snap | |
| |
Enter the command: ./CSdbTool ora_rep_indx_snap | |
| |
| |
Enter: · Username: superuser · Password: <password> Click Submit. | |
Click Browse. User groups are displayed. Click Log Off to exit.
|
After database replication has occurred, users dial in to the network via a network access server (NAS) and are authenticated based on the information contained in the distributed databases. The following information is the running configuration from the NASin this case, a Cisco AS5200, running Cisco IOS Release 11.3. For more information about any of the commands displayed below, refer to the Cisco IOS Release 11.3 Command References.
NAS5200#sh run Building configuration... Current configuration: ! version 11.3 service timestamps debug datetime service timestamps log datetime no service password-encryption service udp-small-servers service tcp-small-servers ! hostname NAS5200 ! aaa new-model aaa authentication local-override aaa authentication login default radius aaa authentication login no_tacacs1 local aaa authentication login vtymethod tacacs+ enable aaa authentication ppp default radius aaa authorization network radius aaa accounting network start-stop radius aaa accounting system start-stop radius enable password cisco ! username admin password 0 cisco username cons password 0 cisco username space password 0 cisco username dang password 0 cisco username evo password 0 cisco username cisco password 0 cisco ip domain-name cisco.com isdn switch-type primary-5ess chat-script cisco-default ABORT ERROR "" "AT Z" OK "ATDT \T" TIMEOUT 30 \c CONNE chat-script sporter "" "at&fs0=1" "OK" "" ! controller T1 0 framing esf clock source line primary linecode b8zs pri-group timeslots 1-24 ! controller T1 1 shutdown clock source line secondary ! interface Loopback0 ip address 111.111.111.111 255.0.0.0 no ip route-cache no ip mroute-cache ! interface Ethernet0 ip address 10.1.1.1 255.0.0.0 no ip route-cache no ip mroute-cache ! interface Virtual-Template1 ip unnumbered Ethernet0 no ip mroute-cache peer default ip address pool pool1 ppp authentication chap ! interface Serial0 no ip address no ip route-cache no ip mroute-cache shutdown ! interface Serial1 no ip address no ip route-cache no ip mroute-cache shutdown ! interface Serial0:23 no ip address encapsulation ppp no ip route-cache no ip mroute-cache isdn incoming--voice modem ! interface Group-Async1 description : Async1 & 2 -> NO PPP auth --> Line1& 2 MUST NOT PPP Autoselect / ip unnumbered Ethernet0 encapsulation ppp no ip route-cache no ip mroute-cache async mode interactive peer default ip address pool pool1 no cdp enable ppp authentication chap group-range 1 12 ! router rip network 56.0.0.0 ! ip local pool pool1 10.2.3.4 10.6.7.8 no ip classless access-list 10 permit 0.1.1.1 255.0.0.0 radius-server host 10.3.4.5 auth-port 1645 acct-port 1646 radius-server timeout 30 radius-server key SECRET12345 ! line con 0 exec-timeout 0 0 password cisco login authentication no_tacacs1 line 1 12 autoselect ppp script startup sporter script dialer usr* script reset sporter modem InOut modem autoconfigure type usr_sportster transport input all telnet transparent line aux 0 line vty 0 password cisco login authentication loginlist width 110 line vty 1 4 password cisco login authentication vtymethod ! end
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Fri Sep 15 08:45:56 PDT 2000
Copyright 1989-2000©Cisco Systems Inc.