介绍
Webmin是一个现代的网络控制面板,允许您通过基于浏览器的界面来管理您的Linux服务器。
在本教程中,您将安装和配置 Webmin 在您的服务器上,并通过从 Let's Encrypt的有效证书安全访问接口。
前提条件
要完成本教程,您将需要:
- 一个 Ubuntu 22.04 服务器. 这个服务器应该有一个非 root 用户,具有 sudo 特权和配置 UFW 防火墙。 通过遵循我们的 Ubuntu 22.04 初始服务器设置指南来设置此设置。
- Apache 通过遵循我们在 How To Install the Apache Web Server on Ubuntu 22.04上的教程安装。 当您遵循这个先决条件指南时,请确保遵循 配置虚拟主机。
- A Fully-Qualified Domain Name (FQDN), 使用 DNS A 记录指向您的服务器的 IP 地址。 为了配置此,请遵循 [DigitalOcean 上 DNS 托管的这些
步骤 1 - 安装 Webmin
首先,更新您的服务器的包索引,如果您最近没有这样做:
1sudo apt update
然后您需要添加 Webmin 存储库,以便您可以使用您的包管理器安装和更新 Webmin. 为了让您的系统信任这个新的存储库,您首先将下载 Webmin 的 PGP 密钥,然后将其转换为一个格式,可以用apt
来验证文件:
1curl -fsSL https://download.webmin.com/jcameron-key.asc | sudo gpg --dearmor -o /usr/share/keyrings/webmin.gpg
此下载的密钥是由 Webmin 创建者用来签署包的密钥,您将使用此密钥来验证包的真实性. 为了将.asc 文件转换为可操作的.gpg 文件,需要gpg -dearmor
命令。
接下来,您将将此存储库添加到您的 /etc/apt/sources.list
文件中,同时引用您在上一步中刚刚获得的新转换的文件。
在您喜爱的编辑器中打开文件. 在这里,您将使用nano
:
1sudo nano /etc/apt/sources.list
然后将此行添加到文件底部以添加新的存储库:
1[label /etc/apt/sources.list]
2. . .
3deb [signed-by=/usr/share/keyrings/webmin.gpg] http://download.webmin.com/download/repository sarge contrib
保存文件并退出编辑器. 如果您使用了nano
来编辑,您可以通过按CTRL+X
,Y
,然后ENTER
来退出。
接下来,重新更新包列表,以包括现在值得信赖的 Webmin 存储库:
1sudo apt update
然后安装 Webmin:
1sudo apt install webmin
一旦安装完成,您将收到以下输出:
1[secondary_label Output]
2. . .
3Webmin install complete. You can now login to
4https://your_server:10000 as root with your
5root password, or as any user who can use sudo.
<$>[注]
注: 假设您在前提步骤中安装并启用了ufw
,您需要运行以下命令以允许Webmin通过防火墙:
1sudo ufw allow 10000
为了获得额外的安全性,您可能需要配置防火墙以仅允许从某些 IP 范围访问该端口。
接下来,您将通过添加有效证书来确保访问 Webmin。
步骤 2 — 使用 Let's Encrypt 添加有效证书
Webmin 已经配置为使用 HTTPS,但它使用的是自签名的,不受信任的证书,让我们用 Let's Encrypt 的有效证书来代替它。
在您的 Web 浏览器中导航到 https://your_domain:10000
,以域名代替 your_domain
,指向您的服务器的 IP 地址。
<$>[注]
注: 第一次登录时,你会看到一个无效SSL
警告。这个警告可能会根据你的浏览器说出不同的东西,但原因是服务器已经生成了一个自签证书。
您将被呈现一个登录屏幕. 与您创建的非根用户登录,同时满足本教程的先决条件。
一旦您登录,您将看到的第一个屏幕是Webmin仪表板。在您可以应用有效证书之前,您必须设置服务器的主机名称。 寻找 系统主机名称 字段,然后按一下右侧的链接,如下图所示:
这将带您到 Hostname 和 DNS 客户端 页面。 查找 Hostname 字段,然后输入您的完全合格域名字段。
设置您的主机名后,请单击左侧导航栏中的 Webmin 下载菜单,然后单击 Webmin Configuration 。
在Webmin Configuration
页面上,从图标列表中选择SSL Encryption
,然后单击Let’s Encrypt
选项卡。
在此页面上,您将告诉 Webmin 如何获取和更新您的证书。Let's Encrypt 证书在 3 个月后到期,但您可以指示 Webmin 每月自动尝试更新 Let's Encrypt 证书。Let's Encrypt 在服务器上寻找验证文件,因此您将配置 Webmin 将验证文件放入 /var/www/your_domain
文件夹中,这是您在前提条件下配置的 Apache 网络服务器使用的文件夹。
- 用您的 FQDN 填写 Hostnames for certificate 。
- 对于 Website root directory for validation file ,请选择 Other Directory 按钮,然后输入您的网站的文档根。假设您遵循了 前提 Apache 教程这将是
/var/www/your_domain
。 - 对于 ** 自动更新之间的几个月** ,请在输入框中键入
1
,并选择输入框的左侧的无线电按钮。
点击请求证书
按钮,几秒钟后,你会看到一个确认屏幕。
若要使用新证书,请在确认屏幕上点击 ** 返回 Webmin 配置 ** 按钮. 从该页面上,向下滚动并点击 ** 重新启动 Webmin ** 按钮. 等待大约 30 秒,然后重新加载页面并再次登录。
步骤 3 – 使用 Webmin
您现在已经设置了 Webmin 的安全工作实例,接下来是如何使用它。
Webmin 拥有许多不同的模块,可以控制从 BIND DNS 服务器到将用户添加到系统,您将查看如何创建新用户,然后探索如何使用 Webmin 更新系统的包。
管理用户和组
首先是探索如何在您的服务器上管理用户和组。
点击左侧侧栏中的 系统 下载菜单,然后点击 用户和组 的链接.从这里,您可以添加和管理用户和组。
接下来,创建一个名为 deploy 的新用户,您可以使用它来托管 Web 应用程序. 当创建用户时,您可以设置密码到期期、用户壳以及是否允许他们创建家庭目录的选项。
若要添加用户,请单击 创建新用户 ,这是位于用户表的顶部. 此显示了 创建用户 屏幕,您可以提供用户名、密码、组和其他选项。
- 填写 用户名 用
部署
. - 选择 自动 为 ** 用户 ID**.
- 填写 真实名称 用描述性名称如
部署用户
. - 对于 Home Directory ,选择 自动 .
- 对于 Shell ,从下载列表中选择 /bin/bash .
- 对于 Password ,选择 正常密码 ,输入您所选择的密码。
- 跳到 Primary Group 并选择 ** 新组与用户名相同。 **
- 对于 ** Secondary Group**,从 ** All Group** 列表中选择 ** sudo。
完成这些选择后,按 Create . 这将创建 deploy 用户以简短的顺序。
接下来,您将看看如何在您的系统上安装更新。
更新包裹
Webmin 允许您通过其用户界面更新所有软件包. 要更新所有软件包,请先点击左侧栏上方的 Dashboard 按钮,然后找到 Package updates 字段。
点击此链接,然后按 更新选定的包 来启动更新,您可能会被要求重新启动服务器,您也可以通过 Webmin 接口进行。
结论
您现在有 Webmin 的安全工作实例,您已经使用了接口来创建用户和更新包. Webmin 为您提供了许多您通常需要通过控制台访问的东西,并以直观的方式组织它们。
探索接口,或阅读官方Webminwiki(http://doxfer.webmin.com/Webmin/Main_Page),以了解有关使用Webmin管理您的系统的更多信息。