Ubuntu18.04でFreeRADIUSサーバセットアップ part1
Radiusサーバをセットアップする機会がありましたので、防備録です
今回はこちらの入門ページ(GettingStarted)を参考にCisco CatalystSwitchでRadiusサーバの機能を検証です。
http://wiki.freeradius.org/guide/Getting%20Started
インストールは以下のコマンドです。
$ sudo apt-get install freeradius
バージョン確認コマンドです。
$ freeradius -v
#Ubuntu18.04の場合
radiusd: FreeRADIUS Version 3.0.16,
#Ubuntu16.04の場合
freeradius: FreeRADIUS Version 2.2.8,
Ubuntu16.04では通常のapt-getでのインストールはFreeRADIUS2.xがインストールされるようですので、Ubuntu18.04のほうが良いかもです。2.xは公式サイトに End Of Life と宣言されていますね。
公式サイト
https://freeradius.org/releases/
ただGettingStartedページを(しっかり読まずに)試してもぜんぜんうまくいかず。。検索して各種ページを試すも泥沼に(よくあることですよね。。)。もう一度しっかり読んで次はびっくりするほど簡単にセットアップ終了です。
よく読むとこちらの設定コマンドは、Debian派生システムの場合(Ubuntu)は適宜読み替えてくれ、とちゃんとかいてありますね。。
・radiusd がDebian派生システムでは freeradius
・/etc/raddb がDebian派生システムでは /etc/freeradius
になるってことですね。
Note that in Debian-based systems, the server daemon is calledfreeradius
instead ofradiusd
The configuration files are also located in/etc/freeradius/
instead of/etc/raddb/
. We useradiusd
and/etc/raddb/
in this guide, and trust that Debian administrators can translate to their system.
まずはちゃんとサービスとして起動しているか確認です。active (running)な状態を確認です。
$ sudo systemctl status freeradius
設定ファイルはこちらに出来ていました。/etc/freeradius/3.0/
/etc/freeradius/3.0/mods-config/files/authorize を編集します。下のサンプル一行を先頭につけておきます。
testing Cleartext-Password := testing123
radtestコマンドでテストです。
$ radtest testing testing123 127.0.0.1 0 testing123
結果として以下のように出てくれば出だしはOKと思います。
Received Access-Accept Id 135 from 127.0.0.1:1812 to 0.0.0.0:0 length 20
ネットワークから使えるようにする
デフォルトの状態ですとネットワーク上のPCから使えません。この状態ですとRadiusの目的を果たせませんので、いろいろ変更します。
まずはdefaultパスワードtesting123を変えましょう
変更は2箇所です。
・ /etc/freeradius/3.0/mods-config/files/authorize (前述)
・ /etc/freeradius/3.0/clients.conf
client localhost {
ipaddr = 127.0.0.1
proto = *
secret = testing123 ##これ変更!
clients.confにはすでにtesting123がデフォで設定されています。変更ですね
つぎはネットワークからアクセスできるようにclient.confを変更です。192.168.0.0/24からアクセスを許可したい場合は以下のように追加です。
#clisents.conf
client localnet {
ipaddr = 192.168.0.0/24
secret = dflkj34ljb4i3
}
#/etc/freeradius/3.0/mods-config/files/authorize
testing Cleartext-Password := testingpw456
これで他のPCからradtestしてみると(radius server ip x.x.x.xとして
$ radtest testing testingpw456 x.x.x.x 0 dflkj34ljb4i3
で認証が成功するはずです。
だめな場合はログ調査です。/var/log/freeradius/radius.log
続きます。