FreeRADIUSは、UNIXおよびUnixライクなオペレーティングシステム用の無料のオープンソースサーバーであり、RADIUSプロトコルサーバーをセットアップできます。また、サーバーを使用するときにサーバーと通信する、正しく構成されたクライアントも必要です。これは、さまざまなタイプのネットワークアクセスの認証またはアカウンティングに使用できます。サンプルアプリケーションは、ホットスポット、Androidスマートフォン上のOpenVPN、Strongswan、SoftEther(Wireshark)などのVPNプロトコルです。
1992年に、FreeRADIUS(ネットワークを不正アクセスや侵入から保護するオープンソースソフトウェアプロジェクト)は、認証のわずかな進歩から始まりました。現在、FreeRADIUSは、暗号で保護されたさまざまな方法(EAP-TLS / -TTLS、PEAP、LEAP)をサポートしています。また、認証に使用される方法は、ユーザー名/パスワードまたは証明書です。
ネットワークにアクセスするクライアントは、アクセスを許可する前に、まずRADIUSサーバーにログオンする必要があります。これにより、セキュリティが向上し、ネットワークの管理が容易になります。クライアントは認証にIEEE802.1Xプロトコルを使用します。そのため、この用語はこのタイプのネットワークログイン方法の同義語としてよく使用されます。
FreeRADIUSは、ほとんどの場合、RADIUSサーバー、またはBSDライセンスのRADIUSクライアントライブラリ、PAMライブラリ、ApacheRADIUSモジュールなどのFreeRADIUSスイートのコンポーネントを指します。その他の関連ライブラリには、追加のユーティリティと開発ライブラリが含まれます
RADIUSプロトコルとは何ですか?
R エモートA uthentication D ial-私 n U ser S ervice(RADIUS)は、一元化されたAAA管理を提供することにより、ユーザーの認証、承認、およびアカウンティングを管理するネットワークプロトコルです。
これらは、AAAの各用語の意味の簡単な説明ですが、すべてが同じことを意味するわけではありません。
- 認証:クライアント(ユーザー、デバイス、またはプロセスのいずれか)がシステムの使用を許可されているかどうかを判断するプロセス。
- 承認:電力使用コストを計算できるように、使用量とこの情報をいつ提供するかを決定するプロセス。
- アカウンティング:これは、請求目的でのネットワーク上のアクティビティに関する要約レポートです。
FreeRADIUSを管理するためのコマンドラインインターフェイスは、エキスパートシステム管理者にとっても混乱を招く可能性があります。問題を緩和するために、FreeRADIUSのWebベースのGUIバージョンであるdaloRADIUSを使用できます。
daloRADIUSとは何ですか?
daloRADIUSは、FreeRADIUSを管理するためのWebベースのGUIであり、ブラウザから複数のサーバーを簡単に管理できます。また、最新バージョンのRedisまたはMemcachedを実行し、SSLをサポートしている限り、主要なLinuxディストリビューション(CentOS、Red Hat Enterprise Linux、Ubuntu、OpenWrtなど)で動作します。
daloRADIUSソフトウェアスイートは、コマンドラインインターフェイスを使用してFreeRADIUSを管理する従来の方法と比較すると、追加の機能を提供します。
このチュートリアルでは、Ubuntu 20.04を実行しているサーバーにFreeRADIUSをインストールし、MySQL / MariaDBで動作するように構成してから、基本的にFreeRADIUSのGUIであるRADIUSWeb管理パネルであるdaloRADIUSをインストールします。 RADIUSサーバーで簡単なテストを実行して、動作することを確認します。
- Ubuntu 20.04を実行し、最小512MBのRAM、最小300MBのストレージスペース、最小1.4GHz64ビットCPUを搭載したサーバー
- rootユーザーまたはsudo権限を持つユーザーとしてログインしている。
システムを最新の状態に保つには、まず端末でupdateコマンドを実行して、最新のパッケージとセキュリティ更新プログラムをダウンロードしてインストールします。
sudo apt update -y
sudo apt upgrade -y
-yフラグは、変更を続行するかどうかを尋ねられたときに自動的にyesと答えるためにupdateコマンドによって使用されます。
apt updateコマンドは、ソースから利用可能なパッケージのリストを更新します。 aptupgradeコマンドはアップデートをダウンロードしてインストールします。
出力例:
更新プロセスが完了したら、システムを再起動することをお勧めします。これを行うには、ターミナルで以下のコマンドを実行します。
sudo reboot now
依存関係は、別のプログラムが機能するために満たす必要のあるソフトウェア要件です。次に行うことは、必要な依存関係をインストールすることです。 Ubuntu ServerにはApacheがインストールされていますが、追加する必要のある関連パッケージがいくつかあります。依存関係をインストールするには、ターミナルで以下のコマンドを実行します。
sudo apt-get install apache2 mariadb-server php libapache2-mod-php php-mail php-mail-mime php-mysql php-gd php-common php-pear php-db php-mbstring php-xml php-curl unzip wget -yを解凍します
ターミナルで以下のコマンドを実行すると、システムにインストールされているphpのバージョンを確認できます。
php -v
出力は次のようになります。
FreeRADIUSのインストール
すべての前提条件と依存関係が満たされたら、FreeRADIUSをインストールできます。ターミナルで以下のコマンドを入力すると、Ubuntuで利用可能なFreeRADIUSのバージョンを表示できます。
sudo apt policy freeradius
FreeRADIUSとそれに付属するさまざまなユーティリティをUbuntu20.04にインストールするには、次のコマンドを実行します。
sudo apt -y install freeradius freeradius-mysql freeradius-utils
FreeRADIUSが稼働していることをすばやく確認するには、FreeRADIUSをデバッグモードで実行する必要があります。
まず、ターミナルで次のコマンドを実行して、FreeRADIUSサービスを停止します。
sudo systemctl stop freeradius.service
次に、次のコマンドを実行してFreeRADIUSデバッグモードを実行します。
sudo freeradius -X
出力は次のようになります。
最後の行に「リクエストを処理する準備ができました」と表示されていることがわかります。これは、FreeRADIUSがサーバー上で稼働していることを意味します。
FreeRADIUSには、ユーザー、クライアント、ネットワーク接続に関する設定やその他の情報を保存するためのデータベースが必要です。ターミナルからMariaDBサーバーにログインすると、FreeRADIUSのデータベースを作成できます。
sudo mysql -u root
次に、radiusという名前のデータベースを作成します:
CREATE DATABASE radius;
次に、radiusデータベースへのアクセスを許可します:
GRANT ALL ON radius.* TO [email protected] IDENTIFIED BY "yourpassword ";
特権をフラッシュし、MariaDBコマンドを終了して、特権を更新します。
FLUSH PRIVILEGES;
QUIT;
ターミナルで次のコマンドを実行すると、radiusデータベースが作成されていることがわかります。
mysql -u root -p -e "show databases;"
以下のスクリーンショットに示すように、半径データベースが表示されるはずです。
Daloradiusのインストール
FreeRADIUSのWeb管理インターフェースにアクセスするには、Daloradiusが必要です。まず、wgetコマンドを使用してgitリポジトリからdaloRADIUSの最新バージョンをダウンロードします。
wget https://github.com/lirantal/daloradius/archive/master.zip
ダウンロードが完了したら、以下に示すように、解凍ユーティリティを使用してzipアーカイブを抽出します。
unzip master.zip
次に、以下に示すように、mvユーティリティを使用してdaloradius-masterフォルダを移動します。
mv daloradius-master daloradius
次に、設定のためにdaloradiusディレクトリに移動します:
cd daloradius
次に、データベースにdaloRADIUSスキーマを入力する必要があります。 .sqlファイルは「/contrib/db/」フォルダーにあります。ルートの宛先にインストールしなかった場合は、このパスを変更する必要がある場合があります。
インポートするには、次を実行します:
sudo mysql -u root -p radius < contrib/db/fr2-mysql-daloradius-and-freeradius.sql
sudo mysql -u root -p radius < contrib/db/mysql-daloradius.sql
次に、daloradiusディレクトリから移動し、daloradiusフォルダをドキュメントルートに移動します。
cd
sudo mv daloradius /var/www/html/
次に、以下に示すように、mvユーティリティを使用して.example拡張子を削除し、サンプルファイルの名前を変更します。
sudo mv /var/www/html/daloradius/library/daloradius.conf.php.sample /var/www/html/daloradius/library/daloradius.conf.php
次に、次のコマンドを実行して、daloRADIUSWeb構成ファイルの所有権をApacheに割り当てます。
sudo chown -R www-data:www-data /var/www/html/daloradius/
次に、以下に示すように、メイン構成ファイルのアクセス許可を664に構成します。
sudo chmod 664 /var/www/html/daloradius/library/daloradius.conf.php
DaloRADIUS WebインターフェイスがFreeRADIUSにアクセスできるようにするには、DaloRADIUSの構成ファイルでデータベースの詳細を提供する必要があります。 ./www/library/daloradius.conf.phpにある.daloradius.conf.phpを開き、データベースの詳細(ユーザー名、パスワード、データベース名)を追加します。
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
データベースの詳細に一致するように、次の値を変更します。
$configValues['FREERADIUS_VERSION'] = '2';
$configValues['CONFIG_DB_ENGINE'] = 'mysqli';
$configValues['CONFIG_DB_HOST'] = 'localhost';
$configValues['CONFIG_DB_PORT'] = '3306';
$configValues['CONFIG_DB_USER'] = 'howtoforge';
$configValues['CONFIG_DB_PASS'] = '[email protected]';
$configValues['CONFIG_DB_NAME'] = 'howtoforge';
ファイルを保存して終了し、すべてが正しく構成されていることを確認します。 FreeRADIUSとApacheを再起動すると、すべてが正しく機能していることが保証されます。
sudo systemctl restart freeradius
sudo systemctl restart apache2
FreeRADIUSとDaloradiusはポート1812でRADIUSパケットをリッスンしているため、ファイアウォールポートを開いてトラフィックを許可する必要がある場合があります。
sudo ufw enable
sudo ufw allow 1812
FreeRADIUSは、Access-RequestパケットとAccounting-RequestパケットにUDPポート1813を使用するため、これらのポートも開く必要があります。
sudo ufw allow 1813
出力例:
UFWファイアウォールの現在の状態を確認するには、次のコマンドを入力します。
sudo ufw status
以下のような出力が表示されるはずです:
上記のUFWのスクリーンショットは、UFWがアクティブであることを示しており、そのステータスは、追加したばかりのルールのリストを示しています。
daloRADIUSWebインターフェイスへのアクセス
DaloRADIUSとFreeRADIUSをインストールしたので、次はdaloRADIUSWebインターフェイスにアクセスします。 http://ip-address/daloradius/login.phpで選択したブラウザを開き、「ip-address」を実際のサーバーのIPアドレスに置き換えることを忘れないでください。
デフォルトのログイン画面が表示されます:
ログイン画面で、デフォルトのユーザー名とパスワード「administrator」とパスワード「radius」を使用してログインします。ログイン後、デフォルトのDaloRADIUSWebインターフェイスが表示されます。
ユーザーパスワードを変更するには、DaloRadiusにログインし、トップバーから[構成]メニューを選択します。サブメニューで[演算子]を選択し、現在のフォルダーの演算子のリストの下にある灰色のサイドバーで[演算子の一覧表示]を選択します。管理者を右クリックし、このウィンドウで[パスワードの変更]を選択します。この次の画面で、管理者のアカウントの新しいパスワードを入力し、[適用]をクリックしてこれらの変更を保存します。」
おめでとう! FreeRADIUSが正常にインストールされました。このチュートリアルを使用して、Ubuntu20.04LTSシステムにFreeRADIUSをインストールしていただきありがとうございます。さらにヘルプや役立つ情報が必要な場合は、FreeRADIUSの公式サイトにアクセスすることをお勧めします。
FreeRADIUS / Daloradiusのインストール中に発生する可能性のあるいくつかの問題と、それらに対する可能な解決策は次のとおりです。
1.freeradiusのインストール中にエラーが発生しました
問題:このチュートリアルを実行しているときに、「パッケージ`freeradius`にインストール候補がありません」という問題が発生する場合があります。このエラーメッセージは、ご使用のバージョンのUbuntuまたはDebianLinuxシステムで使用できるPPAがないことを示しています。解決策:新しいソフトウェアやパッケージを試すときは、サポートされていない古いバージョンよりも安定しているため、通常は最新バージョンのUbuntuを使用することをお勧めします。サーバーに古いバージョンがインストールされている場合は、このチュートリアルに進む前に、まずSynapticPackageManagerを使用して古いバージョンを削除してみてください。
2.データベース構成が間違っています
問題:FreeRADIUSをインストールした後、コマンド「radiusd-X」が上記のようなメッセージを返す場合があります。これは、パスワードまたはユーザー名が間違っているためにMySQLがデータベースに接続できないことを意味します。
解決策:この問題を修正するには、「mysql-daloradius.sql」構成ファイルを開き、nanoなどのテキストエディターを使用して編集します。次に、パスワードを実際のパスワードに変更します。編集後、ファイルを保存して閉じます。次に、FreeRADIUSを再起動します:sudo service freeradius restart
3.FreeRADIUSとDaloradiusをインストールした後は接続されません
問題:FreeRADIUSとdaloRADIUSをインストールした後、Webインターフェースが表示されません。このため、SSHを使用してサーバーに接続できない場合があります。
解決策:この問題の最も可能性の高い理由は、ApacheまたはNginx構成ファイル内の何かがポート80(HTTPの場合)または443(HTTPSの場合)をブロックしていることです。これらの構成ファイルでDaloRADIUSWebディレクトリパス(/ var / www / html / daloradius)への参照を確認し、それらを削除します。
4.DaloRADIUSWebインターフェースにDaloradiusアイコンがありません
問題:このチュートリアルを実行した後、DaloRADIUSWebインターフェイスにDaloradiusアイコンが表示されません。これは、UbuntuおよびDebianシステムの一部のバージョンで発生する一般的な問題です。
解決策:この問題を修正するには、「daloradius / contains / config_vars.php」ファイルを編集して、次の行を追加します。define('DALORADIUS_ENABLED'、true);次に、sudo serviceapache2restartを使用してApacheWebサーバーを再起動します。これで、オペレーターメニューの前の左側のペインにDaloradiusアイコンが表示されるはずです。
このリストは不完全であり、100%正確ではない可能性があります。エラーや不足している情報に遭遇した場合は、下にコメントを残してください。それに応じてリストを更新します。
FreeRADIUSとDaloradiusは、オープンソースソフトウェアの優れた組み合わせであり、ホームネットワークやスモールビジネスネットワークに最適なフル機能のFreeRADIUSサーバーを作成するのに役立ちます。
成長するコミュニティとソフトウェア内で構成できる多数の機能を備えたDaloradiusは、独自のFreeRADIUSサーバーをセットアップしたいユーザーに最適です。
この記事が役に立ったら、ソーシャルメディアで友達と共有してください。また、ご不明な点やご提案がございましたら、お気軽にお問い合わせください。このページの下部にあるお問い合わせフォームを使用して、コメントを残したり、メッセージを送信したりできます。読んでいただきありがとうございます。