(RADIATOR) Can't set certain attributes from PostAuthHook
Hugh Irvine
hugh at open.com.au
Fri Oct 12 22:18:30 CDT 2001
Hello Jo -
You really don't need a PostAuthHook to do this, just an AddToReply.
Of course you also need to reference the AuthBy clause in the Handler.
# define AuthBy clause
<AuthBy SQL>
NoDefault
Identifier db_users
DBSource dbi:mysql:database=users;host=xxx
DBUsername xxx
DBAuth xxx
AddToReply Framed-Routing = None, \
Framed-Compression = Van-Jacobson-TCP-IP, \
Framed-MTU = 1500
</AuthBy>
# define Handler (don't forget to reference the AuthBy clause)
<Handler Request-Type=Access-Request>
AuthBy db_users
AuthLog myauthlogger
</Handler>
For suggested reading I always recommend the RFC's and the reference manual
included in the "doc" directory of the distribution.
hth
Hugh
On Saturday 13 October 2001 08:06, needle-mls at world-online.no wrote:
> Hi,
>
> I'm looking into switching from radius to Radiator, but I've run into
> a problem with not being able to set certain attributes from a
> PostAuthHook. I have a really simple setup, or so I thought, so there
> isn't really much that can go wrong but it just won't work
> nevertheless.
>
> In the PostAuthHook I do this, after successfully authenticating the
> user:
>
> # Service-Type = Framed-User
> $reply->addAttrByNum(
> $Radius::Radius::SERVICE_TYPE, 2);
>
> # Framed-Protocol = PPP
> $reply->addAttrByNum(
> $Radius::Radius::FRAMED_PROTOCOL, "PPP");
>
> (...) (framed_ip_address and framed_ip_netmask here) (...)
>
> # Framed-Routing = None
> $reply->addAttrByNum(
> $Radius::Radius::FRAMED_ROUTING, 'None');
>
> # Framed-Compression = Van-Jacobson-TCP-IP
> $reply->addAttrByNum(
> $Radius::Radius::FRAMED_COMPRESSION, 'Van-Jacobson-TCP-IP');
>
> # Framed-MTU = 1500
> $reply->addAttrByNum(
> $Radius::Radius::FRAMED_MTU, '1500');
>
> Service-type, protocol, ip_address and netmask are set just fine but
> routing, compression and mtu are ignored. That doesn't really surprise
> me, seeing how they aren't defined in Radius.pm, but I can't set these
> attributes by any other means either! I've tried putting
> AddToReply / AddToReplyIfNotExist / DefaultReply Framed-Routing=None,
> Framed-Compression=Van-Jacobson-TCP-IP ... various places in my
> configuration file without any noticable effect.
>
> Just using one of the Reply options in the configuration file, and
> removing the attributes from my hook, this is what Radiator logged
> (trace level 4):
>
> Attributes:
> Service-Type = 2
> Framed-Protocol = PPP
> Framed-IP-Address = 10.47.11.1
> Framed-IP-Netmask = 255.255.255.255
>
> If I set the attributes in my hook, as mentioned above, I get this:
>
> Fri Oct 12 22:20:54 2001: ERR: Attribute number (vendor ) is not
> defined in your dictionary
> Fri Oct 12 22:20:54 2001: ERR: Attribute number (vendor ) is not
> defined in your dictionary
> Fri Oct 12 22:20:54 2001: ERR: Attribute number (vendor ) is not
> defined in your dictionary
> Fri Oct 12 22:20:54 2001: DEBUG: Access accepted for test32
> Fri Oct 12 22:20:54 2001: WARNING: No such attribute Unknown
> Fri Oct 12 22:20:54 2001: WARNING: No such attribute Unknown
> Fri Oct 12 22:20:54 2001: WARNING: No such attribute Unknown
> (...)
> Attributes:
> Service-Type = 2
> Framed-Protocol = PPP
> Framed-IP-Address = 10.47.11.1
> Framed-IP-Netmask = 255.255.255.255
> Unknown = None
> Unknown = Van-Jacobson-TCP-IP
> Unknown = 1500
>
> I haven't connected Radiator with a NAS yet, so the above has been
> generated with a radiust test program. That shouldn't make any
> difference, though, because radius replies correctly when testing with
> this program.
>
> Relevant bits from my configuration:
> Radiator version: 2.18.4
> Dial in equippment: Cisco
>
> radiator.cfg:
>
> DbDir /usr/local/etc/radiator/
> (Which only contains a dictionary file since an sql database is used
> for customer information.)
>
> <Client DEFAULT>
> Secret xxx
> DupInterval 0
> </Client>
>
> <AuthBy SQL>
> NoDefault
> Identifier db_users
> DBSource dbi:mysql:database=users;host=xxx
> DBUsername xxx
> DBAuth xxx
> AddToReply Framed-Routing = None, \
> Framed-Compression = Van-Jacobson-TCP-IP, \
> Framed-MTU = 1500
> </AuthBy>
>
> <Handler Request-Type=Access-Request>
> PostAuthHook file:"/usr/local/etc/radiator/auth.hook"
> AuthLog myauthlogger
> </Handler>
>
> It's been a rather long day at work, so I might have overlooked
> something obvious. Pointers to documentation I should read, or things
> I should test are welcome. :-)
>
> Thanks in advance,
>
> Jo
--
Radiator: the most portable, flexible and configurable RADIUS server
anywhere. Available on *NIX, *BSD, Windows 95/98/2000, NT, MacOS X.
-
Nets: internetwork inventory and management - graphical, extensible,
flexible with hardware, software, platform and database independence.
===
Archive at http://www.open.com.au/archives/radiator/
Announcements on radiator-announce at open.com.au
To unsubscribe, email 'majordomo at open.com.au' with
'unsubscribe radiator' in the body of the message.
More information about the radiator
mailing list