オープンソース

FreeRADIUS〜OSSのRADIUSサーバ〜

FreeRADIUSとは、GNU General Public License, Version 2の下で公開されているオープンソースソフトウェアのRADIUSサーバです。FreeRADIUSは、RADIUSプロトコルを実装したソフトウェアとしてはデファクトスタンダード的な位置づけになっています。商用製品のRADIUSサーバでは、ユーザ数に応じたライセンスが一般的です。しかし、FreeRADIUSはオープンソースソフトウェアですので、ユーザ数に関係なく自由に利用することができます。

FreeRADIUSとは

FreeRADIUとSは、非常に古くから使われているRADIUSサーバのソフトウェアです。最初のバージョンである0.10版が2001年にリリースされてから、約20年の歴史がある安定したソフトウェアです。FreeRADIUSは、RedHat Enterprise Linux、SuSE Linux Enterprise Server、Debian、Ubuntuなど、様々なLinuxディストリビューションに採用されているRADIUSサーバです。FreeRADIUSはオープンソースソフトウェアですので、ユーザ数に関係なく自由に利用することができます。

FreeRADIUSは、RADIUSサーバのデファクトスタンダードで、RADIUSサーバとして必要な次の機能を備えています。

  • AAA(認証、承認、アカウンティング)の機能
  • RADIUSクライアントの共有鍵
  • RADIUSプロキシの機能
  • IEEE 802.1X認証(EAP-TLS、EAP-PEAP、EAP-TTLS、EAP-SIM)

FreeRADIUSは、RedHat Enterprise Linuxなどの商用ディストリビューションを使えば、長期に渡るサポートを受けることもできます。

RADIUSプロトコル

RADIUSは、Remote Authentication Dial In User Service の略称です。RADIUSは、この名前の通り、インターネットの初期にはダイアルアップサービスで利用されていた認証のプロトコルです。近年では、ダイアルアップサービスを行うことはほとんどなくなりましたが、無線LANやVPN装置などの認証で使われています。FreeRADIUSは、RADIUSの利用で必要となるAAAの機能を提供します。つまり、認証(Authentication)だけでなく、認可(Authorization)、課金(Accounting)にも対応しています。

FreeRADIUSの認証の流れ

RADIUSプロトコルは、サーバ・クライアントモデルで動作します。RADIUSの認証では、次の3つが相互に通信を行って認証処理を行います。

  • ユーザ 〜 認証される人
  • RADIUSクライアント 〜 ユーザが利用しようとしている機器
  • RADIUSサーバ(FreeRADIUS)

RADISU認証システムとの連携画像

「RADIUSクライアント」は、NAS(Network Access Server)とも呼ばれます。認証は、次のような手順で行われます。

  1. ユーザがネットワークに接続しようとします
  2. RADIUSクライアントは、ユーザに認証を要求します
  3. ユーザがユーザ名、パスワードを入力し、認証を行います
  4. RADIUSクライアントは、受け取ったユーザ名、パスワードを使って、FreeRADIUSにアクセス認証のリクエストを出します
  5. FreeRADIUSサーバは認証処理を行い、RADIUSクライアントに認証可否を伝えます
  6. RADIUSクライアントは、ユーザに認証結果を伝えます

これ以外にRADIUSでは、課金処理にも対応しています。課金処理は、次のような手順で行われます。

  1. RADIUSクライアントがFreeRADIUSに課金要求を送信する
  2. FreeRADIUSが課金処理を行い応答を返す

なお、FreeRADIUSではradiusdがRADIUSサーバの機能を担います。また、RADIUSパケットを送信するクライアント(radclient)やテスト用のクライアント(radtest)が付属しています。

FreeRADIUSの特徴

FreeRADIUSには、次のような特徴があります。

簡易的な認証方式から拡張認証までをサポート

RADIUSプロトコルは、トランスポートレベルのセキュリティに対応していません。そのため、RADIUSプロトコルは、PPPと組み合わせて使うのが一般的です。無線LANや認証スイッチで使われる802.1Xの認証では、ネットワーク上でパケットを盗聴される恐れがあります。そのため、セキュリティの高い拡張認証方式が使われています。FreeRADIUSは、この拡張認証方式もサポートしています。

サポートする主な認証方式は、次の通りです。

  • PAP     〜 ユーザ名とパスワードによる認証。平文でデータが交換される。
  • CHAP   〜 RADIUSサーバとクライアントで、ハッシュ化した認証方法を照らし合わせる方式
  • EAP-MD5  〜 チャレンジ・レスポンス方式を使用して認証を行う拡張認証方式
  • EAP-TLS   〜 ユーザ名とパスワードではなく、TLS証明書を使って認証を行う拡張認証方式
  • EAP-TTLS 〜 サーバとユーザの証明書で認証した後、サーバの証明書で通信経路を暗号化する拡張認証方式
  • EAP-PEAP 〜 サーバの証明書で通信経路を暗号化し、ユーザ名とパスワードを使った認証を行う拡張認証方式
  • EAP-SIM   〜 通信端末のSIM情報を使った認証を行う拡張認証方式

様々なユーザデータベースと連携が可能

FreeRADIUSでは、アカウントの管理のために、様々なバックエンドデータベースを利用できます。代表的なものは、次の通りです。

  • テキストファイル

    標準では、設定ファイル(/etc/raddb/users)にユーザのアカウントや属性などの情報を設定します。
    Cleartext-Passwordを登録していれば、CHAPにも対応することができます。

  • パスワードファイル

    /etc/password、/etc/shadowなど、システムのパスワード情報を参照することができます。
    パスワードが暗号化されているためCHAPには対応できません。

  • PAM

    Linuxの認証モジュールPAM(Pluggable Authentication Modules)を使って認証することができます。
    パスワードが暗号化されているためCHAPには対応できません。

  • リレーショナルデータベース

    外部のデータベースに認証情報を管理することができます。MySQL、MariaDB、PostgreSQLなどに対応しています。
    データベースに平文パスワードを登録すれば、CHAPにも対応ができます。

  • LDAP

    LDAPによる認証に対応しています。LDAPに平文パスワードが登録されていればCHAP認証もサポートできます。

  • ActiveDirectory

    WindowsのActiveDirectoryと連携することができます。winbindを使うことで、CHAP認証も行うことができます。

  • RADIUSサーバ

    外部のRADIUSサーバに、認証要求を転送することができます。ISP間でのローミングなどにも対応できます。

ワンタイムパスワード(OTP)との連携

ワンタイムパスワードのOSSであるGoogle Authenticatorとも連携することが可能です。Google Authenticatorは、時刻同期式のワンタイムパスワードシステムで、Googleが開発したものです。スマートフォンで動作するソフトウェアトークンを利用して認証を行うことができます。

認証局との連携

EAP-TLSやEAP-TTLSなどの拡張認証方式を使う場合には、認証局と連携することもできます。認証局の証明書を使ったクライアント証明書の検査や、失効リストとの照合なども行います。デージーネットでは、認証局としては、OpenXPIとの連携を推奨しています。

アカウント管理GUI

FreeRADIUSのインストールや運用では、比較的複雑な設定ファイルを手動で編集する必要があります。そのため、運用管理の負荷が問題になることがあります。daloRADIUSは、こうした問題を解決するオープンソースソフトウェアで、FreeRADIUS専用のアカウント管理GUIを提供します。

daloRADIUSは、Liran Tal氏が開発し、管理していて、GNU General Public License version 2.0(GPLv2)の下で公開されています。Web画面の日本語化はデージーネットで行っています。daloRADIUSは、MySQL/MariaDBと連携してユーザ情報を管理するため、ユーザ数の多い大規模な環境にも対応できます。

このように、daloRADIUSを組み合わせて使えば、通常の運用で必要なログの管理やユーザやクライアントの登録・変更などのオペレーションをWEB経由で行うことができるようになります。そのため、導入の大きな課題であった運用管理の負荷を、大幅に低減することができます。

デモのお申込み

もっと使い方が知りたい方へ
操作方法や操作性をデモにてご確認いただけます。使い方のイメージを把握したい、使えるか判断したい場合にご活用下さい。デモをご希望の方は、下記よりお申込みいただけます。
デモをご希望の方

デモの申し込みイメージ


OSS情報

FreeRADIUSのアカウント管理GUI
〜daloRADIUS〜
GUIでRADIUSアカントを管理するOSSであるdaloRADIUSを紹介します。
多要素認証とFreeRADIUS
FreeRADIUSとGoogle Authenticatorを組み合わせて、多要素認証を実現できます。多要素認証を活用することで、認証セキュリティをより強固にすることが可能です。
FreeRADIUSとdaloRADIUSのよくある質問
FreeRADIUSとdaloRADIUSについて、お客様からよくいただく質問にお答えします。
 
 

FreeRADIUS〜OSSのRADIUSサーバ〜の先頭へ