Difference between local and external in inner-tunnel
Bob Franklin
rcf34 at cam.ac.uk
Fri Jun 15 16:27:14 CEST 2012
On Fri, 15 Jun 2012, Alberto Martínez wrote:
> Our FR is doing EAP most of the time, and it's working fine. However, we
> would want our NAS to see the inner true User-Name, not the outer one. I
> know this can be set in the inner-tunnel post-auth section uncommenting
> the update outer.reply lines, but that exposes our users' inner
> User-Name to proxied-to-us authentications.
>
> So my question is: Which attributes should I check to tell apart local
> and external auths?
We do exactly this and use Client-Shortname to control whether the inner
username is revealed: we set Client-Shortname to be in the format
'<server>@<domain>' - so we might have 'radius0 at botolphs.cam.ac.uk' for
server 'radius0.botolphs.cam.ac.uk', or 'roaming0 at ja.net' for
'roaming0.ja.net'. This attribute is under our control with how we
configure things in clients.conf, so we can ensure it isn't something
bogus.
We can then parse this with a regexp such as:
if ("%{Client-Shortname}" =~ /\.cam\.ac\.uk$/) {
# client is inside Cambridge - reveal the ID
update reply {
User-Name := "..."
}
} else {
# client is not - set it back to the requested one (see note below)
update reply {
User-Name := "%{request:User-Name}"
}
}
We do various other tricks with this - e.g. set Operator-Name depending on
the college or department which forwards requests to us (since we act as a
proxy to various groups inside the University, before passing things up to
the UK national eduroam proxy service).
Incidentally, on this matter, when I try and enable the relevant bit in
inner-tunnel, post-auth - uncommenting:
#update outer.reply {
# User-Name = "%{request:User-Name}"
#}
... I get a weird error when handling logins about the User-Name not
matching (I haven't tried recently and haven't got something to test on).
Instead, I use 'use_tunneled_reply = yes' in eap.conf and then use the
above test in the default, post-auth section to reset it to something
anonymous, if the client is outside Cambridge.
I've never got to the bottom of why this is - I did search the archives
and found other people with the same problem but never resolved it.
- Bob
--
Bob Franklin <rcf34 at cam.ac.uk> +44 1223 748479
Network Division, University of Cambridge Computing Service
More information about the Freeradius-Users
mailing list