0%

之前的文章提到过重新开始在更新这边的原因是为了研究怎么玩client certificate。玩Client Authentication嘛肯定是需要SSL证书的,所以我又研究了一下怎么弄一个自己的ACME客户端获取LetsEncrypt的证书。最近客户端写好了才想起来要填自己挖下的坑。

什么是Client Authentication

网上介绍Client Authentication的文章很多,为了避免复制黏贴我简单说说我的理解。
网络安全是现在最重要的议题,作为普通用户,我们可以通过服务器的SSL来辨别服务器的所属公司并用证书来加密传输给服务器的信息,那么作为服务器来说,是否也有办法可以验证客户的信息呢?答案就是Client Authentication。使用Client Authentication可以让服务器识别用户信息,并且可以限定哪些区域只有持特定证书的用户才能打开。我认为仅仅使用用户名和密码在安全性上的强度已经不够,如果有使用2FA的话还可以不过之前也有报道说2FA不太够安全。用Client Authentication是杜绝没有权限的人访问网站并且可以快速识别用户的好方法。

从哪儿获取Client Certificate

现在大多数CA(Certificate Authority)都提供Client证书。按照客户需要包含在证书上信息的多少价格不一样。对于普通用户来说,要么自己搭建一个CA(需要手动把证书的根放到服务器上)或者可以通过Actalis来获取最基础的免费证书。(只验证邮箱,证书上也只有邮箱这个信息)

为了演示Client certificate如何使用,我从Actalis申请了一张Client certificate。

阅读全文 »

在以前的文章中我分别介绍过如何用TraefikZeroSSL如何获取免费的SSL证书。对于不使用Traefik的朋友来说,手动申请和更换证书稍显麻烦。那么有没有办法可以让普通的服务器上的SSL证书的申请和续期变成一个自动的流程呢?答案是有的,而且从一开始就有……

从我知道有Letencrypt这个东西以来我就知道有个配套工具叫CertBot。由于当时我还没有兴趣搭自己的blog,所以也没有深入了解。这次重新整理Apache相关资料的时候研究了一下才发现自己错过了什么。由于这个工具实在太好用了,忍不住不介绍,下面请允许我讲解一下如何在Apache服务器上使用certbot来自动获取安装SSL证书。

阅读全文 »

说起来有点惭愧,距离上一次更新这边blog的文章已经有半年了。期间还差点丢失了所有的配置和文章文件…… 这半年我也没闲着主站那边没少更新吃喝玩乐的文章…… Anyway,公司前一阵子需要我使用client certificate来做登陆网站的验证。虽然Traefik也支持Client Authentication,但是我对于它的同一个服务器上不同的sub domain只能用同一个Client authentication的配置有点不满。(至少旧版是这样,我没有研究新版)因此决定回归到Apache看看怎么弄,顺便把Apache2服务器的SSL的配置方法和CertBot的使用方法也写一下好了。

之前我有写过一篇如何在XAMPP的环境下的Apache来安装SSL,今天这篇我们直接实战在服务器端配置。

阅读全文 »