您想了解如何使用 Freeradius 设置 Kubernetes 仪表板的半径身份验证吗? 在本教程中,我们将向您展示如何使用在运行 Ubuntu Linux 的计算机上使用 Radius 协议和 Freeradius 服务对 Kubernetes 仪表板用户进行身份验证。
• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18
本教程将安装单节点库伯内特集群。
在我们的示例中,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 客户端添加到客户端。
查找并编辑客户端。
在客户端的末尾添加以下行。
在我们的示例中,我们将添加 1 个客户端设备:
该设备被命名为KUBERNETES,具有IP地址192.168.15.200。
在我们的示例中,我们设置了秘密:KAMISAMA123。
现在,我们需要将 FreeRadius 用户添加到 USERS 配置文件。
查找并编辑 Freeradius 用户配置文件。
在文件末尾添加以下行
在我们的示例中,我们创建一个名为 ADMIN 的用户帐户。
重新启动 Freeradius 服务器。
测试半径服务器配置文件。
您已完成了 Ubuntu Linux 上的 Freeradius 安装。
教程库伯内特 – 主节点安装
安装所需软件包的列表。
安装 Docker 服务。
在启动期间启用 Docker 服务。
编辑 Docker 服务配置文件。
在名为的项末尾添加以下配置:EXECSTART
下面是我们配置之前的文件。
下面是我们配置后的文件。
创建系统配置文件。
这是文件内容。
启用系统配置文件。
编辑名为:模块的配置文件。康夫
在此文件末尾添加以下配置。
编辑 FSTAB 配置文件并禁用交换内存。
下面是我们配置之前的文件。
下面是我们配置后的文件。
设置唯一的主机名。
创建文件以配置所需的环境变量。
这是文件内容。
重新启动计算机。
下载并安装库伯内特存储库密钥。
添加官方的库伯内特存储库。
安装 Kubernetes 软件包。
下载所需的库伯内特图像。
下面是命令输出。
初始化库伯内特群集。
下面是命令输出。
请注意向 Kubernetes 群集添加节点的命令。
在 Kubernetes 配置文件上设置正确的文件权限。
安装所需的网络配置。
默认情况下,不允许 Kubernetes 主节点运行 PODS。
可选地,启用 Kubernetes 主节点以运行 PODS。
在我们的示例中,我们使用的是单节点 Kubernetes 群集。
教程 – 库伯内特仪表板安装
安装所需软件包的列表。
下载所需的 YAML 文件。
安装库伯内特仪表板。
下面是命令输出。
为仪表板创建服务帐户。
将群集管理员角色配置为仪表板服务帐户。
为 Apache 代理创建服务帐户。
将群集管理员角色配置为 Apache 代理帐户。
列出 Kubernetes 服务器上可用的 Apache 密钥。
下面是命令输出。
请注意,您的秘密名称将和我们的不一样。
获取 Apache 机密令牌的值。
下面是命令输出。
请注意 Apache 令牌值。
在我们的示例中,这是令牌值:
列出仪表板服务群集 IP 地址。
下面是命令输出。
请注意群集 IP 地址和 TCP 端口。
在我们的示例中,仪表板群集使用 TCP 端口 443 和 IP 地址 10.107.55.24。
您已完成所需的仪表板配置。
库伯内特代理 – 使用阿帕奇的半径身份验证
在主节点上,安装 Apache 服务器。
启用所需的 Apache 模块。
编辑 Apache 配置文件。
将以下行添加到此文件的末尾。
使用 OpenSSL 命令创建私钥和证书。
输入请求的信息。
在名为”COMMON_NAME”的选项中,必须输入 IP 地址或主机名。
在我们的示例中,我们使用 IP 地址:192.168.15.200
将现有的 Kubernetes 代理证书和密钥转换为 PEM 格式的单个文件。
编辑默认网站的 Apache 配置文件。
这是我们配置之前的文件。
这是我们配置后的文件。
将名为 ADDRADIUSAUTH 的配置项的 IP 地址更改为 Radius 服务器的 IP 地址。
将名为 PROXYPASS 和 PROXYPASSREVERSE 的配置项的 IP 地址更改为仪表板群集的 IP 地址。
将名为 REQUESTHEADER 的 CI 的令牌值更改为之前创建的 Apache 秘密令牌值。
在我们的示例中,我们使用自签名证书启用了 HTTPS。
在我们的示例中,我们配置了 RADIUS 身份验证的使用。
Apache 将表示用户与仪表板群集 IP 地址之间的 HTTPS 通信。
Apache 将使用在 Kubernetes 服务器安装期间自动创建的证书和密钥在仪表板上执行相互 TLS 身份验证。
Apache 服务器将向发送到仪表板的所有数据包添加标头。
此标头名为授权颁发者,包含在 Apache 代理中较早创建的秘密令牌。
Apache 还将将 HTTP 用户重定向到请求的 URL 的 HTTPS 版本。
重新启动 Apache 服务。
打开浏览器并访问 Apache 服务器的 IP 地址的 HTTPS 版本。
在我们的示例中,在浏览器中输入了以下 URL:
• https://192.168.15.200
Apache 服务器将要求您执行用户身份验证。
成功登录后,应显示 Kubernetes 仪表板。
Apache 代理将自动使用名为:AUTH HEADER 的功能对 Kubernetes 仪表板进行身份验证。
您已成功完成 Apache 作为 Kubernetes 仪表板的代理的配置。