フリーラディウスを使用して Kubernetes ダッシュボードの Radius 認証を設定する方法を学習しますか? このチュートリアルでは、Ubuntu Linux を実行しているコンピューター上の Radius プロトコルと Freeradius サービスを使用して Kubernetes ダッシュボードのユーザーを認証する方法を示します。
• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18
このチュートリアルでは、単一ノード Kubernetes クラスターをインストールします。
この例では、Kubernetes マスターノードの IP アドレスは 192.168.15.200 です。
この例では、RADIUS サーバの IP アドレスは 192.168.15.10 です。
クベルネテス – チュートリアル
このページでは、Kubernetes に関連するチュートリアルのリストにすばやくアクセスできます。
チュートリアル – Ubuntu Linux上のフリーラジアスサーバーのインストール
• IP – 192.168.15.10
•オペラシオナルシステム – Ubuntu 20
• Hostname – FREERADIUS
Linux コンソールで、以下のコマンドを使用して FreeRadius サービスをインストールします。
ここで、FreeRadius クライアントをクライアントに追加する必要があります。
クライアントを見つけて編集します。
clients.conf ファイルの末尾に次の行を追加します。
この例では、1 つのクライアントデバイスを追加しています。
このデバイスは KUBERNETES という名前で、IP アドレスが 192.168.15.200 です。
この例では、秘密を設定します: KAMISAMA123.
ここで、FreeRadius ユーザーを USERS 構成ファイルに追加する必要があります。
フリー半径ユーザー構成ファイルを見つけて編集します。
ファイルの末尾に次の行を追加します。
この例では、ADMIN という名前のユーザー アカウントを作成します。
フリーRADIUSサーバを再起動します。
RADIUS サーバの設定ファイルをテストします。
Ubuntu Linux でフリーラディウスのインストールを終了しました。
チュートリアル Kubernetes – マスター ノードのインストール
必要なパッケージの一覧をインストールします。
Docker サービスをインストールします。
ブート中に Docker サービスを有効にします。
Docker サービス構成ファイルを編集します。
EXECSTART という名前の項目の末尾に、次の構成を追加します。
設定前のファイルを次に示します。
ここに私たちの設定の後のファイルがあります。
システム構成ファイルを作成します。
ここにファイルの内容があります。
システム構成ファイルを有効にします。
MODULES という名前の構成ファイルを編集します。Conf
このファイルの末尾に次の構成を追加します。
FSTAB 構成ファイルを編集し、スワップ メモリの使用を無効にします。
設定前のファイルを次に示します。
ここに私たちの設定の後のファイルがあります。
一意のホスト名を設定します。
必要な環境変数を構成するファイルを作成します。
ここにファイルの内容があります。
コンピュータを再起動します。
Kubernetes リポジトリ キーをダウンロードしてインストールします。
公式の Kubernetes リポジトリを追加します。
Kubernetes パッケージをインストールします。
必要なKubernetes画像をダウンロードしてください。
コマンド出力を次に示します。
Kubernetes クラスターを初期化します。
コマンド出力を次に示します。
Kubernetes クラスターにノードを追加するコマンドをメモします。
Kubernetes 構成ファイルに正しいファイル権限を設定します。
必要なネットワーク構成をインストールします。
デフォルトでは、Kubernetes マスターノードは PODS を実行できません。
必要に応じて、Kubernetes マスターノードで PODS を実行できるようにします。
この例では、単一ノード Kubernetes クラスターを使用しています。
チュートリアル – Kubernetes ダッシュボードのインストール
必要なパッケージの一覧をインストールします。
必要な YAML ファイルをダウンロードします。
Kubernetes ダッシュボードをインストールします。
コマンド出力を次に示します。
ダッシュボードのサービス アカウントを作成します。
クラスター管理者の役割をダッシュボード サービス アカウントに構成します。
Apache プロキシのサービス アカウントを作成します。
Apache プロキシアカウントにクラスタ管理ロールを設定します。
Kubernetes サーバーで利用可能な Apache シークレットをリストします。
コマンド出力を次に示します。
あなたの秘密の名前は私たちの名前と同じではありません。
Apache シークレットトークンの値を取得します。
コマンド出力を次に示します。
Apache トークンの値を書き留めます。
この例では、トークンの値を次に示します。
ダッシュボード サービス クラスターの IP アドレスを一覧表示します。
コマンド出力を次に示します。
クラスタの IP アドレスと TCP ポートをメモします。
この例では、ダッシュボード クラスターは TCP ポート 443 と IP アドレス 10.107.55.24 を使用しています。
必要なダッシュボードの設定が完了しました。
Kubernetes プロキシ – Apache を使用した半径認証
マスターノードで、Apache サーバーをインストールします。
必要な Apache モジュールを有効にします。
Apache 構成ファイルを編集します。
このファイルの末尾に次の行を追加します。
OpenSSL コマンドを使用して、秘密鍵と証明書を作成します。
要求された情報を入力します。
COMMON_NAMEという名前のオプションで、IP アドレスまたはホスト名を入力する必要があります。
この例では、IP アドレス 192.168.15.200 を使用します。
既存の Kubernetes プロキシ証明書とキーを PEM 形式の単一ファイルに変換します。
デフォルトの Web サイトの Apache 構成ファイルを編集します。
ここでは、設定の前にファイルがあります。
ここに、設定後のファイルがあります。
ADDRADIUSAUTH という名前の構成項目の IP アドレスを、RADIUS サーバーの IP アドレスに変更します。
プロキシパスとプロキシパスREVERSEという名前の設定項目の IP アドレスを、ダッシュボード・クラスターの IP アドレスに変更します。
前に作成した Apache シークレットトークン値に、要求ヘッダーという名前の CI のトークン値を変更します。
この例では、自己署名証明書を使用した HTTPS の使用を有効にしました。
この例では、RADIUS 認証の使用を構成しました。
Apache は、ユーザーとダッシュボードクラスターの IP アドレス間の HTTPS 通信を表します。
Apache は Kubernetes サーバーのインストール中に自動的に作成された証明書と鍵を使用して、ダッシュボードで相互 TLS 認証を実行します。
Apache サーバーは、ダッシュボードに送信されるすべてのパケットにヘッダーを追加します。
このヘッダーは AUTHORIZATION BEARER という名前で、Apache プロキシーで前に作成されたシークレット・トークンを含みます。
また、Apache は HTTP ユーザーを要求された URL の HTTPS バージョンにリダイレクトします。
Apache サービスを再起動します。
ブラウザを開き、Apache サーバの IP アドレスの HTTPS バージョンにアクセスします。
この例では、次の URL がブラウザに入力されました。
• https://192.168.15.200
Apache サーバーでは、ユーザー認証を実行する必要があります。
ログインが成功すると、Kubernetes ダッシュボードが表示されます。
Apache プロキシは、次の名前の機能を使用して Kubernetes ダッシュボードに対して自動的に認証されます: AUTH HEADER.
Kubernetes ダッシュボードのプロキシとして Apache の設定が正常に完了しました。