安装 Ubuntu 18.04, Webmin, Nginx, MariaDB, PHP7.2-FPM,Perl-Fastcgi 到 Linode 的 VPS(5)

安装 Ubuntu 18.04, Webmin, Nginx, MariaDB, PHP7.2-FPM,Perl-Fastcgi 到 Linode 的 VPS.

第五部分

在修改 nginx 配置文件使其满足证书使用之前,先执行下面的命令,生成一个 4096 位的 dhparam 文件。

cd /etc/nginx/ssl
sudo openssl dhparam -out dhparam.pem 4096

这个命令会执行很长时间,耐心一点,喝口茶。

配置 https 主机

先来确认一下版本信息,因为下面要用到。


davidyin@localhost:/etc/nginx/ssl$ cd
davidyin@localhost:~$ nginx -v
nginx version: nginx/1.14.0 (Ubuntu)
davidyin@localhost:~$ openssl version
OpenSSL 1.1.0g  2 Nov 2017
davidyin@localhost:~$

配置参数的来源根据 Mozilla SSL Configuration Generator 这个生成器来产生。

mozilla-ssl-generator.jpg

我会建议使用 Modern 方式的配置。

主机配置文件做相应的修改,http 网站重定向到 https。采用 http2,还有就是 HSTS 预载入配置。最后完整的 webexample.conf 配置文件可以到 gist 查看,也可以本地下载 webexample.conf.txt

修改完毕,重启 nginx 服务器。并且到 HSTS Preload 检查。

hsts-repload.jpg网站只要没有特殊的原因无法对所有子域名设置 https,一般都是会加入这个 HSTS 预载入计划。加入此 预载入计划的域名,哪怕是用户头一次访问该网站,都会直接使用 https 访问。

到 SSL Labs 检测 SSL 评分。得分是达到了 A+。

ssllab-rating-a.jpg

安装 Perl-Fastcgi

下面是对我而言很重要的语言支持,因为我有用 MovableType blog系统,而它是由 perl 语言支持的。

sudo apt install libfcgi-perl
sudo install spawn-fcgi fcgiwrap

然后执行下面命令。

sudo service fcgiwrap start

最后在nginx 配置文件中添加下面这块。


location ~ \.pl|cgi$ {
   fastcgi_pass  unix:/var/run/fcgiwrap.socket;
   fastcgi_index index.pl;
   fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
   include fastcgi_params;
   }

保存重启 Nginx 服务器。

测试一下,看看是否 perl 文件可以运行。新添加一个文件 /home/davidyin/webexample.win/index.pl,内容如下。

index_pl.txt

下载后改名为 index.pl 。

给与可执行权限。

chmod  a+x index.pl

在浏览器输入 https://webexample.win/index.pl

perl-environment-test.jpg到目前为止,已经在 Linode 的 VPS 上,安装了 Ubuntu 18.04 LTS,Webmin 管理面板,以及 Nginx, MariaDB, PHP7.2-fpm, Perl-Fastcgi,Let's Encrypt 的证书等等。


作者: David Yin
原载: SEO 网站优化推广
版权所有。转载时必须以链接形式注明作者和及本声明。