私は RADIUS 認証要求への応答に要求と共に送信された属性も含まれている RADIUS サーバー (ソース コードは持っていません) を使用しています。
ただし、tinyradius のソース コードを調べたところ、応答パケットの生成中に要求パケットからすべての属性がコピーされていないようです。属性番号 33 (STATE 属性) が存在する場合にのみコピーします。
RadiusClients はどちらの応答も受け入れるようです。何をするのが正しいですか?
私は RADIUS 認証要求への応答に要求と共に送信された属性も含まれている RADIUS サーバー (ソース コードは持っていません) を使用しています。
ただし、tinyradius のソース コードを調べたところ、応答パケットの生成中に要求パケットからすべての属性がコピーされていないようです。属性番号 33 (STATE 属性) が存在する場合にのみコピーします。
RadiusClients はどちらの応答も受け入れるようです。何をするのが正しいですか?
いいえ、RADIUS 応答にすべての要求属性を含めることはできません。
状態は特別で、複数回の要求/応答を一緒にリンクするために使用できます。
状態の 2 つの主な使用例は、パスワードと OTP コードが 2 つ以上のラウンドで送信される OTP 認証、または複数のラウンドで再び発生する EAP 認証です。
NAS RADIUS
--- ------
# Password round
Access-Request ->
<- Access-Challenge
[Generates random state 0x01]
# OTP round
Access-Request
[Copies state 0x01] ->
Access-Accept/Reject
状態属性がないと、Access-Challenge とそれに続く Access-Request をリンクする方法がありません。
注: 状態をどうするかについての仕様はありません。パケットを結び付けるために使用されるだけです。FreeRADIUS では、マルチラウンド認証試行のすべてのラウンドでポリシーに使用できる「セッション状態」属性のリストを維持しています。