https://github.com/acmesh-official/acme.sh 官方文档设计 多种

一、安装acme,可能一次安装不成功,要多安装几次

1、curl  https://get.acme.sh | sh -s email=my@example.com

二、生成证书 用于nginx

你用的 nginx服务器, 或者反代, acme.sh 还可以智能的从 nginx的配置中自动完成验证

acme.sh --issue  -d mydomain.com   --nginx   #-d 后面的域名写自己nginx配置域名

注意, 无论是 apache 还是 nginx 模式, acme.sh在完成验证之后, 会恢复到之前的状态, 都不会私自更改你本身的配置. 好处是你不用担心配置被搞坏, 也有一个缺点, 你需要自己配置 ssl 的配置, 否则只能成功生成证书, 你的网站还是无法访问https. 但是为了安全, 你还是自己手动改配置吧

可以看见秘钥文件已经生成

三、copy/安装 证书

前面证书生成以后, 接下来需要把证书 copy 到真正需要用它的地方.

注意, 默认生成的证书都放在安装目录下: ~/.acme.sh/, 请不要直接使用此目录下的文件, 例如: 不要直接让 nginx/apache 的配置文件使用这下面的文件. 这里面的文件都是内部使用, 而且目录结构可能会变化.

正确的使用方法是使用 --install-cert 命令,并指定目标位置, 然后证书文件会被copy到相应的位置, 例如 以下      域名写自己的,文件路径自定义

acme.sh --install-cert -d example.com \
--key-file       /path/to/keyfile/in/nginx/key.pem  \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--reloadcmd     "service nginx force-reload"

四、修改nginx配置

nginx添加ssl配置后,刷新nginx -s reload

server{listen 443 ssl;server_name     ; #用户服务器的域名ssl_certificate /path/to/fullchain/nginx/cert.pem;ssl_certificate_key     /path/to/keyfile/in/nginx/key.pem;ssl_session_timeout     5m;ssl_protocols           TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers             ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers       on;
}

五、更新 acme.sh

目前由于 acme 协议和 letsencrypt CA 都在频繁的更新, 因此 acme.sh 也经常更新以保持同步

升级 acme.sh 到最新版 :

acme.sh --upgrade

如果你不想手动升级, 可以开启自动升级:

acme.sh  --upgrade  --auto-upgrade

之后, acme.sh 就会自动保持更新了.

你也可以随时关闭自动更新:

acme.sh --upgrade  --auto-upgrade  0

六、如果出错了

如果出错, 请添加 debug log:

acme.sh  --issue  .....  --debug

或者:

acme.sh  --issue  .....  --debug  2

nginx 启动

#!/bin/sh
# nginx - this script starts and stops the nginx daemin
#
# chkconfig:   - 85 15

# description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server

# processname: nginx
# config:      /usr/local/nginx/conf/nginx.conf
# pidfile:     /usr/local/nginx/logs/nginx.pid

# Source function library.

. /etc/rc.d/init.d/functions

# Source networking configuration.

. /etc/sysconfig/network

# Check that networking is up.

[ "$NETWORKING" = "no" ] && exit 0

nginx="/data/nginx/sbin/nginx"

prog=$(basename $nginx)

NGINX_CONF_FILE="/data/nginx/conf/nginx.conf"

lockfile=/var/lock/subsys/nginx

start() {

[ -x $nginx ] || exit 5

[ -f $NGINX_CONF_FILE ] || exit 6

echo -n $"Starting $prog: "

daemon $nginx -c $NGINX_CONF_FILE

retval=$?

echo

[ $retval -eq 0 ] && touch $lockfile

return $retval

}

stop() {

echo -n $"Stopping $prog: "

killproc $prog -QUIT

retval=$?

echo

[ $retval -eq 0 ] && rm -f $lockfile

return $retval

}

restart() {

configtest || return $?

stop

start

}

reload() {

configtest || return $?

echo -n $"Reloading $prog: "

killproc $nginx -HUP

RETVAL=$?

echo

}

force_reload() {

restart

}

configtest() {

$nginx -t -c $NGINX_CONF_FILE

}

rh_status() {

status $prog

}

rh_status_q() {

rh_status >/dev/null 2>&1

}

case "$1" in

start)

rh_status_q && exit 0
        $1
        ;;

stop)

rh_status_q || exit 0
        $1
        ;;

restart|configtest)
        $1
        ;;

reload)
        rh_status_q || exit 7
        $1
        ;;

force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;

condrestart|try-restart)

rh_status_q || exit 0
            ;;

*)

echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
        exit 2

esac

生成免费的证书.acme 基于nginx相关推荐

  1. 七步生成免费HTTPS证书

    使用Let's Encrypt + Nginx生成免费HTTPS证书 Let's Encrypt简介 官网:https://letsencrypt.org/ Let's Encrypt作为一个公共且免 ...

  2. 阿里云添加二级域名及生成免费ssl证书

    阿里云添加二级域名及生成免费ssl证书 一.问题背景 app上架需要绑定域名进行解析,需要提供域名及对应的ssl证书 二.解决方案 1.公司已有域名,生成二级域名和免费ssl证书提供 三.具体操作 1 ...

  3. linux系统自签发免费ssl证书,为nginx生成自签名ssl证书

    安装nginx可参考: nginx重新编译支持ssl可参考: 接下来手动配置ssl证书: 自己手动颁发证书的话,那么https是不被浏览器认可的,就是https上面会有一个大红叉 下面是手动颁发证书的 ...

  4. ubuntu生成密钥和证书_基于浏览器的密钥生成以及与浏览器的密钥/证书存储的交互...

    ubuntu生成密钥和证书 想象以下情况: 您需要从访问您的网站的用户那里获取一个密钥(在非对称情况下为用户的公共密钥 ),并希望浏览器记住私有部分,而不会因冗长的导入过程而困扰用户. 老实说,实际上 ...

  5. 自己制作ssl证书:自己签发免费ssl证书,为nginx生成自签名ssl证书

    Nginx支持多域名ssl证书 导读: 昨天凌晨将公司旗下的另外一个域名也升级成通过ssl证书登录的形式,那里料到过程竟然非常曲折,原因是nginx如果编译的时候使用openssl如果没有添加enab ...

  6. 安装acme.sh生成免费https证书

    1. 安装 curl https://get.acme.sh | sh 如果出现Failed to connect to raw.githubusercontent.com port 443错误,解决 ...

  7. 免费ssl证书申请以及nginx配置https访问攻略

    攻略背景 最近需要为我哥的协会申请ssl证书,因为小程序接口需要https.于是开启了这一番折腾,最后简化为一篇攻略. 第一步,申请SSL证书 这个网站最好,可以申请到1年的,其他都是三个月.1年后再 ...

  8. 阿里云申请免费ssl证书并配置nginx

    网站https设置 sll申请与nginx跳转配置 这里选择1年 点击证书申请 这里注意要写文件验证 文件验证 上传文件到服务器指定目录,DNS解析到后访问该文件完成验证 手工DNS验证 改域名的DN ...

  9. windows 生成免费ssl证书 配置 https

    window10 + phpstudy 配置 https 首先简单的理解下https与http 1.从URL HTTP 是 HTTP:// 开头,而 HTTPS 是 HTTPs:// 开头: 2.HT ...

最新文章

  1. 零基础自学python的建议-python回顾——对零基础学者的建议(一)
  2. TCP/IP 笔记 - TCP连接管理
  3. jQuery常用的选择器
  4. Android动画模式
  5. Android通过WebView在线打开PDF文件(文中提供源码下载)
  6. .NET Core 3.0 即将结束生命周期,建议迁移 3.1
  7. 浅析 .Net Core中Json配置的自动更新
  8. 归并排序--Java
  9. python标准库之socket
  10. code的bootstrap如何有提示 vs_如何用DataFocus对Excel表中数据进行分析?
  11. GB28181国标视频平台录像存储录像回放解决方案
  12. 边沿触发是什么意思_边沿触发器的动作特点及主要特点
  13. 流媒体后视镜方案关键技术--调节后视图像显示范围
  14. 柑曼怡推出非凡特酿系列;舒肤佳健康传中国“手护”新年期待助力2022年冬奥会 | 知消...
  15. 大哥都是从小弟做起的
  16. RNN(pytorch)的维度问题——用GRU实现文本分类(参考刘二大人)
  17. 5-(4-硝基苯基)-10,15,20-三苯基卟啉NTPPH2/NTPPZn/NTPPMn/NTPPFe/NTPPNi/NTPPCu/NTPPCd/NTPPCo等金属配合物
  18. vue 嵌套表格组件_vue+element-ui实现嵌套表格导出
  19. rdp远程Windows10连接不上的解决方案
  20. av发行商_如何向发行商推销游戏

热门文章

  1. /usr/bin/python: No module named pip
  2. 英国最厉害的黑客组织,创始人竟然是中英混血儿
  3. 概率密度变换公式 雅可比矩阵_的联合概率密度函数f(x,y).ppt
  4. 基于quartz的定时任务动态启停实现分析(人人平台为例)
  5. Game - datastructure
  6. 用户变量tmp修改了怎么恢复_恢复ext4文件系统被误删的文件
  7. Vue Router 参数接收
  8. Materials studio替换原子
  9. Dynamo_修复导出EXCEL时出现的组件丢失问题
  10. 阿里用什么替代了dubbo_跨境电商一般使用什么支付方式,阿里巴巴跨境电商证有什么用...