ok (you guys propably hate me :) but please could you still give me the answers as you did before)<br>but back to the subject:<br>I did like you said, <br>I installed 2.0.4 version (compiled using suggestions from:<br><a href="http://www.fatofthelan.com/articles/articles.php?pid=27">http://www.fatofthelan.com/articles/articles.php?pid=27</a><br>
<a href="http://www.linuxinsight.com/building-debian-freeradius-package-with-eap-tls-ttls-peap-support.html">http://www.linuxinsight.com/building-debian-freeradius-package-with-eap-tls-ttls-peap-support.html</a> )<br><br>
Next, I make a one change in eap.conf <br>
default_eap_type = peap #was md5<br>
<br>and I add my switch-client to clients.conf<br>
<br>#cd /etc/freeradius/certs<br>
#rm -f *.pem *.der *.csr *.crt *.key *.p12 serial* index.txt*<br>
<br>I edited: <br>
ca.cnf, client.cnf, server.cnf and I change line in everyone<br>
default_bits            = 1024 #was 2048<br>
<br>next:<br>
#make ca ca.der dh random server client<br>
<br>Then I make the copy of ca.der and client.p12 to Windows, both of them are installed in CA and Personal directory<br><br>And two things:<br><br>first one:<br>when I open properites of client certificate on XP using mmc-certificates console I have the information that "Windows doesnt have enough information to verify this certificate" "You have proper private key to this certificate" (it is non-english system so its translation but I think translation is ok)<br>
<br>second one:<br>FreeRADIUS Version 2.0.4, for host i486-pc-linux-gnu, built on May 18 2009 at 12:50:33<br>Copyright (C) 1999-2008 The FreeRADIUS server project and contributors.<br>There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A<br>
PARTICULAR PURPOSE.<br>You may redistribute copies of FreeRADIUS under the terms of the<br>GNU General Public License.<br>Starting - reading configuration files ...<br>including configuration file /etc/freeradius/radiusd.conf<br>
including configuration file /etc/freeradius/proxy.conf<br>including configuration file /etc/freeradius/clients.conf<br>including configuration file /etc/freeradius/snmp.conf<br>including configuration file /etc/freeradius/eap.conf<br>
including configuration file /etc/freeradius/policy.conf<br>including files in directory /etc/freeradius/sites-enabled/<br>including configuration file /etc/freeradius/sites-enabled/default<br>including configuration file /etc/freeradius/sites-enabled/inner-tunnel<br>
including dictionary file /etc/freeradius/dictionary<br>main {<br>        prefix = "/usr"<br>        localstatedir = "/var"<br>        logdir = "/var/log/freeradius"<br>        libdir = "/usr/lib/freeradius"<br>
        radacctdir = "/var/log/freeradius/radacct"<br>        hostname_lookups = no<br>        max_request_time = 30<br>        cleanup_delay = 5<br>        max_requests = 1024<br>        allow_core_dumps = no<br>
        pidfile = "/var/run/freeradius/freeradius.pid"<br>        user = "freerad"<br>        group = "freerad"<br>        checkrad = "/usr/sbin/checkrad"<br>        debug_level = 0<br>
        proxy_requests = yes<br> security {<br>        max_attributes = 200<br>        reject_delay = 1<br>        status_server = yes<br> }<br>}<br> client localhost {<br>        ipaddr = 127.0.0.1<br>        require_message_authenticator = no<br>
        secret = "testing123"<br>        nastype = "other"<br> }<br> client <a href="http://192.168.5.0/24">192.168.5.0/24</a> {<br>        require_message_authenticator = no<br>        secret = "windows"<br>
        shortname = "private-network-2"<br> }<br>radiusd: #### Loading Realms and Home Servers ####<br> proxy server {<br>        retry_delay = 5<br>        retry_count = 3<br>        default_fallback = no<br>        dead_time = 120<br>
        wake_all_if_all_dead = no<br> }<br> home_server localhost {<br>        ipaddr = 127.0.0.1<br>        port = 1812<br>        type = "auth"<br>        secret = "testing123"<br>        response_window = 20<br>
        max_outstanding = 65536<br>        zombie_period = 40<br>        status_check = "status-server"<br>        ping_check = "none"<br>        ping_interval = 30<br>        check_interval = 30<br>        num_answers_to_alive = 3<br>
        num_pings_to_alive = 3<br>        revive_interval = 120<br>        status_check_timeout = 4<br> }<br> home_server_pool my_auth_failover {<br>        type = fail-over<br>        home_server = localhost<br> }<br> realm <a href="http://example.com">example.com</a> {<br>
        auth_pool = my_auth_failover<br> }<br> realm LOCAL {<br> }<br>radiusd: #### Instantiating modules ####<br> instantiate {<br> Module: Linked to module rlm_exec<br> Module: Instantiating exec<br>  exec {<br>        wait = yes<br>
        input_pairs = "request"<br>        shell_escape = yes<br>  }<br> Module: Linked to module rlm_expr<br> Module: Instantiating expr<br> Module: Linked to module rlm_expiration<br> Module: Instantiating expiration<br>
  expiration {<br>        reply-message = "Password Has Expired  "<br>  }<br> Module: Linked to module rlm_logintime<br> Module: Instantiating logintime<br>  logintime {<br>        reply-message = "You are calling outside your allowed timespan  "<br>
        minimum-timeout = 60<br>  }<br> }<br>radiusd: #### Loading Virtual Servers ####<br>server inner-tunnel {<br> modules {<br> Module: Checking authenticate {...} for more modules to load<br> Module: Linked to module rlm_pap<br>
 Module: Instantiating pap<br>  pap {<br>        encryption_scheme = "auto"<br>        auto_header = no<br>  }<br> Module: Linked to module rlm_chap<br> Module: Instantiating chap<br> Module: Linked to module rlm_mschap<br>
 Module: Instantiating mschap<br>  mschap {<br>        use_mppe = yes<br>        require_encryption = no<br>        require_strong = no<br>        with_ntdomain_hack = no<br>  }<br> Module: Linked to module rlm_unix<br> Module: Instantiating unix<br>
  unix {<br>        radwtmp = "/var/log/freeradius/radwtmp"<br>  }<br> Module: Linked to module rlm_eap<br> Module: Instantiating eap<br>  eap {<br>        default_eap_type = "peap"<br>        timer_expire = 60<br>
        ignore_unknown_eap_types = no<br>        cisco_accounting_username_bug = no<br>  }<br> Module: Linked to sub-module rlm_eap_md5<br> Module: Instantiating eap-md5<br> Module: Linked to sub-module rlm_eap_leap<br> Module: Instantiating eap-leap<br>
 Module: Linked to sub-module rlm_eap_gtc<br> Module: Instantiating eap-gtc<br>   gtc {<br>        challenge = "Password: "<br>        auth_type = "PAP"<br>   }<br> Module: Linked to sub-module rlm_eap_tls<br>
 Module: Instantiating eap-tls<br>   tls {<br>        rsa_key_exchange = no<br>        dh_key_exchange = yes<br>        rsa_key_length = 512<br>        dh_key_length = 512<br>        verify_depth = 0<br>        pem_file_type = yes<br>
        private_key_file = "/etc/freeradius/certs/server.pem"<br>        certificate_file = "/etc/freeradius/certs/server.pem"<br>        CA_file = "/etc/freeradius/certs/ca.pem"<br>        private_key_password = "whatever"<br>
        dh_file = "/etc/freeradius/certs/dh"<br>        random_file = "/etc/freeradius/certs/random"<br>        fragment_size = 1024<br>        include_length = yes<br>        check_crl = no<br>        cipher_list = "DEFAULT"<br>
   }<br> Module: Linked to sub-module rlm_eap_ttls<br> Module: Instantiating eap-ttls<br>   ttls {<br>        default_eap_type = "md5"<br>        copy_request_to_tunnel = no<br>        use_tunneled_reply = no<br>
        virtual_server = "inner-tunnel"<br>   }<br> Module: Linked to sub-module rlm_eap_peap<br> Module: Instantiating eap-peap<br>   peap {<br>        default_eap_type = "mschapv2"<br>        copy_request_to_tunnel = no<br>
        use_tunneled_reply = no<br>        proxy_tunneled_request_as_eap = yes<br>        virtual_server = "inner-tunnel"<br>   }<br> Module: Linked to sub-module rlm_eap_mschapv2<br> Module: Instantiating eap-mschapv2<br>
   mschapv2 {<br>        with_ntdomain_hack = no<br>   }<br> Module: Checking authorize {...} for more modules to load<br> Module: Linked to module rlm_realm<br> Module: Instantiating suffix<br>  realm suffix {<br>        format = "suffix"<br>
        delimiter = "@"<br>        ignore_default = no<br>        ignore_null = no<br>  }<br> Module: Linked to module rlm_files<br> Module: Instantiating files<br>  files {<br>        usersfile = "/etc/freeradius/users"<br>
        acctusersfile = "/etc/freeradius/acct_users"<br>        preproxy_usersfile = "/etc/freeradius/preproxy_users"<br>        compat = "no"<br>  }<br> Module: Checking session {...} for more modules to load<br>
 Module: Linked to module rlm_radutmp<br> Module: Instantiating radutmp<br>  radutmp {<br>        filename = "/var/log/freeradius/radutmp"<br>        username = "%{User-Name}"<br>        case_sensitive = yes<br>
        check_with_nas = yes<br>        perm = 384<br>        callerid = yes<br>  }<br> Module: Checking post-proxy {...} for more modules to load<br> Module: Checking post-auth {...} for more modules to load<br> Module: Linked to module rlm_attr_filter<br>
 Module: Instantiating attr_filter.access_reject<br>  attr_filter attr_filter.access_reject {<br>        attrsfile = "/etc/freeradius/attrs.access_reject"<br>        key = "%{User-Name}"<br>  }<br> }<br>
}<br>server {<br> modules {<br> Module: Checking authenticate {...} for more modules to load<br> Module: Checking authorize {...} for more modules to load<br> Module: Linked to module rlm_preprocess<br> Module: Instantiating preprocess<br>
  preprocess {<br>        huntgroups = "/etc/freeradius/huntgroups"<br>        hints = "/etc/freeradius/hints"<br>        with_ascend_hack = no<br>        ascend_channels_per_line = 23<br>        with_ntdomain_hack = no<br>
        with_specialix_jetstream_hack = no<br>        with_cisco_vsa_hack = no<br>        with_alvarion_vsa_hack = no<br>  }<br> Module: Checking preacct {...} for more modules to load<br> Module: Linked to module rlm_acct_unique<br>
 Module: Instantiating acct_unique<br>  acct_unique {<br>        key = "User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port"<br>  }<br> Module: Checking accounting {...} for more modules to load<br>
 Module: Linked to module rlm_detail<br> Module: Instantiating detail<br>  detail {<br>        detailfile = "/var/log/freeradius/radacct/%{Client-IP-Address}/detail-%Y%m%d"<br>        header = "%t"<br>
        detailperm = 384<br>        dirperm = 493<br>        locking = no<br>        log_packet_header = no<br>  }<br> Module: Instantiating attr_filter.accounting_response<br>  attr_filter attr_filter.accounting_response {<br>
        attrsfile = "/etc/freeradius/attrs.accounting_response"<br>        key = "%{User-Name}"<br>  }<br> Module: Checking session {...} for more modules to load<br> Module: Checking post-proxy {...} for more modules to load<br>
 Module: Checking post-auth {...} for more modules to load<br> }<br>}<br>radiusd: #### Opening IP addresses and Ports ####<br>listen {<br>        type = "auth"<br>        ipaddr = *<br>        port = 0<br>}<br>listen {<br>
        type = "acct"<br>        ipaddr = *<br>        port = 0<br>}<br>main {<br>        snmp = no<br>        smux_password = ""<br>        snmp_write_access = no<br>}<br>Listening on authentication address * port 1812<br>
Listening on accounting address * port 1813<br>Listening on proxy address * port 1814<br>Ready to process requests.<br>rad_recv: Access-Request packet from host 192.168.5.206 port 1812, id=138, length=147<br>        NAS-IP-Address = 192.168.5.206<br>
        NAS-Port = 50046<br>        NAS-Port-Type = Ethernet<br>        User-Name = "<a href="mailto:user@example.com">user@example.com</a>"<br>        Called-Station-Id = "00-0C-30-81-9B-EE"<br>        Calling-Station-Id = "00-0A-E4-13-1A-02"<br>
        Service-Type = Framed-User<br>        Framed-MTU = 1500<br>        EAP-Message = 0x020000150175736572406578616d706c652e636f6d<br>        Message-Authenticator = 0xc718b1d4b7b081aec676335c3b5212a5<br>+- entering group authorize<br>
++[preprocess] returns ok<br>++[chap] returns noop<br>++[mschap] returns noop<br>    rlm_realm: Looking up realm "<a href="http://example.com">example.com</a>" for User-Name = "<a href="mailto:user@example.com">user@example.com</a>"<br>
    rlm_realm: Found realm "<a href="http://example.com">example.com</a>"<br>    rlm_realm: Adding Stripped-User-Name = "user"<br>    rlm_realm: Adding Realm = "<a href="http://example.com">example.com</a>"<br>
    rlm_realm: Proxying request from user user to realm <a href="http://example.com">example.com</a><br>    rlm_realm: Preparing to proxy authentication request to realm "<a href="http://example.com">example.com</a>"<br>
++[suffix] returns updated<br>  rlm_eap: Request is supposed to be proxied to Realm <a href="http://example.com">example.com</a>.  Not doing EAP.<br>++[eap] returns noop<br>++[unix] returns updated<br>++[files] returns noop<br>
++[expiration] returns noop<br>++[logintime] returns noop<br>++[pap] returns noop<br>Sending Access-Request of id 188 to 127.0.0.1 port 1812<br>        NAS-IP-Address = 192.168.5.206<br>        NAS-Port = 50046<br>        NAS-Port-Type = Ethernet<br>
        User-Name = "user"<br>        Called-Station-Id = "00-0C-30-81-9B-EE"<br>        Calling-Station-Id = "00-0A-E4-13-1A-02"<br>        Service-Type = Framed-User<br>        Framed-MTU = 1500<br>
        EAP-Message = 0x020000150175736572406578616d706c652e636f6d<br>        Message-Authenticator = 0x00000000000000000000000000000000<br>        Proxy-State = 0x313338<br>Proxying request 0 to home server 127.0.0.1 port 1812<br>
Sending Access-Request of id 188 to 127.0.0.1 port 1812<br>        NAS-IP-Address = 192.168.5.206<br>        NAS-Port = 50046<br>        NAS-Port-Type = Ethernet<br>        User-Name = "user"<br>        Called-Station-Id = "00-0C-30-81-9B-EE"<br>
        Calling-Station-Id = "00-0A-E4-13-1A-02"<br>        Service-Type = Framed-User<br>        Framed-MTU = 1500<br>        EAP-Message = 0x020000150175736572406578616d706c652e636f6d<br>        Message-Authenticator = 0x00000000000000000000000000000000<br>
        Proxy-State = 0x313338<br>Going to the next request<br>Waking up in 0.9 seconds.<br>rad_recv: Access-Request packet from host 127.0.0.1 port 1814, id=188, length=140<br>        NAS-IP-Address = 192.168.5.206<br>        NAS-Port = 50046<br>
        NAS-Port-Type = Ethernet<br>        User-Name = "user"<br>        Called-Station-Id = "00-0C-30-81-9B-EE"<br>        Calling-Station-Id = "00-0A-E4-13-1A-02"<br>        Service-Type = Framed-User<br>
        Framed-MTU = 1500<br>        EAP-Message = 0x020000150175736572406578616d706c652e636f6d<br>        Message-Authenticator = 0xc54d60ff3ff696c5454632125d942c95<br>        Proxy-State = 0x313338<br>+- entering group authorize<br>
++[preprocess] returns ok<br>++[chap] returns noop<br>++[mschap] returns noop<br>    rlm_realm: No '@' in User-Name = "user", looking up realm NULL<br>    rlm_realm: No such realm "NULL"<br>++[suffix] returns noop<br>
  rlm_eap: EAP packet type response id 0 length 21<br>  rlm_eap: No EAP Start, assuming it's an on-going EAP conversation<br>++[eap] returns updated<br>++[unix] returns updated<br>++[files] returns noop<br>++[expiration] returns noop<br>
++[logintime] returns noop<br>rlm_pap: Found existing Auth-Type, not changing it.<br>++[pap] returns noop<br>  rad_check_password:  Found Auth-Type EAP<br>auth: type "EAP"<br>+- entering group authenticate<br>rlm_eap: Identity does not match User-Name, setting from EAP Identity.<br>
  rlm_eap: Failed in handler<br>++[eap] returns invalid<br>auth: Failed to validate the user.<br>Login incorrect: [user/<via Auth-Type = EAP>] (from client localhost port 50046 cli 00-0A-E4-13-1A-02)<br>  Found Post-Auth-Type Reject<br>
+- entering group REJECT<br>        expand: %{User-Name} -> user<br> attr_filter: Matched entry DEFAULT at line 11<br>++[attr_filter.access_reject] returns updated<br>Delaying reject of request 1 for 1 seconds<br>Going to the next request<br>
Waking up in 0.9 seconds.<br>Sending delayed reject for request 1<br>Sending Access-Reject of id 188 to 127.0.0.1 port 1814<br>        Proxy-State = 0x313338<br>Waking up in 4.9 seconds.<br>rad_recv: Access-Reject packet from host 127.0.0.1 port 1812, id=188, length=25<br>
        Proxy-State = 0x313338<br>+- entering group post-proxy<br>  rlm_eap: No pre-existing handler found<br>++[eap] returns noop<br>Login incorrect (Home Server says so): [<a href="http://user@example.com/">user@example.com/</a><no User-Password attribute>] (from client private-network-2 port 50046 cli 00-0A-E4-13-1A-02)<br>
  Found Post-Auth-Type Reject<br>+- entering group REJECT<br>        expand: %{User-Name} -> <a href="mailto:user@example.com">user@example.com</a><br> attr_filter: Matched entry DEFAULT at line 11<br>++[attr_filter.access_reject] returns updated<br>
Sending Access-Reject of id 138 to 192.168.5.206 port 1812<br>Finished request 0.<br>Going to the next request<br>Waking up in 4.9 seconds.<br>Cleaning up request 1 ID 188 with timestamp +17<br>Cleaning up request 0 ID 138 with timestamp +17<br>
Ready to process requests.<br><br><br>