web-dev-qa-db-ja.com

半径証明書ベース(eap)認証

現在、無線接続を介して認証するために証明書を使用するフリーラジアスサーバーを設置しています。これは802.1xで機能しますが、Windows7用のNovellのクライアントは802.1xプロトコルを破ります。したがって、証明書ベースの認証が必要です。

テストドメインを設定して実行していますが、定期的に内部/外部認証を行うことができます。証明書を実装すると、物事がおかしくなり始めます。 radius -X出力を添付しました(少なくとも、EAPモジュールをインスタンス化しようとする部分。グーグルで答えを探しましたが、実際には何も見つかりませんでした。助けていただければ幸いです。ありがとうございます。


Module: Instantiating eap
  eap {
        default_eap_type = "eap"
        timer_expire = 60
        ignore_unknown_eap_types = no
        Cisco_accounting_username_bug = no
        max_sessions = 4096
  }

 Module: Linked to sub-module rlm_eap_md5
 Module: Instantiating eap-md5
 Module: Linked to sub-module rlm_eap_leap
 Module: Instantiating eap-leap
 Module: Linked to sub-module rlm_eap_gtc
 Module: Instantiating eap-gtc
   gtc {
        challenge = "Password: "
        auth_type = "PAP"
   }
 Module: Linked to sub-module rlm_eap_tls
 Module: Instantiating eap-tls
   tls {
        rsa_key_exchange = no
        dh_key_exchange = yes
        rsa_key_length = 512
        dh_key_length = 512
        verify_depth = 0
        pem_file_type = yes
        private_key_file = "/etc/raddb/certs/server.pem"
        certificate_file = "/etc/raddb/certs/server.pem"
        CA_file = "/etc/raddb/certs/ca.pem"
        private_key_password = "whatever"
        dh_file = "/etc/raddb/certs/dh"
        random_file = "/etc/raddb/certs/random"
        fragment_size = 1024
        include_length = yes
        check_crl = no
        cipher_list = "DEFAULT"
    cache {
        enable = no
        lifetime = 24
        max_entries = 255
    }
   }
 Module: Linked to sub-module rlm_eap_ttls
 Module: Instantiating eap-ttls
   ttls {
        default_eap_type = "mschapv2"
        copy_request_to_tunnel = no
        use_tunneled_reply = no
        virtual_server = "inner-tunnel"
        include_length = yes
   }
 Module: Linked to sub-module rlm_eap_peap
 Module: Instantiating eap-peap
   peap {
        default_eap_type = "mschapv2"
        copy_request_to_tunnel = no
        use_tunneled_reply = no
        proxy_tunneled_request_as_eap = yes
        virtual_server = "inner-tunnel"
   }
 Module: Linked to sub-module rlm_eap_mschapv2
 Module: Instantiating eap-mschapv2
   mschapv2 {
        with_ntdomain_hack = no
   }
rlm_eap: Unknown default EAP type eap
/etc/raddb/eap.conf[17]: Instantiation failed for module "eap"
/etc/raddb/sites-enabled/inner-tunnel[223]: Failed to load module "eap".
/etc/raddb/sites-enabled/inner-tunnel[176]: Errors parsing authenticate section.
3
lilott8

これは802.1xで機能しますが、Windows 7用のNovellのクライアントは802.1xプロトコルを破ります。したがって、証明書ベースの認証が必要です。

これは私には意味がありません。 EAP-PEAP、EAP-TLS、またはEAP-TTLSのいずれを使用しているかに関係なく、サプリカントはオーセンティケーターと802.1xを通信する必要があります。 Novellのクライアントが本当に802.1xを破った場合、EAP(それ自体はEAPOLを介してトンネリングされます)で使用することを決定した認証メカニズムに関係なく、これを機能させる方法はありません。802.1xはサプリカントとオーセンティケーターによってサポートされる必要があります。


述べられているあなたの問題はおそらくここにあります:

rlm_eap: Unknown default EAP type eap
/etc/raddb/eap.conf[17]: Instantiation failed for module "eap"

EAP認証メカニズムをEAPに設定することはできません。 EAPは単なる認証フレームワークであるため、Extensible AuthenticationProtocolです。 EAPで使用するプロトコルを選択する必要があります。

証明書についておっしゃっていたので、EAP-TLSを実装していると思います。あなたはおそらく変更したいでしょう:

default_eap_type = "eap"

eap: default_eap_type = "tls"
1
user62491