On May 3, 2015, at 11:37 , mourik jan heupink <heup...@gmail.com> wrote:

> Is this all approximately correct?


Hi Mourik,
I would call it approximately fanciful.

Assuming 802.1x with PEAP — which is the most common deployment — the actual 
workflow is something like this (gross handwaving and simplifications follow):

You connect a device to a switch (assume for the purpose of this post that we 
are connecting to a wired switch, but the general principle is the same on 
wireless).
The switch probes your device with 802.1x frames.
The supplicant on your device replies with it’s credentials 
(username/password). In the case of PEAP these are not the password itself but 
a response to a challenge derived from it.
The switch turns that reply into a radius request which it sends to the RADIUS 
server.
The radius server checks those credentials against whatever authentication 
source it is configured for (e.g. an Active-Directory server).
If authentication is successful, it proceeds with authorization (e.g. assigning 
a VLAN, an ACL or role). In the case of PacketFence authorization is done 
through a call from FreeRADIUS to a webservice where most of the business logic 
is implemented. That webservice adds the proper attributes to the radius reply 
depending on the configuration you entered in PacketFence and based on the 
knowledge each switch modules has of what attributes it (the switch) expects in 
reply for a given configuration.
RADIUS receives the reply from the webservice and returns it in the RADIUS 
reply to the original request from the switch. 
The switch allows or denies the access request and applies the authorization 
specified in the radius reply, i.e. it will either switch VLANs, apply an ACL 
or a role depending on what was returned.


What you need to understand is the nature of the RADIUS protocol.
RADIUS is a request/reply over UDP protocol where everything is specified as a 
set of key-values pair called attributes.
These attributes contain information like the user or device credentials, the 
IP of the originating switch and anything else that might be relevant. 
Attributes are also used to convey information in the reply like the VLAN, ACL 
or even QoS to apply to the connecting device.

While 802.1x is a layer 2 protocol, RADIUS is level 4 (UDP) and happens before 
your device is allowed on the network.
Therefore things like dns or dhcp cannot be relied upon during 802.1x/RADIUS 
(e.g. no name resolution from the point of view of the supplicant). 

Furthermore, this authentication/authorization happens every time you connect a 
device or reauthenticate.
There is no such thing as checking if authorization has changed. Everything 
starts over from scratch, every time. 

So the following is incorrect:
> - procurve confirms that the mac address is the same as last time, no
> further dialogue with freeradius: the client is granted the same access.

And finally, 802.1x does not rely on MAC addresses. It relies on authentication 
credentials provided by the supplicant, usually a username/password.


Hope that is clearer.
Cheers,
--
Louis Munro
lmu...@inverse.ca  ::  www.inverse.ca 
+1.514.447.4918 x125  :: +1 (866) 353-6153 x125
Inverse inc. :: Leaders behind SOGo (www.sogo.nu) and PacketFence 
(www.packetfence.org)


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
PacketFence-users mailing list
PacketFence-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/packetfence-users

Reply via email to