干货:Debian/Ubuntu的自签名https的安装(Apache)

王志勇 发表于 2019年11月21日 08:53

因为开发一键纯净原版LAMP,需要安装https。自签名https的安装,最近我找了很多文章,调试了整整不少于4-5天,VMWare重启(相当于重装系统)了不少于100次,都没有成功。因为网上有很多文章太复杂,或者方法是不正确的。多次的调试中,有了新发现,原来自签名https安装如此简单。

为什么需要自签名https?自签名https和第三方认证https的区别,除了有第三方认证,基本上没有任何区别。自签名https,可用于内部网站加强数据传输安全,或者用于在自己的VPS上安装各种PHP应用(程序),它的优点是安装简单,永不过期。不像第三方认证的https,需要隔3个月、1年续期一次。

自签名https的安装,CentOS系统下,网上可以搜到相关的文章,照着做就能成功,步骤简单。
Debian/Ubuntu系统下,安装方法目前在网上是空白,有很多方法也较复杂。

经过很多次的调试,最后发现Apache自身已经带有https,无需任何配置。默认没有开启SSL模块,这时只需开启SSL模块,便可以使用。本文的方法是以Debian 8.0为例,其余的Debian 7/9/10,以及所有的Ubuntu版本,方法都一样。(不同的是,apt命令,在Debian 7、或Ubuntu 14及以前的版本要用apt-get。)

如果VPS中没有Apache,必须先安装Apache,命令:
apt update;
apt -y install apache2;

Apache开启SSL模块的正确步骤,命令:

cp /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled;
cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/mods-enabled/ssl.conf;
service apache2 restart

上述命令合并为1行,一键让Debian/Ubuntu支持https,用时1秒:(如果已经安装Apache)

cp /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled; cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/mods-enabled/ssl.conf; service apache2 restart

此时,VPS立刻支持自签名https,如下截图:

自签名https首次访问,都会提示“此连接不受信任”(以火狐为例),如下截图,这个提示是因为没有第三方认证,并不意味着不安全,自己使用,完全没有问题,点击“我已充分了解可能的风险→添加例外”。

如果想给自签名https添加域名(虚拟主机),可以修改/etc/apache2/mods-enabled/ssl.conf。绑定域名的方法,根据ssl.conf这个文件上的配置,如法炮制,并去掉所有#的行、去掉多余的设置语句。示例:

<VirtualHost *:443>
ServerAlias test.auiou.com
DocumentRoot /var/www/html/test.auiou.com
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
</VirtualHost>

这样就可以用 https://test.auiou.com 来访问,测试如下截图:

Nginx的自签名https的安装,由于时间的关系,尚未调试。
第三方认证https如Let’s Encrypt的安装方法,如前文:http://www.auiou.com/relevant/00000943.jsp

2019-11-21 15:55更新:
什么时候需要使用自签名https?详解:
在服务器上自建第三方PHP程序(应用),例如YOU(隔开)2(隔开)PHP这类,最好使用https,防止传输中遭遇G(隔开)F*。

这种情况,使用自签名https的理由是,自签名https安装特别方便,安全级别和第三方认证https又完全一样,只是首次访问有个安全提示。

2条评论:
1   平顶山 2019-11-21 10:52
上把小锁也好

自由勇 2019-11-21 15:52
是的,在自己的VPS上安装各种PHP应用(程序),用https,对VPS是一种保护。

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

直接发送Trackback到此文章

说明:本评论系统不支持HTML代码。(您的留言需要审核,审核规则请见这里。)

王志勇:1980-09-26 (39周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2019年09月
2019年08月
2019年07月
2019年06月
2019年05月
2019年04月(30)
2019年03月(30)
2019年02月(30)
2019年01月(30)
2018年12月(30)
2018年11月(30)
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2019 auiou.com All rights reserved.
此Blog程序由王志勇编写 已经发布在Arsue