如何使用ubuntu 18.04 lts加密ssl来安装webmin

时间:2020-02-23 14:38:53  来源:igfitidea点击:

WebMin是一种流行的基于Web的平台,用于以简单友好的方式管理服务器。
如果我们不在终端上工作,则Webmin通过图形用户界面提供系统管理任务的更好选择。

在本教程中,我们将向我们展示如何在Ubuntu 18.04 LTS上安装WebMin。

在ubuntu 18.04上安装webmin

第1步安装Webmin

首先,我们必须添加WebMin的存储库,以便我们可以安装和管理WebMinusing APT包管理器。

首先,让我们更新我们的系统存储库

$sudo apt update

接下来,让我们安装准备工作包

$sudo apt install python apt-show-versions libapt-pkg-perl libauthen-pam-perl 
libio-pty-perl libnet-ssleay-perl

此后,下载Webmin Deb包

$cd /tmp && curl -L -O http://www.webmin.com/download/deb/webmin-current.deb

现在使用以下命令安装Webmin

$sudo dpkg -i webmin-current.deb

在Ubuntu 18.04 LTS上安装Webmin

第2步访问Webmin

既然我们已成功安装WebMin,我们将允许防火墙中的端口10000。
这是我们要访问WebMin界面的端口。

在UFW防火墙执行中添加端口10000

$sudo ufw allow 10000/tcp

要验证端口10000是否已打开,请运行以下命令

$sudo ufw status

检查UFW状态

防火墙中允许的端口转到浏览器,并使用后缀输入域 :10000在URL的末尾

syntax

https://domain_name:10000

Webmin登录连接不是私有的

URL列表示未加密,因此不建议继续进行。
别担心,这是因为Webmin尚未拥有SSL证书,我们将在下一个步骤中安装。

要进入主仪表板,请单击"高级"选项卡,然后单击"继续执行URL地址"

我们将通过显示的登录屏幕呈现。
输入正确的用户详细信息,然后单击"登录"

步骤3设置文档根目录

接下来,我们将配置nginx服务器块。
缺省情况下,nginx只有一个服务器块,该块被配置为来自/var/www/html目录的服务器文档

我们现在正在为我们的设置一个根目录。

语法

$sudo mkdir -p /var/www/example.com/html

在这种情况下,我们将拥有

$sudo mkdir -p /var/www/linuxtechwhiz.info/html

使用我们的目录到位,我们将重新分配给我们常规用户帐户的所有权

$sudo chown -R $USER:$USER /var/www/linuxtechwhiz.info/html

修改权限

$sudo chmod -R 755 /var/www

步骤4配置nginx服务器块

nginx包含一个调用default的服务器块,我们可以用作我们自己的配置的模板。
我们将创建我们的域的服务器块,然后将默认服务器复制到它并进行一些修改。

如上所述,我们将通过复制默认文件来创建我们的第一个服务器块配置文件:

$sudo cp /etc/nginx/sites-available/default 
/etc/nginx/sites-available/linuxtechwhiz.info

然后我们将使用文本编辑器打开文件并进行一些修改

$sudo vim /etc/nginx/sites-available/linuxtechwhiz.info

忽略注释的线条,配置应该类似于下面的行

server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location/{
try_files $uri $uri/=404;
}
}

由于我们已经在服务器块中具有Default_server属性的Nginx默认服务器块,因此我们将删除域中的属性并具有:

server {
listen 80;
listen [::]:80;
. . .
}

然后我们将调整到文档root的路径并将其指向我们的服务器的文档root

server {
listen 80;
listen [::]:80;
root /var/www/linuxtechwhiz.info/html;
}

修改server_name属性以匹配我们的域

server {
listen 80;
listen [::]:80;
root /var/www/linuxtechwhiz.info/html;
index index.html index.htm index.nginx-debian.html;
server_name linuxtechwhiz.info www.linuxtechwhiz.info;
location/{
try_files $uri $uri/=404;
}
}

关闭并退出配置文件

然后我们通过发出以下命令来启用服务器块

$sudo ln -s /etc/nginx/sites-available/linuxtechwhiz.info /etc/nginx/sites-enabled/

要确保任何Nginx文件中没有语法错误,请执行

$sudo nginx -t

现在让我们重新启动nginx服务器

$sudo systemctlrestart nginx

验证nginx是否正在运行执行

$sudo systemctlstatus nginx

第5步加密

最终部分正在保护,以加密浏览器和服务器之间的通信。

单击"Webmin"标签,如下所示

在出现的下拉菜单中选择"Web配置"

单击SSL'"加密"选项

接下来,我们将点击''Let’s Encrypt ''选项卡。

填写主机名选项卡中的主机名,然后单击"请求证书"。

WebMin将开始生成让我们的加密SSL证书并将验证文件存储在目录中。

Let’s Encrypt 证书请求

现在回到我们服务器的WebMin URL并刷新浏览器。
请注意,与WebMin服务器的连接已加密。

我们现在可以安全地登录并访问仪表板

如果我们有点好奇并且想要查看让我们的加密证书信息,请单击挂锁符号,然后选择"证书有效"选项

SSL证书选项卡-》L证书信息