Quer aumentar a segurança do site, mas comprar um certificado SSL comercial é muito caro? Este artigo ensinará como solicitar um certificado SSL gratuito usando o Let's Encrypt.
O ambiente em que este artigo se baseia é:
Pré-condições
Se você deseja let's encrypt
solicitar um certificado gratuito SSL
, deve atender aos seguintes pontos:
-
Deve ter um nome de domínio.
-
Deve haver um servidor com um IP público.
No processo de criação de um certificado, você precisa comprovar a propriedade do nome de domínio, para isso você precisa de um nome de domínio, e para ter um servidor com um IP de rede pública, você precisa executar uma ferramenta cliente para auxiliar na geração do certificado .Nesse processo, você precisa certbot
usar a Internet.
Instale a ferramenta cliente certbot
let's encrypt
Os certificados também podem ser gerados sem registro e login SSL
. A ferramenta do cliente é necessária certbot
. Esta ferramenta é python
escrita usando. No centos 7
sistema, a ferramenta é instalada da seguinte forma:
Instalar python3 e pip3
yum install python3 python3-devel
复制代码
Atualize o pip3, a versão deve ser maior que 20
pip3 install "pip>=20"
复制代码
Instale as dependências necessárias
pip3 install setuptools-rust
复制代码
setuptools-rust
é um plugin desenvolvido python
para extensões, com o objetivo de que as extensões escritas em C possam ser facilmente escritas em C.rust
rust
python
Instalarcertbot
pip3 install certbot
复制代码
cliente de teste
Use certbot --version
para verificar se a instalação está normal, por exemplo:
Se a versão sair normalmente, isso prova que a instalação foi concluída.
Se você instalar a placa de rede diretamente, considere adicionar uma fonte de informações, por exemplo: para atualizar
pip
e usar o comando Tsinghua source é:
pip3 install "pip>=20" -i https://pypi.tuna.tsinghua.edu.cn/simple 复制代码
Definir resolução de nome de domínio
Se você quiser usar let's encrypt
o certificado emitido, deverá primeiro resolver o nome de domínio envolvido para o servidor.
Por exemplo, organizamos o nome de domínio do certificado SSL pré-aplicado e as informações do endereço IP do servidor da seguinte forma:
Pré-inscreva-se para um nome de domínio de certificado SSL | Endereço IP do servidor |
---|---|
pdudo.***.com | 1. . .4 |
我们在申请证书之前,就必须将该域名pdudo.***.com
的A
记录解析到1.*.*.4
才行。
在申请SSL
证书的时候,我们需要在1.*.*.4
服务器上操作certbot
才行。
申请SSL
证书
在安装客户端工具和设置域名解析后,我们就可以来申请SSL
证书了,但是在申请前,需要先保证我们服务器1.*.*.4
的80端口没有被占用,且外网防火墙也是开放的。这样做的目的是let's encrypt
来访问我们的服务器进行校验和下发证书。
做完上述操作后,执行下列命令,来申请SSL
证书:
certbot certonly --standalone -d pdudo.***.com
复制代码
上述命令的意思是,启动独立的web
服务进行身份验证,为pdudo.***.com
申请/续订SSL
证书,但是不需要安装。
在此过程中,会弹出很多的选项,让我们输入,大概流程为:
- 会让我们输入邮件地址,将用于续订和安全通知。
- 会让我们确定是否向
ACME server
注册。 - 是否分享你的邮件让
EFF
共享。
如果申请成功后,会在/etc/letsencrypt/live/
下,以域名为目录,里面存储的证书信息,并且会告知过期时间是多久。
运行截图:
总结
本篇文章,我们使用let's encrypt
为网站申请免费的证书,无需登录、注册,简单使用命令,几分钟内就可以生成证书了,超级简单吧,快来试试吧。注意,let's encrypt
申请的证书,有效期只有3个月,所以,使用该方法生成的证书,每2个月几乎就要停止web
后更新一下证书才行。