如何在CentOS7上安装和使用Webmin
介绍
Webmin 是适用于任何 Linux 机器的现代 Web 控制面板。 它允许您通过一个简单的界面来管理您的服务器。 使用 Webmin,您可以即时更改常用软件包的设置。
在本教程中,您将在服务器上安装和配置 Webmin,并使用 Let's Encrypt 使用有效证书保护对界面的访问。 然后,您将使用 Webmin 添加新用户帐户,并从仪表板更新服务器上的所有包。
先决条件
要完成本教程,您需要:
- 一台 CentOS 7 服务器按照 CentOS 7 初始服务器设置指南 设置,包括 sudo 非 root 用户。
- 为您系统上的 root 用户设置的密码。 您需要使用 root 用户和密码首次登录 Webmin。 使用
sudo passwd
设置此密码。 - 按照 如何在 CentOS 7 上安装 Linux、Apache、MySQL、PHP (LAMP) 堆栈安装 Apache。 我们将使用 Apache 来执行 Let's Encrypt 的域验证。
- 完全限定域名 (FQDN),带有指向服务器 IP 地址的 DNS A 记录。 要配置它,请按照教程 如何使用 DigitalOcean 设置主机名。
第 1 步 — 安装 Webmin
首先,我们需要添加 Webmin 存储库,以便我们可以使用包管理器轻松安装和更新 Webmin。 为此,我们添加了一个名为 /etc/yum.repos.d/webmin.repo
的新文件,其中包含有关新存储库的信息。
使用您的文本编辑器创建并打开这个新文件:
sudo vi /etc/yum.repos.d/webmin.repo
然后将这些行添加到文件中以定义新的存储库:
/etc/yum.repos.d/webmin.repo
[Webmin] name=Webmin Distribution Neutral #baseurl=http://download.webmin.com/download/yum mirrorlist=http://download.webmin.com/download/yum/mirrorlist enabled=1
保存文件并退出编辑器。
接下来,添加 Webmin 作者的 PGP 密钥,以便您的系统信任新的存储库:
wget http://www.webmin.com/jcameron-key.asc sudo rpm --import jcameron-key.asc
注意: 在安装 Webmin 之前,请确保您已通过运行 sudo passwd
为 root 用户设置密码,因为稍后您将需要此密码来登录 Webmin .
您现在可以安装 Webmin:
sudo yum install webmin
安装完成后,您将在输出中看到以下消息:
OutputWebmin install complete. You can now login to https://your_domain:10000/ as root with your root password.
现在,让我们通过添加有效证书来保护对 Webmin 的访问。
第 2 步 — 使用 Let's Encrypt 添加有效证书
Webmin 已配置为使用 HTTPS,但它使用自签名、不受信任的证书。 让我们用 Let's Encrypt 的有效证书替换它。
在 Web 浏览器中导航到 https://your_domain:10000
,将 your_domain
替换为您指向服务器的域名。
注意: 首次登录时,您会看到“Invalid SSL”错误。 这是因为服务器已生成自签名证书。 允许异常继续,以便您可以将自签名证书替换为 Let's Encrypt 中的证书。
您将看到一个登录屏幕。 使用用户名 root 和您当前的 root 用户密码登录。
登录后,您将看到的第一个屏幕是 Webmin 仪表板。 在应用有效证书之前,您必须设置服务器的主机名。 查找System hostname字段,点击右侧链接,如下图:
这将带您进入 主机名和 DNS 客户端 页面。 找到 Hostname 字段,然后在字段中输入您的完全限定域名。 然后按页面底部的保存按钮应用设置。
设置好主机名后,点击左侧导航栏的Webmin,然后点击Webmin Configuration。
然后,从图标列表中选择 SSL Encryption,然后选择 Let's Encrypt 选项卡。 您将看到如下图所示的屏幕:
使用此屏幕,您将告诉 Webmin 如何获取和更新您的证书。 Let's Encrypt 证书在 3 个月后过期,但我们可以指示 Webmin 每月自动尝试更新 Let's Encrypt 证书。 Let's Encrypt 在我们的服务器上查找验证文件,因此我们将配置 Webmin 以将验证文件放在文件夹 /var/www/html
中,这是您在先决条件中配置的 Apache Web 服务器使用的文件夹。 请按照以下步骤设置您的证书:
- 使用您的 FQDN 填写证书 的 主机名。
- 验证文件的网站根目录,选择其他目录按钮,输入
/var/www/html
。 - 对于自动续订之间的月份部分,通过在输入框中键入
1
并选择输入框左侧的单选按钮来取消选择仅手动续订选项. - 单击申请证书按钮。 几秒钟后,您将看到一个确认屏幕。
要使用新证书,只需重新加载页面。 您的浏览器现在应该指示证书有效。
第 3 步 – 使用 Webmin
您现在已经设置了一个安全的 Webmin 工作实例。 让我们看看如何使用它。
Webmin 有许多不同的模块,可以控制从 BIND DNS 服务器到向系统添加用户这样简单的一切。 让我们看看如何创建新用户,然后探索如何使用 Webmin 更新操作系统。
管理用户和组
让我们探索如何使用 Webmin 管理用户和组。
首先,我们将管理允许访问 Webmin 的用户。 这样我们就不必使用 root 用户登录。
单击 Webmin 选项卡,然后单击 Webmin 用户 按钮。 此界面可让您管理可以登录 Webmin 的用户。
单击位于 users 表顶部的 Create a new Webmin user 按钮。 这将显示 创建 Webmin 用户 屏幕,您可以在其中提供用户名、密码、用户可以访问的模块和其他选项。 按照以下步骤创建用户:
- 用
sammy
填写用户名。 - 在Password中填写您要使用的密码。
- 用
Sammy the Shark
填写真实姓名。 - 单击创建。
创建用户时,您还可以选择限制用户可以访问的模块的选项,以及 Webmin 界面应使用的语言。
您现在有一个用于 Webmin 的 sammy 用户; 您不再需要使用 root 用户登录。
接下来,让我们看看如何向系统添加新用户。 我们将创建一个名为 deploy 的系统用户,用于托管 Web 应用程序。
首先,单击系统选项卡,然后单击用户和组按钮。 您可以使用此界面添加和管理用户和组。
要添加用户,请单击位于 users 表顶部的 创建新用户 。 这将显示 创建用户 屏幕,您可以在其中提供用户名、密码、组和其他选项。 按照以下说明创建用户:
- 用
deploy
填写用户名。 - 为 用户 ID 选择 自动 。
- 在 Real Name 中填写描述性名称,如
Deployment user
。 - 对于主目录,选择自动。
- 对于 Shell,从下拉列表中选择 /bin/bash。
- 对于 Password,选择 Normal Password 并输入您选择的密码。
- 对于主组,选择与用户同名的新组。
- 对于Secondary Group,从All groups列表中选择wheel,然后按->按钮将该组添加到 ]在组列表中。 这将使新用户可以使用
sudo
。 - 按 Create 创建这个新用户。
创建用户时,您可以设置密码到期、用户的 shell 或是否允许它们使用主目录的选项。
接下来,让我们看看如何为我们的系统安装更新。
更新包
Webmin 允许您通过其用户界面更新所有包。 要更新所有包,首先,转到 Dashboard 链接,然后找到 Package updates 字段。 如果有可用更新,您将看到一个链接,其中说明了可用更新的数量,如下图所示:
单击此链接,然后按更新选定的包开始更新。 您可能会被要求重新启动服务器,您也可以通过 Webmin 界面执行此操作。
结论
您现在拥有一个安全的 Webmin 工作实例,并且您已使用该界面创建用户和更新包。 Webmin 使您可以访问通常需要通过控制台访问的许多内容,并且它以直观的方式组织它们。 例如,如果您安装了 Apache,您会在 Servers 下找到它的配置选项卡,然后是 Apache。
探索界面,或阅读 Official Webmin wiki 以了解有关使用 Webmin 管理系统的更多信息。