Net::Radius::Server::PAM - Authenticate users using the Linux-PAM framework
use Net::Radius::Server::PAM; my $pam = new Net::Radius::Server({@args}); # As match-method factory $pam->fmatch(); # As set-method factory $pam->fset();
Net::Radius::Server::PAM uses the PAM framework to authenticate and populate a RADIUS response within the Net::Radius::Server framework. The interface with the PAM infraestructure is provided by Authen::PAM(3).
Net::Radius::Server::PAM
The following methods are supported:
->fmatch
Equivalent to invoking ->mk on a Net::Radius::Server::Match(3) - derived class. This will return a sub providing match functionality to Net::Server::Radius(3).
->mk
->fset
Equivalent to invoking ->mk on a Net::Radius::Server::Set(3) - derived class. This will return a sub providing set functionality to Net::Server::Radius(3).
The match method will attempt authentication via username and password against the PAM framework. Succesful authentication causes the match method to return NRS_MATCH_OK. Failure, as expected, causes the return of NRS_MATCH_FAIL.
The Authen::PAM object is left in the shared invocation hash at the specified key.
Authen::PAM
The set method attempts to fetch the environment provided by the PAM framework, translating any environment variables matching an attribute in the current dictionary into RADIUS attribute/value pairs within the response.
The set method will only perform its task if the account can be authenticated by PAM. Otherwise, a NRS_SET_CONTINUE will be returned, causing the execution of the rules to continue.
The following properties or arguments can be specified to either the constructor or any factory:
Causes the RADIUS identifier and authenticator from the request to be copied into the response.
Sets the code of the RADIUS response. Defaults to 'Access-Accept'.
What value to return when a succesful authentication occurs.
Description of this rule, used for logging purposes.
Specifies which key in the shared invocation hashref will be used to store the Authen::PAM object. Defaults to _pamh.
Defines the PAM service that must be used to authenticate. This attribute defaults to login.
Note that this class inherits from Net::Radius::Server::Set::Simple(3), so all its attributes are available as well.
None by default.
$Log$ Revision 1.6 2006/12/14 16:33:17 lem Rules and methods will only report failures in log level 3 and above. Level 4 report success and failure, for deeper debugging Revision 1.5 2006/11/15 05:54:04 lem NRS::PAM now inherits from NRS::Set::Simple to increase functionality. Revision 1.4 2006/11/15 05:39:15 lem Corrected invocation of the factories Revision 1.2 2006/11/15 05:23:57 lem service now can be left unspecified. Defaults to 'login' Revision 1.1 2006/11/15 05:14:54 lem NRS::PAM has basic functionality.
Perl(1), Net::Radius::Server(3), Net::Radius::Server::Match(3), Net::Radius::Server::Set(3), Net::Radius::Server::Set::Simple(3), Authen::PAM(3).
Luis E. Muñoz, <luismunoz@cpan.org>
Copyright (C) 2006 by Luis E. Muñoz
This library is free software; you can redistribute it and/or modify it under the same terms as Perl 5.8.6 itself.
1 POD Error
The following errors were encountered while parsing the POD:
Non-ASCII character seen before =encoding in 'Muñoz,'. Assuming UTF-8
To install Net::Radius::Server, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::Radius::Server
CPAN shell
perl -MCPAN -e shell install Net::Radius::Server
For more information on module installation, please visit the detailed CPAN module installation guide.