2004-06-12 23863歩

λ FreeRADIUSの認証の仕組み

基本的に属性と値(a/v pair)のかたまりをこねくり回す。それ以外の処理は何もしないと思っていれば間違いない。 radiusプロトコル的にはAcceptかRejectかの返事は a/v pair の例外だが、FreeRADIUSの内部的にはそれにも属性を割り当てているように見える。

  • (プロキシなし) authorize → authenticate → post-auth
  • (プロキシあり) authorize → pre-proxy → (リモートに問い合わせ) → post-proxy → post-auth

プロキシのありなしの分岐は、authorize終了時点で Proxy-To-Realm 属性に値が入っているかどうかで決まる 。 この挙動を理解すると、特定のデリミタでレルムを切り出す以外に、 自由に判断を行なってradiusプロキシを制御することが可能。

usersファイルを利用する場合は、User-Name属性をキーにする必要があるというキツい制限があるが、 SQL経由なら特別なモジュールを作成しなくても自由に認証をかけることができる。

TODO: ダイアルアップルータの電話番号認証をもうすこしスッキリさせる。>俺

[]