Setting Up Security-Card Authentication
How security cards work
You can configure your network site to require that users change passwords several times per day. When you do so, you use an external authentication server, such as a Security Dynamics ACE/Server or an Enigma Logic SafeWord server.The external server syncs up with hand-held personal security cards; these devices are typically the size of a credit card. The security card provides a user with a current password in real time. The LCD on the user's card displays the current, one-time-only password required to gain access at that moment to the secure network.
Security card authentication with RADIUS
Figure 5-1 illustrates an environment that includes an Ascend Pipeline as the calling unit, an NAS (the MAX), a RADIUS server, and an external authentication server.
Figure 5-1. Using an external authentication server
This user is a client of the MAX. The user can be in terminal server mode or use the APP Server utility during the authentication phase. When authentication is complete, the user can switch to PPP mode.
The MAX is a client of the RADIUS server.
In this case, the RADIUS server is a client of the authentication server.
If the authentication server is an ACE/Server, the user has a SecurID token card that displays a randomly generated access code; this code changes every 60 seconds.
If the user enters an incorrect password, the ACE./Server or SafeWord server returns another challenge and the user can again attempt to enter the correct password. The server sends up to three challenges. After three incorrect entries, the MAX terminates the call.
This method is useful for installations where other RADIUS features are not required, since it decreases the complexity of the system, making it easier to configure and maintain. In addition, Direct ACE/Server authentication supports the New PIN Mode feature, which allows a dial-in user to change the personal identifying number (PIN). For information on the New PIN Mode feature, see New PIN Mode.
You can also configure ACE/Server authentication to use PAP-TOKEN-CHAP authentication. For more information, see Configuring PAP-TOKEN-CHAP using direct ACE authentication.
Understanding security-card authentication methods
You can set up SafeWord and ACE/Server security-card authentication of incoming calls using PAP-TOKEN, CACHE-TOKEN, or PAP-TOKEN-CHAP authentication. You can also specify that users request one of these authentication types when dialing out through the MAX. This section provides an overview of token-based authentication.
Setting up incoming security-card calls
When the MAX receives an incoming security-card password from a user, it must forward the authentication request to RADIUS; the RADIUS server, in turn, forwards the request to an ACE/Server or SafeWord server. The security-card caller must have a valid RADIUS user profile. Therefore, you must carry out both of these tasks:
You can set up the ACE/Server for use without RADIUS. This method does not permit authentication of PPP dial-in users using the APP Server. To configure the Ace/Server to use PAP-TOKEN-CHAP authentication, see Configuring PAP-TOKEN-CHAP using direct ACE authentication.
If you are not using RADIUS see Configuring direct Defender server authentication.
Setting up outgoing security-card calls
Most sites use the MAX as an NAS for incoming security-card calls. However, you can also configure the MAX as the calling unit to allow a security-card user on the local network to call out to an NAS at a secure site.
The APP Server utility enables a user to respond to token password challenges received from an external authentication server, such as an ACE/Server or SafeWord server. To allow users to supply token passwords from a host on the local network, you must configure the MAX to communicate with the APP Server utility on that host.
Location |
Parameters with sample values |
---|---|
Ethernet\>Mod Config\>DNS
|
Password Host=10.0.0.1
|
Ethernet > Mod Config > Auth
|
Password Port=10 Password Server=Yes
|
Valid port numbers range from 0 to 65535. The default value is 0 (zero); this setting indicates that the authentication server is not monitoring a UDP port.
This setting specifies that callers use security-card authentication rather than terminal server authentication.
Table 5-2 lists the APP Server parameters.
Location |
Parameters with sample values |
---|---|
Ethernet\>Mod Config\>Auth
|
APP Server=Yes APP Host=10.65.212.1 MAX Port=7001
|
To setup the MAX to communicate with the APP Server utility, follow these steps:
This setting enables the MAX to communicate password challenges to the host running the APP Server utility.
For example, you might enter this setting:
APP Host=10.65.212.1If the host obtains its address at boot time from a BOOTP or DHCP server, or if it has no IP address, you can specify the IP broadcast address (255.255.255.255).
7001 is the default UDP port for the APP Server.If you change this number, you must specify the new UDP port number in the APP Server utility (DOS), the WIN.INI file (Windows), or the /etc/services file (UNIX). The MAX and the host running the APP Server utility must agree about the UDP port number.
The response to the initial password challenge authenticates the base channel of the call. If bandwidth requirements cause another channel to come up, the system challenges the user for a password whenever it adds a channel to a call.
To request PAP-TOKEN authentication for an outgoing call, use the parameters listed in Table 5-3.
Location |
Parameters with sample values |
---|---|
Ethernet\>Connections > Any Connection profile > Encaps Options
|
Send Auth=PAP-TOKENSend PW=*SECURE*
|
To request PAP-TOKEN authentication in an outgoing Connection profile, follow these steps:
The Send Auth parameter specifies the authentication type requested by the caller.
The MAX sends the value of the Send PW parameter as part of the initial session negotiation. If the session then presents a password challenge, the user types in the current one-time-only password displayed on the security card.
To request CACHE-TOKEN authentication for an outgoing call, use the parameters listed in Table 5-4.
Location |
Parameters with sample values |
---|---|
Ethernet\>Connections > Any Connection profile > Encaps Options
|
Send Auth=CACHE-TOKENSend PW=*SECURE*
|
To request CACHE-TOKEN authentication in an outgoing Connection profile, follow these steps:
The Send Auth parameter specifies the authentication type requested by the caller.
The MAX sends the value of the Send PW parameter as part of the initial session negotiation. The system prompts the user for a token password and uses this password to authenticate the base channel of the call via CHAP. The RADIUS server caches the encrypted password for the period specified by the Ascend-Token-Expiry attribute, or for the amount of idle time specified by the Ascend-Token-Idle attribute. When the system adds channels to a call or places a new call, it uses the cached password to authenticate the channels.
If the calling unit request PAP-TOKEN-CHAP authentication, but the RADIUS user profile at the remote end is not set up for PAP-TOKEN-CHAP, the remote end uses PAP-TOKEN authentication instead.
To request PAP-TOKEN -CHAP authentication for an outgoing call, use the parameters listed in Table 5-5.
To request PAP-TOKEN-CHAP authentication in an outgoing Connection profile, follow these steps:
The Send Auth parameter specifies the authentication type requested by the caller.
The MAX sends the value of the Send PW parameter as part of the initial session negotiation. If the session then presents a password challenge, the user types in the current one-time-only password displayed on the security card.
When the MAX adds additional channels to the call's base channel, CHAP encrypts the auxiliary password specified by Aux Send PW and transmits it to the remote end.
Previous versions of the APP Server utility enabled a single user to respond to password challenges from a remote ACE/Server or SafeWord server. The current version supports multiple tokens-for a user name as well as the current password-so more than one user can use the APP Server to respond to password challenges.
The tar file expands into five directories, one for each version of the utility:
The banner can contain up to 200 characters and five lines of text. The first line of the file must contain the text "[BANNER]". For example, you might set up the file in this way:
[BANNER]
line1=The security password has changed. Please consult your
line2=card and enter the current password now.
line3=You have 60 seconds to enter the new password.
For more information on the appsrvr.ini file, see Creating banner text for the password prompt.
The appsrvds.exe DOS utility does not require an IP stack or IP address, but it does require an ODI driver.
C:\novell\lsl.com
C:\novell\xxxodi.com
C:\ascend\appsrvds.exe
REM Protocol Stack is loaded next
For example, consider this command line:
C:\ascend\
appsrvds.exe /cChicago /t20 /p7005
This line specifies a Connection profile named "Chicago," assigns a 20-second time delay between connection attempts, and designates UDP port 7005 for communicating with the MAX.Now, consider this command line:
C:\ascend\
appsrvds.exe /cChicago /m00805110C7A44 /p7523 /t65 /b7112
This line specifies a Connection profile named "Chicago," specifies 00805110C7A44 as the MAC address of the PC running the utility, designates UDP port 7523 for communicating with the MAX, assigns a 65-second time delay between connection attempts, and designates port 7112 for sending broadcast messages (to initiate a call).
For details on the appsrvr.ini file, see Creating banner text for the password prompt.
To create an icon and add the APP Server to the startup group, follow these steps:
Choose File\>New\>Program Group and type:
Ascend
Choose File\>New\>Program Item.
xas-w95.exe is a self-extracting zip file.
The zip file expands to several files that comprise the Windows 95 Setup program.
xas-nt.exe is a self-extracting zip file.
The zip file expands to several files that comprise the Windows NT Setup program.
There are three icons provided during installation that enable you to temporarily disable the APP Server, manually control when it runs, or remove it from the system.
appServer 7001/udpIf port 7001 is already assigned for a different purpose, you can use a different port for the APP Server utility by adding a line such as this to the services file:
appServer
port_num/udp
The port_num argument is the port number the utility uses. Make sure you specify the same number using the APP Port parameter on the MAX.
./appsvrWhen you run the utility in unicast mode, it transmits packets on the specified UDP port with the source address set to its own IP address. When the MAX receives those packets on the specified UDP port, it returns packets to the specified IP address.
./appsrvr -bThe -b argument sets a socket option to allow broadcast transmissions and inhibits the utility's complaints about receiving invalid APP frame types when it receives its own transmissions.
Dialing a connection to a secure site
This sections describes how to initiate a connection to a remote network from different types of platforms. Connecting to a remote network from the terminal server
To make an outgoing call to a secure site from a terminal server session, follow the steps described in this section. For a modem connection, begin the process at step 2.
set passwordThe following message displays:
Entering Password Mode...The prompt changes to the display following text:
[^C to exit] Password Mode>
From: hostname
0-Challenge: challenge
Enter next password:hostname
is the name of the NAS you are calling; it is optional on some systems. If the Send Auth parameter is configured incorrectly, no challenge prompt appears, or you see an error message such as this one:
From: hostname
Received unexpected PAP Challenge!... check PPP Auth Mode
You have 60 seconds to enter the password correctly. When you enter the correct password, the MAX establishes the connection to the secure network. If you do not specify the correct password within 60 seconds, the login attempt times out. If you enter the password incorrectly, the challenge prompt displays again, up to three times.
From: hostname
0-Challenge: challenge
Enter next password:
hostname
is the name of the NAS the user is calling; it is optional on some systems. If the Send Auth parameter is configured incorrectly, no challenge prompt appears, or you see an error message such as this one:
From: hostnameYou have 60 seconds to enter the password correctly. When you enter the correct password, the MAX establishes the connection to the secure network. If you do not specify the correct password within 60 seconds, the login attempt times out. If you enter the password incorrectly, the challenge prompt displays again, up to three times.
Received unexpected PAP Challenge!... check PPP Auth Mode
If more than one user uses the APP Server to log into a remote secure network through the MAX, each user must include a user name in this format:
password.username
The Settings dialog box opens.
You can specify up to 32 characters; you cannot enter spaces.
After the initial session negotiation, the remote ACE/Server or SafeWord server returns a password challenge; the challenge displays in its own dialog box. You have 60 seconds to obtain the current dynamic password from the security card and enter it correctly.
From: hostnamehostname is the name of the NAS you are calling; it is optional on some systems.
0-Challenge: challenge (or null challenge, depending on your setup)
Enter next password:
If the Send Auth parameter is configured incorrectly, no challenge prompt appears, or you see an error message such as this one:
From: hostnameYou have 60 seconds to enter the password correctly. When you enter the correct password, the MAX establishes the connection to the secure network. If you do not specify the correct password within 60 seconds, the login attempt times out. If you enter the password incorrectly, the challenge prompt displays again, up to three times.
Received unexpected PAP Challenge!... check PPP Auth Mode
If more than one user uses the APP Server to log into a remote secure network through the MAX, each user must include a user name in this format:
password.username
How the SecurID ACE/Server works without RADIUS
Users dialing into a MAX who are authenticated by a SecurID ACE server directly (without RADIUS) can specify one of the MAX unit's local profiles to be used for session parameters. When a user dials into the MAX, the usual banner and prompt appear: For example:
** Ascend Pipeline Terminal Server **
Login:When the user enters a name, the screen prompts for a password, just as for a "normal" login without:
Password:At this point, the user must enter his or her PIN, followed by the numbers currently being displayed on the SecurID token card.
If the login is correct, the terminal server prompt appears:
ascend%If the login is incorrect, this message appears:
** Bad PasswordThe Ascend unit requests another login. This process repeats three times, or until the user enters a valid login name/password (or passcode) combination.
Wait for the code on your token to change, then enter the new code (without PIN).
Passcode:The user must then wait until the number displayed on the token card changes, and then type in that number without the PIN. If the user enters a correct code, the terminal server command prompt or menu appears. If the user enters an incorrect code, the Ascend unit displays a "**Bad Password" message and the user's token remains in "NextCode" mode.
After the normal authentication, the Ascend unit displays one of the following three messages.
Enter your new PIN, containing 4 to 8 digits:
or
<Return> to generate a new PIN and display it on the screen:
or
<Ctrl C> to cancel the New PIN procedure:
Enter your new PIN, containing 4 to 8 digits:
Press <Return> to generate a new PIN and display it on the screen:
Please re-enter new PIN:The user types in the new PIN. If the PINs match, the new PIN is sent to the server, and the user is informed that the PIN has changed:
Wait for the code on your token to change, then log in with the new PIN
Login:If, after the second verifying PIN entry, the Ascend unit sees that the user entered two different PINs, this message appears:
PINs do not match. Please try again.
Login:The user must log in again. The server then asks the user to choose a new PIN.
ARE YOU PREPARED TO HAVE THE SYSTEM GENERATE A PIN? (y or n) [n]:If the user presses "y" or "Y", the screen displays a new PIN chosen by the ACE server:
Your new PIN: 6467
Press Enter to clear screen:The user must immediately memorize the PIN, and then press Enter. The screen clears, the PIN is sent back to the Ascend unit for confirmation, and if the ACE server accepts the PIN, the Ascend unit displays this message:
Wait for the code on your token to change, then log in with the new PIN
Login:
Configuring direct SecurID ACE authentication
This section describes how to configure a SecurID ACE server as your MAX's external authentication server. When you configure the ACE server as an external authentication server, any calls that are not authenticated by local Connection profiles are forwarded to the ACE server for authentication. If you requires your MAX to reach more than one authentication server, see the RADIUS Configuration Guide. Other software products, such as Ascend's Access Control, support multiple external authentication servers through the MAX. Although SecurID ACE authentication is indirectly supported via RADIUS, direct support for the SecurID ACE server can be useful for two main reasons:
To configure the MAX for direct authentication using a SecurID ACE server, follow these steps:
X0-X00 Mod Config
Auth
>Auth=SECURID
Auth Host #1=137.175.80.24
Auth Host #2=0.0.0.0
Auth Host #3=0.0.0.0
Auth Port=2626
Auth Timeout=10
Auth Key=N/A
Auth Pool=No
APP Server=No
APP Host=N/A
APP Port=
SecurID DES encryption=N/A
SecurID host retries=N/A
SecurID NodeSecret=N/A
Auth Host #2 and Auth Host #3 are not applicable, because the Ascend unit can support only one SecurID ACE authentication server at this time.
For example, you might specify this setting:
Auth Port=1545
If the MAX does not receive a response within the time specified by Auth Timeout, it assumes the SecurID ACE server has become nonfunctional.
The default value is 3.
For details on this parameter, see the MAX Reference Guide.
<parameters> |<CallType> <parameters> |<CallType> <parameters> ...
Convention |
Description |
---|---|
Quotes and brackets
|
Only needed when the value itself has a space in it. Table 5-6 shows the multiple types of quoting in case you need both a space and one of the other quote characters in a string.
|
| (vertical bar character)
|
Has a special meaning, and cannot appear in any string.
|
<address>
|
Is a string, but it should take on the dotted decimal form of an IP address, optionally followed by a subnet mask; for example, 1.2.3.4/24.
|
Examples of String Contents:
For example, the following string
|D prf="isdnroute" rp=[greco] la=192.0.2.1/24 |A prf=modemroutespecifies:
|D prf=isdnroute rp=greco la=192.0.2.1|A prf=modemrouteAlthough this example specifies the same information as the previous example, it has been shortened in the following ways:
prf=john |D la=135.2.2.4/24 |A la=135.2.3.20In this example, the settings would always be taken from the profile john, but the address would be set differently depending on whether the call was analog or digital.
The section with common parameters can be placed after the specific sections as well as before. For example, the following string:
|A prf=modemroute |D prf=isdnroute | la=10.0.0.20/32says to use modemroute as the profile template for analog calls, isdnroute for digital calls, and in both cases to use the address 10.0.0.20/32 as the LAN Address.
Separate sections are not required. For example:
prf=john la=10.0.0.20/32would use the profile named john and set the Lan Address to 10.0.0.20/32 whether the call was analog or digital.
Or you can have just one or the other:
|D prf=isdnroute rp= "go for it"In this case, an analog caller would be given the default or answer profile depending on the setting of the Use Answer as Default parameter in the answer profile.
securiddebug
. This is a toggle that turns the display on and off.
For security reasons, the password string is not displayed by this debug mode, so you will not be able to tell directly from the debug output whether the rp parameter is being truncated. If you encounter problems with the 2nd and subsequent channels of an MP call automatically authenticating, the problem could be that the end of the rp parameter is being cut off.
rp=joebob prf=johnwill cause the Receive Password joebob to be overwritten by the Receive Password in the profile john. Be careful always to list prf's before rp's or la's.
To set the static password to use during PAP-TOKEN-CHAP for a particular user:
rp="
password"
For example, if you type
rp="Little Big":
rp=/Little Big/
rp=[Little Big]
is not identical and would an produce error, since the left bracket and right bracket are different characters.
Configuring direct Defender server authentication
This section describes how to configure the Defender as your MAX's external authentication server. When you configure the Defender as an external authentication server, any calls that are not authenticated by local Connection profiles are forwarded to the Defender server for authentication. If you requires your MAX to reach more than one authentication server, see the RADIUS Configuration Guide. Other software products, such as Ascend's Access Control, support multiple external authentication servers through the MAX.
How Defender server authentication works
There are three major stages in authentication using AssureNet Pathways' Defender. The MAX' behavior will depend upon the stage the call dialing the MAX was in when the connection with the host is lost.
When no authentication host is available
When a MAX can not establish contact with any of the authentication hosts in the list, all sessions are dropped, including calls in Stage 1.
X0-X00 Mod Config
Auth
>Auth=Defender
Auth Host #1=137.175.80.24
Auth Host #2=0137.174.81.0
Auth Host #3=0137.174.80.25
Auth Port=2626
Auth Timeout=10
Auth Key=****************
Auth Pool=No
APP Server=No
APP Host=N/A
APP Port=N/A
SecurID DES encryption=N/A
SecurID host retries=N/A
SecurID NodeSecret=N/A
Auth Key is used as a DES secret key shared between the Ascend unit and the Defender authentication server. This key is also used for authentication by the Ascend unit in its role as a Defender authentication agent.
Type a port number between 0 and 65535. The default value is 0 (zero); if you accept this value, the Ascend unit can use any port number between 1024 and 2000.
Copyright © 1998, Ascend Communications, Inc. All rights reserved.