技术标签: python acme
下载 acme-tiny
创建用户私钥和域名私钥 "创建用户私钥和域名私钥")创建用户私钥和域名私钥
mkdir -p /etc/ssl/letsencrypt/
cd /etc/ssl/letsencrypt/
openssl genrsa 4096 > account.key
openssl genrsa 4096 > domain.key
生成域名 csr 文件 "生成域名 csr 文件")生成域名 csr 文件
单域名
openssl req -new -sha256 -key domain.key -subj "/CN=www.yoursite.com" > domain.csr
多域名
ln -s /etc/pki/tls/openssl.cnf /etc/ssl/openssl.cnf
openssl req -new -sha256 -key domain.key -subj "/" -reqexts SAN -config domain.csr
配置 Web 站点的 challenge 文件 "配置 Web 站点的 challenge 文件")配置 Web 站点的 challenge 文件
mkdir -p /var/www/challenges/
#example for nginx
server {
listen 80;
server_name yoursite.com www.yoursite.com;
location /.well-known/acme-challenge/ {
alias /var/www/challenges/;
try_files $uri =404;
}
...the rest of your config
}
生成 signed 文件 "生成 signed 文件")生成 signed 文件
wget -c https://raw.githubusercontent.com/yangphere/acme-tiny/master/acme_tiny.py --no-check-certificate
python acme_tiny.py --account-key /etc/ssl/letsencrypt/account.key --csr /etc/ssl/letsencrypt/domain.csr --acme-dir /var/www/challenges/ > /etc/ssl/letsencrypt/signed.crt
生成证书链 "生成证书链")生成证书链
v1 版,兼容性差点
wget -O - https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem > /etc/ssl/letsencrypt/intermediate.pem
cat /etc/ssl/letsencrypt/signed.crt /etc/ssl/letsencrypt/intermediate.pem > /etc/ssl/letsencrypt/chained.pem
建议使用 v3 版
wget -O - https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem > /etc/ssl/letsencrypt/intermediate.pem
cat /etc/ssl/letsencrypt/signed.crt /etc/ssl/letsencrypt/intermediate.pem > /etc/ssl/letsencrypt/chained.pem
生成 dh 证书 "生成 dh 证书")生成 dh 证书
openssl dhparam -out dhparam.pem 2048
配置 nginx 使 SSL 证书生效 "配置 nginx 使 SSL 证书生效")配置 nginx 使 SSL 证书生效
server {
listen 443;
server_name yoursite.com, www.yoursite.com;
ssl on;
ssl_certificate /etc/ssl/letsencrypt/chained.pem;
ssl_certificate_key /etc/ssl/letsencrypt/domain.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA;
ssl_session_cache shared:SSL:50m;
ssl_dhparam /etc/ssl/letsencrypt/dhparam.pem;
ssl_prefer_server_ciphers on;
...the rest of your config
}
server {
listen 80;
server_name yoursite.com, www.yoursite.com;
location /.well-known/acme-challenge/ {
alias /var/www/challenges/;
try_files $uri =404;
}
...the rest of your config
}
重启 nginx 服务 "重启 nginx 服务")重启 nginx 服务
service nginx reload
自动生成 SSL 证书 "自动生成 SSL 证书")自动生成 SSL 证书
由于 Let’s Encrypt 的证书只有 90 天的有效期,需要使用系统每个月生成一次。编辑 renew_cert.sh 文件
以下是 v1 版,兼容性差点
#!/usr/bin/shpython /etc/ssl/letsencrypt/acme_tiny.py --account-key /etc/ssl/letsencrypt/account.key --csr /etc/ssl/letsencrypt/domain.csr --acme-dir /var/www/challenges/ > /etc/ssl/letsencrypt/signed.crt || exit
wget -O - https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem > /etc/ssl/letsencrypt/intermediate.pem
cat /etc/ssl/letsencrypt/signed.crt /etc/ssl/letsencrypt/intermediate.pem > /etc/ssl/letsencrypt/chained.pem
service nginx reload
建议使用 v3 版
#!/usr/bin/shpython /etc/ssl/letsencrypt/acme_tiny.py --account-key /etc/ssl/letsencrypt/account.key --csr /etc/ssl/letsencrypt/domain.csr --acme-dir /var/www/challenges/ > /etc/ssl/letsencrypt/signed.crt || exit
wget -O - https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem > /etc/ssl/letsencrypt/intermediate.pem
cat /etc/ssl/letsencrypt/signed.crt /etc/ssl/letsencrypt/intermediate.pem > /etc/ssl/letsencrypt/chained.pem
service nginx reload
添加可执行权限
chmod +x renew_cert.sh
编辑 crontab 文件
crontab -e
加入如下内容
0 0 1 * * /etc/ssl/letsencrypt/renew_cert.sh 2>> /var/log/acme_tiny.log
重启 crontab 服务
service crond restart
测试一下 SSL 质量 "测试一下 SSL 质量")测试一下 SSL 质量
文章浏览阅读2.4k次。===============同步捕获,var http = require('http');var fs = require('fs');var url = require('url');var routes=require('./models/routes');http.createServer(function (request, response) { var pathnam..._node js 报symbol miss
文章浏览阅读1.8k次,点赞2次,收藏8次。开源成语答题小程序源码采用云开发,无需搭建服务器,无需域名即可使用云端能力。目前成语答题小程序集成微信banner广告,视频广告,插屏广告,激励视频广告等功能,方便运营者赚取广告收益.。成语答题小程序一直被很多人休闲娱乐,成语小秀才更是占据整个小程序榜单首位,成语答题小程序简单又可以学习,让很多人都钟情于它。本代码有几大特点:成语答题小程序源码开发过程中考虑到云开发的免费额度,所以开发成语答题小程序设计中以减少数据请求次数,减少云函数调用为特点,用更少的调用次数服务更多的用户。让免费额度可以服务_成语答题赚小程序v1.1.2前后端源码+小程序前端
文章浏览阅读163次。windows下面,先去下载https://github.com/Jay-Goo/ProtectedApkResignerForWalle,电脑要安装python的系统。修改channel中的渠道信息为自己需要的,修改config中的信息,如下:config的配置#!/usr/bin/python#-*-coding:utf-8-*-#keystore信息#Windows 下路径分割线请注意使用\..._360加固 多渠道 dex不一致
文章浏览阅读5.3k次,点赞15次,收藏111次。C++习题03_类和对象习题03(01)计算器类题目描述下面是一个计算器类的定义,请完成该类成员函数的实现,并编写main()。class Counter{public: Counter(int num); void increament(); //给原值增1 void decrement(); //给原值减1 int getValue(); //取得计数器值 void print(); //显示计数private: int value;}; _构建一个book类,有四个私有数据成员
文章浏览阅读8.1k次,点赞4次,收藏10次。eclipse中运行项目问题提示信息从上图可看出#号第一条为:没有足够的内存让Java运行时环境继续运行。解决方法:修改Run Configurationsmaven项目在代码上右键,依次点击“Run As”->“Run Configurations”,在Arguments参数中的“VM arguments:”中填入如下值即可。-Xms64m -Xmx1..._eclipse there is insufficient memory for the java runtime environment to con
文章浏览阅读5.1k次,点赞4次,收藏12次。问题描述:在命令行切入到logs文件所在的盘后,输入tensorboard --logdir=D:\PycharmProjects\learn_tf\logs,出现如下命令:D:\>tensorboard --logdir=D:\PycharmProjects\learn_tf\logsTensorBoard 1.12.1 at http://HN-75P35Q2:6006 (Pres..._tensorboard换了地址但是浏览器显示的还是之前的
文章浏览阅读471次。一、认识FineUploader的功能:进入示例网站:https://fineuploader.com/demos.html#basic-setup; 二、准备相关的js,css Build Fine Uploader yourself from the GitHub repogit clone https://github.com/FineUploader/fine-up..._fineuploader包含demo和server端和最新的js
文章浏览阅读1.9k次。ssh-keygen -f “/home/xt/.ssh/known_hosts” -R 145.192.1.20_ssh-keygen -f
文章浏览阅读9.7k次,点赞8次,收藏22次。1网络广播:网络广播是指一个节点同时向相同域中的其它所有节点传输数据包的过程。例如有4台主机, 分别为1号主机,2号主机,3号主机,4号主机. 假如1号主机 要给4号主机发数据! 如果是用广播传输方法的话! 那么4台主机都会收到数据包! 4台主机 在收数据包的时候 会查看数据包里的目标IP地址是不是自已的,是的话就收下,不是就不收!2.ARP广播原理:(1)A(135.24.25..._arp广播
文章浏览阅读6.7k次,点赞2次,收藏3次。CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);// 有些硬件会自动八分频 导致后面的计算出现错误_stm8s输出pwm频率不对
文章浏览阅读4.4k次。先标记一下, 后面会详细整理:用DbVisualizer来直接使用ElasticSearch, 第一件事就是破解x-pack-core-6.4.0.不然你用Dbvis连接es会报错:dbvisualizer current license is non-compliant for [jdbc]dbvisualizer current license is non-complian..._x-pack-sql-jdbc-6.4.0
文章浏览阅读311次。开篇词:这些年受过的PPT的苦1 有一种头型叫地中海程序猿在外人看来从来都是一个神秘的团体,一提起程序猿,在大多数人眼里,程序猿的智商是这个样子的:程序员的工作环境是这个样子的:那些都是别人眼里的程序猿,下面才是程序员真实的样子:所以程序猿的御用贴图是这个样子的:好吧,这明显和大家心目中的大神形象完全不符,在大家心中,没有他们搞不定的事情,除非?除非什么?除非没有女朋友?不是,..._博客日志开版词ppt