找到
1
篇与
Linux
相关的结果
-
Openwrt/Linux 启用Https,申请Lets Encrypt证书 图片 背景 HTTPS协议使用非对称加密的方式对数据进行加密,可以让数据传输变得更加安全可靠。而将HTTP协议切换成HTTPS协议,只需要增加SSL证书即可。 本文使用ACME工具来生成SSL证书,并将SSL证书部署应用于WEB服务,从而实现支持HTTPS协议的WEB服务。 ACME acme.sh 下载地址:https://github.com/acmesh-official/acme.sh 提取码: ACME主要有以下几个功能 向Let’s Encrypt申请证书 支持包括阿里云在内的多个平台,通过多种接口为域名增加TXT解析 将证书部署于web服务 自动更新证书 前提配置 1.方法1 以Cloudfare为例,获取自身的Global API Key。 2.方法2 添加管理云解析(DNS)的权限,生成API Token 图片 安装ACME 只需要一行命令就可以安装ACME $ curl https://get.acme.sh | sh 或者 $ wget -O - https://get.acme.sh | sh 安装一共包括下面几个步骤 将acme.sh脚本复制到~/.acme.sh路径下 在当前用户的SHELL环境配置文件中增加acme.sh=~/.acme.sh/acme.sh 添加一项crontab定时任务 并运行下面的命令添加相应环境变量 cd ~/.acme.sh export CF_Email="example.com" export CF_Key="GLOBAL API KEY"申请证书 注册 email ,更换成自己的邮箱 ./acme.sh --register-account -m admin@example.com 继续输入下面的命令来生成证书,记得把example.com改成自己的域名 ./acme.sh --issue --dns dns_cf -d example.com -w /etc/acme 正常情况下会提示签名成功,并打印当前的证书 图片 如果当前系统用户没有-w参数指定的webroot目录的写入权限,将导致acme.sh无法创建域名验证文件。 自动部署 自动把证书部署于WEB服务 Httpd ~/.acme.sh/acme.sh --installcert -d example.com \ --keypath /etc/uhttpd.key \ --fullchainpath /etc/uhttpd.crt \ --reloadcmd "/etc/init.d/uhttpd restart"Nginx 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"自动更新 通过crontab -l命令查看证书更新任务计划: 图片 其他指令 卸载 ./acme.sh --uninstall 查看生成的证书 ./acme.sh --list 手动更新 ./acme.sh --upgrade 其他参考 acme.sh简单教程 使用ACME部署HTTPS证书