如何在Ubuntu 18.04和Ubuntu 16.04 Server上安装Webmin

Webmin是一个免费的开源控制面板,用于管理类Unix服务器。 本教程将向您展示如何在Ubuntu 18.04和Ubuntu 16.04服务器上安装Webmin。 Webmin为用户提供基于Web的图形化用户界面,以配置常见的系统任务和设置。 如果您不喜欢使用命令行来管理服务器的想法,那么Webmin是您的理想图形选择。

从Webmin存储库在Ubuntu 18.04和Ubuntu 16.04上安装Webmin

Webmin自1997年以来一直存在。在撰写本文时,可用的最新稳定版本是1.941,该版本于2020年1月16日发布。Webmin不在Ubuntu软件存储库中。 建议从官方库中安装Webmin,以便始终可以获取最新版本。

要添加Webmin存储库,请使用命令行文本编辑器(例如nano)创建源列表文件。

sudo nano /etc/apt/sources.list.d/webmin.list

在文件中添加以下行。

deb http://download.webmin.com/download/repository sarge contrib

保存并关闭文件。 要将文件保存在nano文本编辑器中,请按 CTRL+O,然后按 Enter 确认。 要关闭文件,请按 CTRL+X 。 接下来,我们需要运行以下命令来下载Webmin PGP签名密钥并将其导入到APT密钥环,以便APT软件包管理器可以验证从Webmin存储库下载的软件包的完整性。

wget http://www.webmin.com/jcameron-key.asc

然后导入:

sudo apt-key add jcameron-key.asc

现在我们可以更新本地软件包索引并安装Webmin。

sudo apt update

sudo apt install webmin

一旦安装,Wemin内置的Web服务器将自动启动,运行下面的systemctl命令可以看到:

systemctl status webmin

输出:

● webmin.service - LSB: web-based administration interface for Unix systems
   Loaded: loaded (/etc/init.d/webmin; generated)
   Active: active (running) since Sun 2020-02-23 16:34:02 HKT; 37s ago
     Docs: man:systemd-sysv-generator(8)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/webmin.service
           └─25792 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf

Webmin服务器侦听端口10000。现在,您可以通过以下方式访问基于Web的控制面板

https://your-server-ip:10000

由于它以HTTPS模式运行并使用自签名TLS证书,因此浏览器将告知您该连接不安全。

webmin ssl模式

但是您知道这是您自己的服务器,因此只需单击 Advanced 标签,并添加例外。 如果您使用的是Google Chrome浏览器,则可以点击 Advanced -> Proceed

现在,您将看到Webmin登录屏幕。 您可以在Ubuntu 18.04和Ubuntu 16.04系统上的sudo组中使用root或任何其他用户帐户登录。

webmin ubuntu安装

如果您不喜欢导航菜单上的默认棕色,则可以通过单击导航菜单底部的齿轮图标将其更改为其他颜色,然后选择导航菜单选项并设置调色板。 例如,我选择了午夜蓝色。

Webmin导航菜单颜色

保存更改。

设置反向代理

如果在生产服务器上安装Webmin,则可能要使用Apache或Nginx设置反向代理,以便可以使用域名访问Webmin界面而无需指定端口号(10000)。 这也使您可以获取并安装Webmin的有效的Let’s Encrypt TLS证书。

如果您没有真实域名,建议您到NameCheap购买。 价格低廉,终身免费提供Whois隐私保护。

在Webmin中禁用HTTPS模式

在设置反向代理之前,我们需要在Webmin中禁用HTTPS模式,因为稍后我们将在Apache / Nginx处终止TLS连接。 编辑Webmin配置文件。

sudo nano /etc/webmin/miniserv.conf

找到以下行。

ssl=1

将其更改为以下内容可在Webmin中禁用HTTPS模式。

ssl=0

保存并关闭文件。 然后重新启动Webmin。

sudo systemctl restart webmin

阿帕奇

如果您更喜欢使用Apache Web服务器,请按照以下说明设置反向代理。

安装Apache Web服务器。

sudo apt install apache2

要将Apache用作反向代理,我们需要启用 proxyproxy_httprewrite 模块。

sudo a2enmod proxy proxy_http rewrite

然后为Webmin创建一个虚拟主机文件。

sudo nano /etc/apache2/sites-available/webmin.conf

将以下文本添加到文件中。 更换 webmin.your-domain.com 使用您的实际域名,不要忘记为其设置A记录。

<VirtualHost *:80>
    ServerName webmin.your-domain.com

    ProxyPass / http://127.0.0.1:10000/
    ProxyPassReverse / http://127.0.0.1:10000/
</VirtualHost>

保存并关闭文件。 然后启用此虚拟主机。

sudo a2ensite webmin.conf

重新加载Apache以使更改生效。

sudo systemctl reload apache2

现在,您可以通过输入域名来远程访问Webmin(webmin.your-domain.com )在浏览器地址栏中。

Nginx的

如果您更喜欢使用Nginx Web服务器,请按照以下说明设置反向代理。

在Ubuntu上安装Nginx。

sudo apt install nginx

启动Nginx Web服务器。

sudo systemctl start nginx

然后在中创建一个新的服务器阻止文件 /etc/nginx/conf.d/ 目录。

sudo nano /etc/nginx/conf.d/webmin.conf

将以下文本粘贴到文件中。 更换 sabnzbd.your-domain.com 使用您的首选域名,不要忘记为其创建A记录。 如果使用其他端口,请将8080更改为您自己的端口号。

server {
       listen 80;
       server_name webmin.your-domain.com;

       location / {
              proxy_pass http://127.0.0.1:10000;
              proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
        }
}

保存并关闭文件。 然后测试Nginx配置。

sudo nginx -t

如果测试成功,请重新加载Nginx。

sudo systemctl reload nginx

现在您可以通过以下方式访问Webmin Web界面 webmin.your-domain.com

启用HTTPS

为了在访问Webmin Web界面时对HTTP通信进行加密,我们可以通过安装由Let’s Encrypt发行的免费TLS证书来启用HTTPS。 运行以下命令在Ubuntu上安装Let’s Encrypt客户端(certbot)。

sudo apt install certbot

如果使用Apache,则需要安装Certbot Apache插件。

sudo apt install python3-certbot-apache

接下来,运行以下命令以获取并安装TLS证书。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

如果使用Nginx,则需要安装Certbot Nginx插件。

sudo apt install python3-certbot-nginx

接下来,运行以下命令以获取并安装TLS证书。

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d webmin.your-domain.com

哪里:

  • --apache:使用Apache插件。
  • --nginx:使用nginx插件。
  • --agree-tos:同意服务条款。
  • --redirect:通过301重定向强制HTTPS。
  • --hsts:将Strict-Transport-Security标头添加到每个HTTP响应。 强制浏览器始终对域使用TLS。 防御SSL / TLS剥离。
  • --staple-ocsp:启用OCSP装订。 有效的OCSP响应被装订到服务器在TLS期间提供的证书。

现在应该获得证书并自动安装。 您将能够通过安全的HTTPS连接访问Webmin Web界面。

webmin ssl证书

添加可信引荐来源

因为Webmin本身以HTTP模式运行,并且我们在Apache / Nginx中启用了HTTPS,所以Webmin会认为 https://webmin.your-domain.com 在Webmin服务器之外。 因此,我们需要添加受信任的引荐来源网址。

编辑Webmin配置文件。

sudo nano /etc/webmin/config

在末尾添加以下行。

referers=webmin.your-domain.com

保存并关闭文件。 然后重新启动Webmin。

sudo systemctl restart webmin

包起来

我希望本教程可以帮助您在Ubuntu 18.04和Ubuntu 16.04上安装Webmin。 与往常一样,如果您发现此帖子有用,请订阅我们的免费新闻通讯。 您也可以在Twitter或关注我们的Facebook页面上关注我们。

Sidebar