SSL证书知识
网站有必要安装SSL证书?当然很有必要!
SSL证书分类:
域名型 SSL证书(DV SSL)
企业型 SSL证书(OV SSL)
增强型 SSL证书(EV SSL)
个人网站和小企业网站,其实根本用不上SSL证书,不过因为Google和百度明确表示网站有ssl证书会加分,所以推荐使用ssl证书。
个人网站和小企业网站,推荐使用DV证书,因为便宜,甚至免费。
中大型网站,建议使用OV SSL,或者更高级别的EV SSL。
SSL证书厂家:
TrustAsia,亚洲诚信
Let’s Encrypt
Symantec,赛门铁克
GeoTrust
免费SSL证书
搜索免费的SSL证书,可以找到很多免费资源,本人推荐FreeSSL.cn
关于SSL证书的建议:
1、不要使用Start SSL和沃通Wosign SSL,原因是信用差,主流浏览器不信任;
2、申请SSL证书后,还需要安装,具体参考各大SSL销售商的教程;
SSL证书的使用经验:
2022年2月28日更新:除了FreeSSL,还有https://letsencrypt.osfipin.com
我申请的是免费证书,有两种选择:
RSA,默认选择,老式证书,兼容性好,稍微
ECC,新式证书,速度快,安全性高,
RSA算法:默认选择,应用较早,最为普及,兼容性好,一般采用 2048 位的加密长度,对服务器性能消耗稍高
ECC算法:椭圆加密算法,新一代算法,一般采用 256 位加密长度,加密速度快,效率更高,对服务器资源消耗低,而且更安全,抗攻击型更强。
我选择了ECC算法,导出证书后有一大堆文件,文件说明:
fullchain.crt: 证书和证书链
certificate.crt: 证书
chain.crt: 证书链
private.pem: 密钥(请妥善保存)
public.pem: 公钥
certificate.pfx: pfx格式证书(使用pfx导入密码)
证书使用方法,我使用的是宝塔面板
fullchain.crt文件复制到证书中。
private.pem文件复制到密钥中。
如果是RSA证书,那配置方法如下:文件.key粘贴到密匙输入框,文件.crt粘贴到证书(PEM格式)输入框。PEM格式证书 = 域名证书.crt + 根证书(root_bundle).crt
以下是2019年的内容
1、西部数码的一元DV SSL,亚洲诚信Trust Asia公司的产品。购买SSL时必须域名验证,建议使用DNS验证,验证成功后提供两个文件:
www.mtdsj.com.key,密钥(私钥,RSA PRIVATE KEY),只有一段密码;
www.mtdsj.com.crt,证书(CERTIFICATE),有两段密码,依次是证书和中级证书(证书链),粘贴时不能有空行。
我的服务器是宝塔Linux面板,安装SSL证书方法:网站–ssl–开启ssl–输入密钥(KEY)–输入证书(CRT/PEM/CSR)–保存–打开强制https,http会自动跳转到https
2、FreeSSL的免费证书更好用!这家的SSL证书也是来自亚洲诚信,申请流程比西部数码更简单!在CSR生成这一项,我选择的是浏览器生成,提交后有三段密码显示在网页,依次是:CA证书、证书、私钥
宝塔面板SSL证书输入框填写方法:
密钥框填入私钥;
证书框先填入证书,不空行再填入CA证书;
如果填写证书的顺序错误会提示错误:当前未开启SSL
浏览器生成的证书也可以下载到本地,有两个压缩包,其中一个压缩包的名字是域名,只需要用到这一个压缩包,解压后有两个文件,分别是:
private.key:密钥(私钥,RSA PRIVATE KEY),复制后粘贴到宝塔面板SSL密钥框中即可;
full_chain.pem:证书(CERTIFICATE),使用记事本打开,有两段密码,复制后粘贴到宝塔面板SSL证书框中即可。
我遇到的问题:从网页中复制证书信息到宝塔面板,点击保存和强制HTTPS,提示当前未开启SSL,多次尝试配置SSL无效。原因是,我在FreeSSL网页上先复制CA证书,再复制证书到宝塔证书框中,这个顺序是错误的!
2020年9月20日,我使用这家网站的KeyManager软件申请证书。结果导出证书缺乏一个根证书,导致证书链不完整,降级为B。解决方法是重新导出,重试几次可能得到完整的证书文件。其中一个文件名为:网址.com_key.key,填写在宝塔面板第一个密钥KEY输入框。另外一个文件名为:网址chain.crt,用记事本打开后填入第二个输入框。
附注:宝塔面板说明PEM格式证书 = 域名证书.crt + 根证书(root_bundle).crt
SSL可能遇到的问题
1、第一次操作出现过问题,在安卓设备上提示:
当前网站证书不可信且证书链长度为1…该证书并非来自可信的授权中心(各种浏览器提示不同,意思一样)
搜索得知问题是:证书链不完整,应该加入完整的CA证书链。
也就是说我没有完整的输入CA证书,注意,两个证书之间不要有空行!
2、怎么将不带https的域名设置跳转到HTTPS
设置A:SSL设置里打开强制https
输入http://www.mtdsj.com/会自动变为https://www.mtdsj.com/
设置B:使用宝塔301跳转,设置mtdsj.com,301跳转到
https://www.mtdsj.com(不带后面的/)
输入mtdsj.com会301跳转到https://www.mtdsj.com/
3、浏览器地址栏里https前面的小锁不是绿色,而是灰色的,这是为什么?
因为网页引用了其他网站的图片等内容,而其他网站没有SSL证书,所以小锁不是绿色的,可以不在意!
4、域名验证有两种方法,我之前习惯使用文件验证,有次验证失败,原因是域名设置过301重定向。后来我就开始使用DNS验证,速度更快!
本人使用的是宝塔面板,安装SSL证书简单快捷!感谢宝塔面板!
SSL证书对于小型网站意义不大,但搜索对有SSL证书网站加分,而且从2018年7月1日起,谷歌浏览器Chrome将把所有不使用SSL证书的网站标记为不安全,所以网站更需要使用SSL证书!