
freeRADIUSバージョン2を使用しています。デフォルトのeapタイプを正常に変更しました。
デフォルトではpapが必要なので、内部認証を変更したいと思います。
ttlsの内部認証を変更しようとしましたが、次のことが起こります。
ttls {
default_eap_type = "pap"
copy_request_to_tunnel = no
use_tunneled_reply = no
virtual_server = "inner-tunnel"
include_length = yes
}
rlm_eap_ttls: Unknown EAP type pap
rlm_eap: Failed to initialize type ttls
/usr/local/etc/raddb/eap.conf[17]: Instantiation failed for module "eap"
/usr/local/etc/raddb/sites-enabled/default[310]: Failed to load module "eap".
/usr/local/etc/raddb/sites-enabled/default[252]: Errors parsing authenticate section.
また、peapの内部認証を変更してみましたが、問題は以前と同じです。
peap {
default_eap_type = "pap"
copy_request_to_tunnel = no
use_tunneled_reply = no
proxy_tunneled_request_as_eap = yes
virtual_server = "inner-tunnel"
soh = no
}
rlm_eap_peap: Unknown EAP type pap
rlm_eap: Failed to initialize type peap
/usr/local/etc/raddb/eap.conf[17]: Instantiation failed for module "eap"
/usr/local/etc/raddb/sites-enabled/default[310]: Failed to load module "eap".
/usr/local/etc/raddb/sites-enabled/default[252]: Errors parsing authenticate section.
なぜお父さんを知らないのですか?ありがとうございます。
答え1
問題は、PAPがEAPタイプではないことです。 PAPは一種の認証です。
EAP-TTLSは、内部的にPAPを使用できる唯一の広く使用されているEAPタイプであるため、これを使用しているとします。
サーバーは、EAP-TTLSを処理すると、EAP-TTLS TLSトンネル内の属性を抽出し、それからRADIUS属性を生成します。次に、これらの属性(EAPを転送するRADIUSパケットの属性と組み合わせることができます)を含む要求を「プロキシ」し、それを別の仮想サーバーに送信します(デフォルトは「内部トンネル」)。
内部トンネルでPAP認証を実行するには、RADIUSなどのPAP設定が必要です。
etc/raddb/利用可能なサイト/内部トンネル
server inner-tunnel {
authorize {
ldap | sql | files | whichever module you use to retrieve passwords
pap
}
authenticate {
pap
}
}
注:また、リクエスタの内部方法としてPAPを選択する必要があります。申請者が内部EAP方式を使用するか、トンネル属性を使用するPAP / CHAP / MSCHAPv2を使用するかをネゴシエートする方法はありません。リクエスタは属性を送信し、サーバーは送信するすべてを受け入れます。リクエスタが EAP メッセージ属性を送信し、EAP モジュールが設定されている場合、サーバは EAP を実行します。リクエスタがユーザパスワード属性を送信し、PAP モジュールが設定されている場合、サーバは PAP を実行します。
これは、申請者とサーバーがEAP方法をネゴシエートできるEAPとは異なります。多くの例の交換があります。RFC5281そこから送信されるさまざまな属性を見ることができます。