1.openssl自签证书
这种方法获取的证书不被浏览器信任,因为是我们自己给自己办法的证书,访问的时候一般会提示危险
1.生成CA私钥
1 2
| openssl genrsa -out ca.key 2048
|
2.生成CA根证书请求信息
1
| openssl req -new -key ca.key -out ca.csr
|
3.生成CA根证书
1
| openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
|
4.生成私钥
1
| openssl genrsa -out ssl.key 2048
|
5.生成证书的申请信息
1
| openssl req -new -key ssl.key -out ssl.csr
|
6.使用CA的私钥进行签名
1
| openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in ssl.csr -out ssl.crt
|
2.使用acme获取权威证书
这种证书一般会被信任,但是前提是我们需要有域名,如果服务器在国外,无需备案
1.安装acme.sh
1
| curl https://get.acme.sh | sh
|
2.设置acme.sh别名
1 2
| alias acme.sh=~/.acme.sh/acme.sh echo 'alias acme.sh=~/.acme.sh/acme.sh' >> .bashrc
|
3.申请证书
1 2
| acme.sh --set-default-ca --server letsencrypt acme.sh --issue -d example.com --webroot ${WEBROOT}
|
4.设置acme.sh自动更新
#将这个记录放到计划任务
56 * * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null