一、前言
我们在上一篇中,部署了 LAMP Web 服务器环境。但由于 默认 HTTP 协议链接中存在诸多不足,所以我们这一篇实现 HTTPS 连接。
二、部署 HTTPS 的两种方式
1. 使用第三方 CA
这里我们以阿里云 SSL 为例:树莓派/Debian Apache2 安装腾讯云 SSL 证书 。
2. 使用自建 CA
这里以 Debian 虚拟机为例:树莓派/Debian Apache2 配置自建 CA 实现 HTTPS(SSL) 服务 。
三、自建CA与采购第三方CA证书的比较
1. 节省费用
使用第三方CA证书的费用是企业证书每年每张证书200元,个人证书每年每张证书10元。自建CA的建设费用包括全部软硬件、工程费用等不超过300万元。可以计算,当企业证书数量达到2万时,自建CA累计费用低于使用第三方CA证书。
2. 关于登录、交易速度
在登陆系统和进行交易的过程中,服务器都要查验证书的作废冻结情况。自建CA所具有的一个比较优势是所有的服务器系统都在银行内部,相互之间的通信是局域网,因此验证CRL等操作在内部网上进行,其速度可以得到保证,因此交易速度和可靠性都能得到保证。
而使用第三方证书,则交易中需要和第三方CA证书系统进行广域网上的远程通信,其网络情况对系统运行有极大影响,因此其登陆速度、交易速度和可靠性都会远远低于通过本地局域网通信的自建CA系统。
3. 作为基础安全平台,支持其他应用
银行自建CA在为网上银行等应用服务的同时,可以成为银行内部的身份认证机构,为内部信息传输的安全加密和身份认证提供安全平台。
如果要实现同样的内部安全系统而使用第三方证书运营机构提供的证书,则可能出现以下方面的问题:
- 费用过高
- 系统不易集成
- 证书安全策略缺乏灵活性。
4. 证书安全策略
证书安全策略指的是认证中心对证书的用途、使用方法等方面进行的规定。比如,证书的一些属性可以规定该证书是否可用于电子邮件,是否可用于转帐支付,是否可用于内部管理等等。还包括证书的有效期的定义,比如证书的有效期是1年还是2年甚至5年。这些证书属性的定义,一般都要和使用证书的具体业务联系起来,才能更好的让证书服务于应用。
自建CA的安全策略可自己定义,可以根据自己的要求进行定义,这就给新开发业务系统带来很大的方便,比如业务中的一些特性可以在证书中规定;另外还可以比较方便的扩充证书的用途,比如很容易地将交易用证书和内部管理证书区分。
第三方证书是面向社会的,其证书安全策略不能随便修改,因此很难为某个银行提供个性化的证书安全策略。这在应用系统和安全系统的结合方面可能会带来一些不便。