RADIUSのソースを表示
←
RADIUS
移動先:
案内
、
検索
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
要求した操作を行うことは許可されていません。
このページのソースの閲覧やコピーができます。
'''RADIUS'''('''ラディウス'''、'''ラディアス'''、'''Remote Authentication Dial In User Service''')は、ネットワーク資源の利用の可否の判断([[認証]])と、利用の事実の記録(アカウンティング)を、[[コンピュータネットワーク|ネットワーク]]上の[[サーバ]][[コンピュータ]]に一元化することを目的とした、[[Internet Protocol|IP]]上の[[プロトコル]]である。名称に「ダイヤルイン」という言葉を含むことからわかるように、元来は[[ダイヤルアップ接続|ダイヤルアップ・インターネット接続サービス]]を実現することを目的として開発された。しかし、常時接続方式の[[インターネット]]接続サービス、[[無線LAN]]、[[Virtual Local Area Network|VLAN]]、[[コンテンツ]]提供サービスなどのサービス提供者側設備において、認証とアカウンティングを実現するプロトコルとして幅広く利用されている。 == クライアントサーバモデル == RADIUSプロトコルは、[[クライアントサーバモデル]]に基づいたプロトコルである。RADIUSプロトコルにおける[[クライアント]]は、利用者(人またはコンピュータ)に対してネットワーク接続サービスなどのサービスを提供する機材であり、サーバに対して認証およびアカウンティングを要請する。サーバは、クライアントからの要請に応じて認証およびアカウンティングを行い、応答する。常にクライアントが要求し、サーバが応答する。利用者へのサービスの停止させることなど、サーバがクライアントに対して要求を開始することはできない。クライアントおよびサーバを、一般に「RADIUSクライアント」および「RADIUSサーバ」と呼ぶ。 == RADIUSクライアントの例 == インターネット接続サービスにおいては、ダイヤルアップ着信装置や[[ブロードバンドアクセスサーバ]](BAS、Broadband Access Server)などの着信装置([[ネットワークアクセスサーバ|NAS]]、Network Access Server)がRADIUSクライアントである(「サーバ」という名称であっても、RADIUSプロトコルの観点ではクライアントである)。無線LANにおいては、[[アクセスポイント (無線LAN)|無線LANアクセスポイント]]である。VLANにおいては、VLANスイッチである。コンテンツ提供サービスにおいては、[[Webサーバ|ウェブサーバ]]がRADIUSクライアントとして機能するだろう。 == プロトコルの概要 == クライアントがサーバに「RADIUS要求パケット」を送信し、サーバがクライアントに「RADIUS応答パケット」を送信する。いずれの方向の通信も、IP上の[[User Datagram Protocol|UDP]]パケットによって行う。 いずれのパケットも、ヘッダ部分20[[8ビット|オクテット]]と、「属性」部分とからなる。ヘッダ部分は、種別コード(Code)1オクテット、識別子(Identifier)1オクテット、パケット全体の長さ2オクテット、「認証符号(オーセンティケータ、Authenticator)」16オクテットからなる。識別子は、クライアントが決めて要求パケットに設定し、サーバが応答パケットにコピーする。クライアントが、受信した応答パケットと過去に送信した要求パケットとの対応付けを行うために使用する。クライアントの実装では1ずつ増加する数値とするのが一般的であるが、[[シリアル番号]]であるとは規定されていない。認証符号とは、送信者の詐称と改竄(かいざん)の無いことの証明を行うデータである。属性部分は、属性値ペア (Attribute Value Pair) を任意の回数繰り返したものである。属性値ペアは、属性番号1オクテット、長さ1オクテット、属性の値からなる。値としては、4オクテットの整数値、4オクテットの[[IPアドレス]]、1 - 253オクテットの文字列などを与えることができる。 属性番号ごとに、属性値ペアの値の意味が[[Request for Comments|RFC文書]]において規定されている。属性番号に対する意味を新たに定義することによって使用目的を増やすことができることが、RADIUSプロトコルの柔軟性の源であり、最大の特徴である。機器のベンダが独自に属性番号の意味を定義して独自の目的に使用することは推奨されない。ベンダ独自の機能に対応するためには、属性番号26番 (Vendor Specific) の値として、ベンダ番号を含むデータを与えることが推奨される。属性番号26番の属性値ペアを、一般にVSA (Vendor Specific Attribute) と呼ぶ。ベンダ番号は、[[Internet Assigned Numbers Authority|IANA]]が管理および付与している。 属性値ペアにさまざまな情報を含めることによって、認証とアカウンティングを行う。認証のために、ユーザ名、パスワードのための属性番号が用意されている。ダイヤルアップ・インターネット接続において[[Point-to-Point Protocol|PPP]]を使用する場合のため、PPP用の認証プロトコルである[[PAP]]、[[CHAP]]、[[PPP Extensible Authentication Protocol|EAP]]のそれぞれに適した属性番号が用意されている。アカウンティングのために、利用秒数、送受信データ量などの属性番号が用意されている。これからわかるように、属性番号によって、認証とアカウンティングのどちらで利用できるのか、どちらでも利用できるのかの違いがある。 RADIUSパケットの最大長は、RADIUS認証プロトコルにおいては4096オクテット、RADIUSアカウンティングプロトコルにおいては4095オクテットである。RADIUSアカウンティングプロトコルが4096オクテットでなく4095オクテットであることには特に意味がないようである(RFCの執筆者によれば、タイプミスがそのまま規格になってしまったとのことである)。 == AAAモデル == 「RADIUSプロトコルは、[[AAAモデル]]([[AAA プロトコル]])に基づいたプロトコルである」という表現をすることがある。AAAモデルとは、サービスの提供から記録までの流れを、[[認証]] (Authentication)、[[認可 (セキュリティ)|承認]] (Authorization)、アカウンティング (Accounting) の3つの段階に分けて考えるモデルである。'''認証'''とは、利用者が誰であるかを識別することである。この点では、認証よりも「'''利用者の識別'''」と言ったほうが適切かもしれない。一番単純な認証は、ユーザ名とパスワードの組み合わせが正しいことを確認する方法だろう。'''承認'''とは、認証済みの利用者に対してサービスを提供するか否かを判断することである。たとえば、利用の時刻、発信者電話番号などによる利用場所、前払い利用料金の残額などによって判断するだろう。「認可」「許可」と訳されることもある。'''アカウンティング'''とは、利用の事実を記録することである。「課金」と訳されることもあるが、請求・決済業務を指す課金 (Billing) と混同する可能性があるので「アカウンティング」とカナ表記するのが望ましいだろう。 RADIUSプロトコル自体は、AAAモデルという考え方が確立するよりも前に開発されたものである。そのため、RADIUSプロトコルにおいては、認証と承認を区別せず、あわせて「認証」として取り扱っている。実際、RADIUSクライアントは、利用が拒否された理由がパスワードの間違いなのか、権限の不足なのかを知ることができない。 == 共有鍵 == UDPは[[Transmission Control Protocol|TCP]]と異なり、送信者の詐称、データの改竄を検出することができない。このため、通信相手のIPアドレスだけで通信の内容を信頼することはできない。詐称と改竄を防ぐため、RADIUSクライアントとサーバの間で[[共通鍵暗号|共有鍵]] (Shared secret) と呼ぶ鍵文字列を共有し、パケットの内容と共有鍵から得た[[ハッシュ関数|ダイジェスト情報]]を認証符号および属性値ペアに配置している。共有鍵は、RADIUSクライアントとサーバの組み合わせごとに1個を用意すべきである。RADIUSサーバごとに1個だけ用意し、全てのRADIUSクライアントで同じ共有鍵を使うことは、セキュリティ上の大きなリスクとなる。また、セキュリティの観点から、共有鍵の内容が第三者に漏洩することは大きな問題である。 == プロキシ == RADIUSサーバでありながら、実際の認証とアカウンティングの処理を他のRADIUSサーバに依頼するものを「RADIUS[[プロキシ]]サーバ」と呼ぶ。つまり、RADIUSサーバでありながら、RADIUSクライアントでもある。要求を「転送する」ともいう。 ユーザ名文字列を判断して、要求の転送先を変えることができるだろう。たとえば、ユーザ名として[[電子メール]]アドレスのように「[[アットマーク|@]]」マークと[[ドメイン名]]を含んだ文字列を使用し、ドメイン名の部分の文字列に従って異なるRADIUSサーバに転送することができるだろう。このような技術は、[[インターネットサービスプロバイダ|ISP]](インターネット接続サービスプロバイダ)間の[[ローミング]]や、[[NTTグループ|NTT]]の[[フレッツ]]サービスのようなアクセス網提供サービスとISPとの分業など、広く利用されている。上記の例でのドメイン名の部分のように、転送先を判断する根拠とする部分を、一般に「レルム(Realm)」と呼ぶ。 == IEEE 802.1X == [[IEEE 802.1X]]は、[[Local Area Network|LAN]]の利用の可否を制御する、[[イーサネット]]上のプロトコルである。IEEE 802.1XとRADIUSプロトコルを利用することによって、RADIUSサーバによって認証された利用者のみに対してLANを利用させることができる。もちろん、このためにはIEEE 802.1XおよびRADIUSプロトコルの双方に対応した無線LANアクセスポイントまたはVLANスイッチが必要である。なお、「802.1x」というように「X」を小文字で記述しても誤りではないが、大文字で記述するのが主流である。これは、小文字の「x」が数学で使う「<math>x</math>」のように、「xの部分に入る文字を規定しない」という意味に誤解されることを防ぐためである。 IEEE 802.1XおよびRADIUSプロトコルのいずれも、実際の認証手順については規定していない。実際の認証は、[[EAP-TLS]]、[[PEAP]]、[[EAP-TTLS]]などEAP上の認証手順によって行う。ベンダ独自の認証手順をEAP上に実現することも可能である。EAPによる認証のためのデータのやりとりを、利用者端末とアクセスポイントまたはスイッチの間のイーサネットではIEEE 802.1X、アクセスポイントまたはスイッチとRADIUSサーバの間ではRADIUSプロトコルによって中継する。 EAP-TLSは、[[TLS]]に基づいてデジタル証明書による相互認証(サービス提供者の詐称をも防止する)を行うという点で重要であるが、デジタル証明書の運用と管理の負担が大きいという点で、一般の事業所等では敬遠される傾向がある。PEAPおよびEAP-TTLSは、TLSによる[[暗号|暗号化]]した通信路を形成したうえでパスワード情報のやりとりを行う認証手順である。EAP-TLS、PEAP・EAP-TTLSの対比は、[[ウェブブラウザ]]の[[Transport Layer Security|TLS]]でデジタル証明書による相互認証を行うのか、SSL上でパスワード認証を行うかの違いを考えるとわかりやすいだろう。 == ソフトウェア == 古くから、RADIUSプロトコルの開発者であるLivingston Enterprises社(後にLucent Technologies社に買収された)によるRADIUSサーバの実装と、この実装から派生した実装が多用されてきた。近年では、[[オープンソース]]ソフトウェア、商用ソフトウェアともに、さまざまな実装が存在する。 == 利用事例 == *[[インターネット・サービス・プロバイダ]] *アクセス網提供サービス(ネットワークインフラサービス) *[[携帯電話]]によるネット接続サービス *無線LAN、VLAN *ウェブによる有料コンテンツ提供サービス == 規定 == 以下のRFC文書によって規定されている。 *RFC 2865 - RADIUS認証プロトコル *RFC 2866 - RADIUSアカウンティングプロトコル *RFC 2867 - トンネルプロトコルのためのRADIUSアカウンティングの拡張 *RFC 2868 - トンネルプロトコルで使用するRADIUS属性 *RFC 2869 - RADIUSプロトコルの拡張 *RFC 3162 - [[IPv6]]ネットワークでのRADIUSプロトコルの使用 *RFC 3579 - RADIUSプロトコルでのEAP (RFC 2284) の使用 *RFC 3580 - IEEE 802.1XでのRADIUSプロトコル利用ガイドライン == 関連項目 == * [[DIAMETER]] == 外部リンク == * [http://standards.ieee.org/getieee802/download/802.1X-2001.pdf IEEE 802.1X] :''Copyright (c) 2004 by Accense Technology, Inc.''<br />''Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License Version 1.1 published by the Free Software Foundation.''<br />''この文書をGNU Free Documentation License Version 1.1に規定された条件のもとで、複製、配布、変更することを許諾します。'' [[Category:コンピュータ・ネットワーク・セキュリティ|らていうす]] [[Category:RFC|2865]] [[Category:アイデンティティ管理システム|らていうす]]
RADIUS
に戻る。
案内メニュー
個人用ツール
ログイン
名前空間
ページ
議論
変種
表示
閲覧
ソースを表示
履歴表示
その他
検索
案内
メインページ
コミュニティ・ポータル
最近の出来事
新しいページ
最近の更新
おまかせ表示
sandbox
commonsupload
ヘルプ
ヘルプ
井戸端
notice
bugreportspage
sitesupport
ウィキペディアに関するお問い合わせ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報