I have read all the man pages and /docs and am having a difficult time understanding the authorization.  I keep wanting to write "if...elseif...else" stuff but I'm pretty sure that doesn't apply to FreeRADIUS config files.
<br><br>In the radiusd.conf there is documentation on how to use checkval to compare against caller-id.  That's exactly what I want to do, but I can't figure out how to *use* it.<br><br>Let's say I have 2 groups: students and faculty.
<br>I want to authorize authenticated members of the LDAP group cn=students,ou=Groups IFF their Access-Request Called-Station-ID =~ "/:StudentWLAN$/"<br>I want to authorize authenticated members of the LDAP group cn=faculty,ou=Groups IFF their Access-Request Called-Station-ID =~ "/:FacultyWLAN$/"
<br><br>All my users are authenticated against LDAP.  If the user enters the correct username/password (as accepted by LDAP), the user should be able to associate to the WLAN, but only to the WLAN of which he/she is allowed.  Students can connect to the StudentWLAN; Faculty can connect to the FacultyWLAN.
<br>
<br>How would I configure the checkval module?  Is it even necessary to use the checkval module?  How would I conifgure the users file?  Is the users file even necessary?<br><br>Just to show what I've got config'd at the moment...  Using the config below, I am able to successfully allow users to join the WLAN using WPA and EAP-PEAP from Windows XP SP2.  But again, the user should not be able to join just any ol' LAN.
<br><br>If anyone has any experience with using checkval or doing caller-id type activities, I'd love to read how you did it!<br><br>P.S.  I don't know who to direct compliments to, but the FreeRADIUS code is probably the most beautifully structured source code I have ever read.  It is SO easy to read and extremely consistent!  It's phenomenal!  And no, I can't answer my question myself just cuz I read the code...  ;)  But it's helped me to get this far!!
<br><br>authorize {<br>        # for WinXP, 802.1x, EAP-PEAP, MS-CHAPv2<br>        preprocess<br>        eap<br>        files<br>        ldap<br>        checkval<br>}<br>authenticate {<br>        # for WinXP, 802.1x, EAP-PEAP, MS-CHAPv2
<br>        Auth-Type MS-CHAP {<br>                mschap<br>        }<br>        eap<br>}<br>modules {<br>        mschap {<br>                authtype = MS-CHAP<br>                use_mppe = yes<br>                require_encryption = yes
<br>                require_strong = yes<br>                with_ntdomain_hack = no<br>        }<br>        ldap {<br>              <snip><br>        }<br>        eap {<br>                default_eap_type = peap<br>
                timer_expire = 60<br>                ignore_unknown_eap_types = no<br>                cisco_accounting_username_bug = no<br>                md5 {<br>                }<br>                tls {<br>                        private_key_password = <snip>
<br>                        private_key_file = /etc/1x/server.pem<br>                        certificate_file = /etc/1x/server.pem<br>                        CA_file = /etc/1x/root.pem<br>                        dh_file = /etc/1x/DH
<br>                        random_file = /etc/1x/random<br>                        include_length = yes<br>                }<br>                peap {<br>                        default_eap_type = mschapv2<br>                }
<br>                mschapv2 {<br>                }<br>        }<br>}<br><br>I have NOTHING in users at this moment.<br><br>