c#获取ssl证书有效性_Nginx部署ssl证书开启https简要教程

本文介绍了如何使用acme.sh工具免费申请Let's Encrypt SSL证书,并在Nginx上部署及配置SSL,包括DNSPOD API的使用,以及证书的自动更新和Nginx的相关优化设置。
摘要由CSDN通过智能技术生成
b3824f5083257537d8245317b917082d.png

ssl证书分收费的,和免费的,当然这里会给普通用户介绍免费就可以用的。

关于什么是SSL证书,什么是https的基础问题,这里不作赘述,需要补课的同学可以自行搜索学习。本篇直接给出简便快捷实现目标的工具,那就是今天的主角,acme.sh。它完成了帮你自动申请Let's Encrypt证书的全部过程,所以这里你又可以忽略它到底怎么申请到,并使用的整个过程,只需要知道怎么用它就好了。

详细官方使用说明见

github:Neilpang/acme.sh/wiki/How-to-issue-a-cert

其它也有中文文档可参考

我这里示例过程,使用的dnspod部署dns的域名,所以申请了dnspod接口,可以让acme.sh直接自己验证域名有效性,完成自动申请证书的过程。

DNSPOD API在其后台可以设置,文中没办法帖外链地址,请自行查找。

申请到API的ID和TOKEN之后

# export DP_Id="ID123456"

# export DP_Key="token串"

# acme.sh --issue --dns dns_dp -d example.com

example.com是示例域名,请替换成你自己的。运行完上面的命令之后就会告诉你,证书文件存放在/root/.acme.sh/example.com/目录下了。

生成4096位的DH-Key(证书密钥交换密钥)

# screen -S DH

# openssl dhparam -out /usr/local/nginx/conf/ssl/dhparam.pem 4096

在Nginx的Server段加入ssl相关配置

ssl_certificate /usr/local/nginx/conf/ssl/example.com.cer;

ssl_certificate_key /usr/local/nginx/conf/ssl/example.com.key;

#OCSP Stapling的证书位置

ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;

#DH-Key交换密钥文件位置

#SSL优化配置

ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;

#只允许TLS协议

ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

#加密套件,这里用了CloudFlare's Internet facing SSL cipher configuration

ssl_prefer_server_ciphers on;

#由服务器协商最佳的加密算法

ssl_session_cache builtin:1000 shared:SSL:10m;

#Session Cache,将Session缓存到服务器,这可能会占用更多的服务器资源

ssl_session_tickets on;

#开启浏览器的Session Ticket缓存

ssl_session_timeout 10m;

#SSL session过期时间

证书安装并重启nginx

# acme.sh --installcert -d example.com --key-file /usr/local/nginx/conf/ssl/example.com.key --fullchain-file /usr/local/nginx/conf/ssl/example.com.cer --reloadcmd "service nginx reload"

配置acme.sh自动运行,因为免费证书的有效期是90天,这样就不用想着自己再去生成新证书了。

# crontab -e

42 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null

最后特别注意,经过实践发现,新配置的域名和相关证书,第一次需要重启nginx,配置才会生效,配置过https的域名,以后nginx reload才有效。这里是个坑,需要注意一下。

OK,就到这里吧,你在使用过程中遇到什么问题,可以在下面回复交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值