为你的网站安装免费的 SSL TLS 证书

文章目录

前言

申请了很久的域名没有用起来怎么行呢?而访问安全需要获得一个可信的https证书颁发机构的认证,这其实是一个提升你网站可信度的方法,有很多的证书颁发机构,收费也高低不等,今天主要是介绍一个免费的https证书颁发机构ACME,以及如何给自己的网站进行认证。

准备工作

下载执行官方脚本

复制代码
curl https://get.acme.sh | sh

source ~/.bashrc

我这里是root用户执行的,在家目录中生成了.acme.sh这个文件夹:

复制代码
[root@csv tmp 13:26:34]#ll /root/.acme.sh/
total 256
-rw-r--r-- 1 root root    450 Jun  7 16:33 account.conf
-rwxr-xr-x 1 root root 223427 Jun  6 15:16 acme.sh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.csh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.env
drwxr-xr-x 4 root root     66 Jun  6 15:33 ca
drwxr-xr-x 2 root root   4096 Jun  6 15:16 deploy
drwxr-xr-x 2 root root   8192 Jun  6 15:16 dnsapi
-rw-r--r-- 1 root root   1307 Jun  7 16:33 http.header
drwxr-xr-x 2 root root   4096 Jun  6 15:16 notify

编辑account.conf文件:

复制代码
# 添加自己邮箱
ACCOUNT_EMAIL='xxx@**.com'

# 添加阿里云Secret及秘钥
SAVED_Ali_Key='xxxxxxxxxx-key'
SAVED_Ali_Secret='xxxxxxxxx-secret'

阿里云Secret及秘钥的操作参考:创建阿里云AccessKey_访问控制(RAM)-阿里云帮助中心 (aliyun.com)

证书申请

执行脚本前请先关闭Nginx服务:

复制代码
nginx -s stop

申请证书:

复制代码
acme.sh --issue --set-default-ca --server letsencrypt -d templex.com -d *.templex.com

这时就会在当前目录下生成新的证书文件目录templex.com_ecc:

复制代码
[root@csv tmp 13:26:34]#ll /root/.acme.sh/
total 256
-rw-r--r-- 1 root root    450 Jun  7 16:33 account.conf
-rwxr-xr-x 1 root root 223427 Jun  6 15:16 acme.sh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.csh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.env
drwxr-xr-x 4 root root     66 Jun  6 15:33 ca
drwxr-xr-x 2 root root   4096 Jun  6 15:16 deploy
drwxr-xr-x 2 root root   8192 Jun  6 15:16 dnsapi
-rw-r--r-- 1 root root   1307 Jun  7 16:33 http.header
drwxr-xr-x 2 root root   4096 Jun  6 15:16 notify
drwxr-xr-x 3 root root    196 Jun  6 15:41 templex.com_ecc

# 证书文件
[root@csv .acme.sh 13:49:25]#ll templex.com_ecc/
total 28
drwxr-xr-x 2 root root    6 Jun  6 15:41 backup
-rw-r--r-- 1 root root 1827 Jun  6 15:35 ca.cer
-rw-r--r-- 1 root root 3344 Jun  6 15:35 fullchain.cer
-rw-r--r-- 1 root root 1517 Jun  6 15:35 templex.com.cer
-rw-r--r-- 1 root root  856 Jun  6 15:41 templex.com.conf
-rw-r--r-- 1 root root  497 Jun  6 15:34 templex.com.csr
-rw-r--r-- 1 root root  210 Jun  6 15:34 templex.com.csr.conf
-rw------- 1 root root  227 Jun  6 15:34 templex.com.key

设置证书自动更新:

复制代码
acme.sh --upgrade --auto-upgrade

证书安装

新建证书存放目录并导出证书文件:

复制代码
# 新建
mkdir -p /data/cert/templex.com/

# 导出
acme.sh --install-cert -d templex.com --cert-file /data/cert/templex.com/templex.com.crt --key-file /data/cert/templex.com/templex.com.key --fullchain-file /data/cert/templex.com/fullchain.crt

Nginx配置

复制代码
server {
    listen       443 ssl;
    server_name  abs.templex.com;

    ssl_certificate      /data/cert/templex.com/templex.com.crt;
    ssl_certificate_key  /data/cert/templex.com/templex.com.key;

    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;

    # location / {
    #     root   html;
    #     index  index.html index.htm;
    # }
	location / {
		proxy_pass http://xxx.xx.x.x:30000; 
	}
}

最后重启Nginx,再次访问一下abs.templex.com,再也没有显示不安全的链接了,算是大功告成。

复制代码
nginx -s reload
nginx

参考:

申请并部署免费的 SSL/TLS 证书 - 莱布尼茨 - 博客园 (cnblogs.com)

ACME.SH 申请SSL证书(免费、自动更新)_adding txt value:-CSDN博客

相关推荐
所愿ღ1 小时前
JavaWeb-Servlet基础
笔记·servlet
岑梓铭2 小时前
考研408《计算机组成原理》复习笔记,第五章(2)——CPU指令执行过程
笔记·考研·408·计算机组成原理·计组
七七&5563 小时前
2024年08月13日 Go生态洞察:Go 1.23 发布与全面深度解读
开发语言·网络·golang
寻道模式3 小时前
【运维心得】三步10分钟拆装笔记本键盘
运维·计算机外设·笔记本
元清加油3 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
炫友呀5 小时前
Centos 更新/修改宝塔版本
linux·运维·centos
闻道且行之5 小时前
嵌入式|VNC实现开发板远程Debian桌面
运维·debian·嵌入式
向日葵.5 小时前
fastdds.ignore_local_endpoints 属性
服务器·网络·php
oe10196 小时前
读From GPT-2 to gpt-oss: Analyzing the Architectural Advances(续)
笔记·gpt·学习
IT成长日记6 小时前
【自动化运维神器Ansible】Playbook中的when条件判断:精细化控制任务执行
运维·自动化·ansible·playbook·when·条件判断