# $Id: README,v 1.5 2007/12/08 03:26:51 atobey Exp $
In order to install and use this package you will need Perl version 5.6 or better, mod_perl2, libapreq (Apache2::Request), Crypt::CBC, Crypt::Blowfish and Authen::ACE.
Installation as usual:
perl Makefile.PL
make
make test
make install
There are three components to Apache::AuthenSecurID.
Apache::AuthenSecurID
Apache::AuthenSecurID::Auth
ace_initd
There are support files for Redhat-based systems in the redhat directory.
NAME
Apache2::AuthenSecurID - Authentication via a SecurID server
SYNOPSIS
# Configuration in httpd.conf or access.conf
PerlModule Apache2::AuthenSecurID
<Location /secure/directory> AuthName SecurID AuthType Basic
PerlAuthenHandler Apache2::AuthenSecurID
PerlSetVar AuthCryptKey Encryption_Key
PerlSetVar AuthCookie Name_of_Authentication_Cookie
PerlSetVar AuthUserCookie Name_of_Username_Authentication_Cookie
PerlSetVar AuthCookiePath /path/of/authentication/cookie
PerlSetVar AuthCookieTimeOut 30
PerlSetVar Auth_Handler /path/of/authentication/handler
require valid-user
</Location>
DESCRIPTION
This module allows authentication against a SecurID server. It detects whether a user has a valid encrypted cookie containing their username and last activity time stamp. If the cookie is valid the module will change the activity timestamp to the present time, encrypt and send the cookie. If the cookie is not valid the module will redirect to the authentication handler to prompt for username and passcode.
LIST OF TOKENS
CONFIGURATION
The module should be loaded upon startup of the Apache daemon. Add the following line to your httpd.conf:
PerlModule Apache2::AuthenSecurID
PREREQUISITES
For AuthenSecurID you need to enable the appropriate call-back hook when making mod_perl:
perl Makefile.PL PERL_AUTHEN=1
AuthenSecurID requires Crypt::Blowfish and Crypt::CBC.
SEE ALSO
Apache, mod_perl, Authen::ACE Apache2::AuthenSecurID::Auth
AUTHORS
COPYRIGHT
The Apache2::AuthenSecurID module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
NAME
Apache2::AuthenSecurID::Auth - Authentication handler for Apache2::AuthenSecurID
SYNOPSIS
# Configuration in httpd.conf
<Location /path/of/authentication/handler> SetHandler perl-script PerlHandler Apache2::AuthenSecurID::Auth
PerlSetVar AuthCryptKey Encryption_Key
PerlSetVar AuthCookie Name_of_Authentication_Cookie
PerlSetVar AuthUserCookie Name_of_Username_Authentication_Cookie
PerlSetVar AuthCookiePath /path/of/authentication/cookie
PerlSetVar AuthApacheCookie Apache_Cookie
PerlSetVar ace_initd_server name.of.ace.handler.server.com
PerlSetVar ace_initd_port 1969
</Location>
DESCRIPTION
This module allows authentication against a SecurID server. A request is redirected to this handler if the authentication cookie does not exist or is no longer valid. The handler will prompt for username and passcode. It will then construct and encrypt a UDP packet and send it to the Ace request daemon. This is necessary since libsdiclient.a needs to persist for NEXT TOKEN MODE and SET PIN MODE. If the authentication is valid an encrypted Authentication Cookie is set and the request is redirected to the originating URI. If the user needs to enter NEXT TOKEN or set their PIN they will be prompted to do so and if valid the request is then redirected to the originating URI.
LIST OF TOKENS
CONFIGURATION
The module should be loaded upon startup of the Apache daemon. Add the following line to your httpd.conf:
PerlModule Apache2::AuthenSecurID::Auth
PREREQUISITES
For AuthenSecurID::Auth you need to enable the appropriate call-back hook when making mod_perl:
perl Makefile.PL PERL_AUTHEN=1
AuthenSecurID::Auth requires Crypt::Blowfish and Crypt::CBC.
For AuthenSecurID::Auth to properly track users mod_usertrack must be compiled and enabled.
SEE ALSO
Apache, mod_perl, Authen::ACE Apache2::AuthenSecurID::Auth
AUTHORS
COPYRIGHT
The Apache2::AuthenSecurID::Auth module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
NAME
ace_initd - ACE Authentication daemon for Apache::AuthenSecurID::Auth
SYNOPSIS
nohup ./ace_initd --listen=127.0.0.1 --facility=local2 --secret=123456 --port=1969 --var_ace=/var/ace
DESCRIPTION
This daemon handles the ACE authentication requests for the Apache::SecurID::Auth module. It is a single threaded, single fork server that listens on a specified UDP port. Incoming requests are decrypted and requests forwarded to the ACE server. If a specific request is in either in NEXT TOKEN MODE or SET PIN MODE the Authen::ACE object is not deleted. It is instead kept in memory to handle those specific requests later.
LIST OF TOKENS
CONFIGURATION
Either run from the command line;
prompt$ nohup ./ace_initd &
or write the appropriate scripts in the /etc/rc directories.
PREREQUISITES
ace_initd requires Crypt::Blowfish, Crypt::CBC and Authen::ACE.
SEE ALSO
Authen::ACE Apache::AuthenSecurID Apache::AuthenSecurID::Auth
AUTHORS
COPYRIGHT
ace_initd is free software; you can redistribute it and/or modify it under the same terms as Perl itself.