如何申请免费好用的HTTPS证书Let's

csr文件  时间:2021-04-03  阅读:()
EncryptLet'sEncrypt是一款免费、自动化、开放的证书签发服务(Let'sEncryptisanewCertificateAuthority:It'sfree,automated,andopen),它由非营利的网际网路安全研究组织ISRG(InternetSecurityResearchGroup,互联网安全研究小组)提供营运服务,并得到EFF、Mozilla、Cisco、Akamai、IdenTrust与密西根大学研究人员的支持,发展十分迅猛.
Let'sEncrypt目的在于推动全球所有的网站都使用HTTPS加密传输.
Let'sEncrypt已于2015年12月3日进入公测(PublicBeta),所有网站都可以免费获取Let'sEncrypt的证书.
如果想及时了解Spark、Hadoop或者Hbase相关的文章,欢迎关注微信公共帐号:iteblog_hadoop本文将介绍如何为个人的网站申请Let'sEncrypt的HTTPS证书.
在申请证书的时候,本博客使用到的是acme-tiny工具,可以参见https://github.
com/diafygi/acme-tiny.
当然你也可以使用Let'sEncrypt官方提供的certbot-auto工具来申请证书.
创建Let'sEncrypt账号先在服务器的创建一个文件夹,用于存放这里生产的所有文件,本博客使用到的目录是/data/web/ssl/,我们进入这个文件夹,然后使用下面命令创建一个RSA私钥用于Let'sEncrypt识别你的身份:iteblog$cd/data/web/ssl/iteblog$opensslgenrsa4096>account.
keyacme-tiny工具还可以使用之前生成的Let'sEncryptkey来创建RSA私钥,这里我就不介绍了.
为你的域名创建CSR文件1/5Let'sEncrypt的证书签发过程使用的就是ACME协议,而ACME协议要求用户提交一个CSR文件给它,创建域名RSA私钥和上面创建账号的RSA私钥用到的命令一样,如下:iteblog$opensslgenrsa4096>domain.
key但是我们需要注意的是,一定不要使用上面创建好的account.
key来当做domain.
key!
有了RSA私钥之后,我们就可以创建CSR文件了,一般域名都有www和不带www的,我们在创建CSR文件的时候全部写进去:iteblog$opensslreq-new-sha256-keydomain.
key-subj"/"-reqextsSAN-configdomain.
csr把上面的www.
iteblog.
com和iteblog.
com替换成你的域名即可.
如果提示找不到/etc/ssl/openssl.
cnf文件,那么看看/usr/local/openssl/ssl/openssl.
cnf文件是否存在;如果还是不存在,那你运行find/-name"openssl.
cnf"命令看是否可以找到;如果还是找不到,那你自己Google(Google翻墙用《Tunnello:免费的浏览器翻墙插件》)找下原因的.
配置验证服务在为域名签发证书的时候Let'sEncrypt需要确定你对这个域名拥有所有权,Let'sEncrypt的方法是在你的服务器上生成一个随机验证文件,再通过创建CSR时指定的域名访问,如果可以访问则表明你对这个域名有控制权.
我们可以如下操作:1、选中一个目录用于创建存放验证文件的目录,本博客使用的是/date/web/iteblog/www/challenges/,当然,这个目录你可以根据你自己实际情况设置:iteblog$mkdir-p/date/web/iteblog/www/challenges/2、在你的Nginx配置文件里面加入以下内容:2/5server{listen80;server_nameiteblog.
comwww.
iteblog.
com;location/.
well-known/acme-challenge/{alias/date/web/iteblog/www/challenges/;try_files$uri=404;}.
.
.
therestofyourconfig}设置完上面的配置之后需要重启nginx,那么如何验证上面的设置是否起作用我们只要在/date/web/iteblog/www/challenges目录下随便创建一个文件比如iteblog.
txt,然后我们通过/.
well-known/acme-challenge/iteblog.
txtURL访问那个文件,如果能够访问的话说明你配置正确;否则说明你配置错误!
这步一定要配置正确,否则下面步骤将无法进行下去.
获取网站证书上面步骤配置好之后,现在我们使用acme_tiny.
py来获取网站证书,我们先下载acme_tiny.
py脚本到/data/web/ssl/目录:iteblog$wgethttps://raw.
githubusercontent.
com/diafygi/acme-tiny/master/acme_tiny.
py然后执行以下命令获取网站证书:iteblog$pythonacme_tiny.
py--account-key.
/account.
key--csr.
/domain.
csr--acme-dir/date/web/iteblog/www/challenges/>.
/signed.
crt如果一切正常,当前目录下就会生成一个signed.
crt,这就是申请好的证书文件.
但是按照上面步骤运行不出意外的话我们肯定会遇到以下的异常:iteblog$pythonacme_tiny.
py--account-key.
/account.
key--csr.
/domain.
csr--acme-dir/date/web/iteblog/www/challenges/>.
/signed.
crtParsingaccountkey.
.
.
ParsingCSR.
.
.
3/5Registeringaccount.
.
.
Alreadyregistered!
Verifyingwww.
iteblog.
com.
.
.
Traceback(mostrecentcalllast):File"acme_tiny.
py",line198,inmain(sys.
argv[1:])File"acme_tiny.
py",line194,inmainsigned_crt=get_crt(args.
account_key,args.
csr,args.
acme_dir,log=LOGGER,CA=args.
ca)File"acme_tiny.
py",line123,inget_crtwellknown_path,wellknown_url))ValueError:Wrotefileto/date/web/iteblogssl/www/challenges/LQJxTnLALp0ef3kB3-63tT6J0QEqNrKa35QtXoBBFXU,butcouldn'tdownload/.
well-known/acme-challenge/LQJxTnLALp0ef3kB3-63tT6J0QEqNrKa35QtXoBBFXU网上有人说这是因为你的域名DNS服务器是在国内导致的,这个是错误的!
因为我把我域名DNS迁移到国外,等DNS服务器全部生效之后,还是遇到上面的异常,后来我Google了一番,找了很多英文资料,后面终于找到了原因!
是因为acme_tiny.
py脚本的问题导致的,我们可以编辑acme_tiny.
py脚本,注释掉下面的全部内容:try:resp=urlopen(wellknown_url)resp_data=resp.
read().
decode('utf8').
strip()assertresp_data==keyauthorizationexcept(IOError,AssertionError):os.
remove(wellknown_path)raiseValueError("Wrotefileto{0},butcouldn'tdownload{1}".
format(wellknown_path,wellknown_url))然后保存再次获取网站证书:iteblog$pythonacme_tiny.
py--account-key.
/account.
key--csr.
/domain.
csr--acme-dir/date/web/iteblogssl/www/challenges/>.
/signed.
crtParsingaccountkey.
.
.
ParsingCSR.
.
.
Registeringaccount.
.
.
Alreadyregistered!
Verifyingwww.
iteblog.
com.
.
.
www.
iteblog.
comverified!
Verifyingiteblog.
com.
.
.
iteblog.
comverified!
4/5Signingcertificate.
.
.
Certificatesigned!
如果你看到如上的内容,那么恭喜你,你的网站证书已经成功获取了!
这时候我们的/data/web/ssl/目录下应该有如下几个文件了[iteblog@iteblog.
comssl]$lltotal28-rw-r--r--1iteblogiteblog3243Aug509:21account.
key-rw-r--r--1iteblogiteblog9159Aug509:33acme_tiny.
py-rw-r--r--1iteblogiteblog1635Aug509:22domain.
csr-rw-r--r--1iteblogiteblog3243Aug509:21domain.
key-rw-r--r--1iteblogiteblog2163Aug509:34signed.
crt到目前为止我们已经成功地申请到Let'sEncrypt的HTTPS证书了,对于Nginx用户,我们还需要把Let'sEncrypt的中间证书加入到刚刚生成的signed.
crt文件中,具体操作如下:iteblog$wget-O-https://letsencrypt.
org/certs/lets-encrypt-x3-cross-signed.
pem>intermediate.
pemiteblog$catsigned.
crtintermediate.
pem>chained.
pem上面申请完证书之后,我们到《在Nginx中使用Let'sEncrypt免费证书配置HTTPS》文章里面查看如何在nginx配置HTTPS.
本博客文章除特别声明,全部都是原创!
原创文章版权归过往记忆大数据(过往记忆)所有,未经许可不得转载.
本文链接:【】()PoweredbyTCPDF(www.
tcpdf.
org)5/5

小白云 (80元/月),四川德阳 4核2G,山东枣庄 4核2G,美国VPS20元/月起三网CN2

小白云是一家国人自营的企业IDC,主营国内外VPS,致力于让每一个用户都能轻松、快速、经济地享受高端的服务,成立于2019年,拥有国内大带宽高防御的特点,专注于DDoS/CC等攻击的防护;海外线路精选纯CN2线路,以确保用户体验的首选线路,商家线上多名客服一对一解决处理用户的问题,提供7*24无人全自动化服务。商家承诺绝不超开,以用户体验为中心为用提供服务,一直坚持主打以产品质量用户体验性以及高效...

IonSwitch:$1.75/月KVM-1GB/10G SSD/1TB/爱达荷州

IonSwitch是一家2016年成立的国外VPS主机商,部落上一次分享的信息还停留在2019年,主机商提供基于KVM架构的VPS产品,数据中心之前在美国西雅图,目前是美国爱达荷州科德阿伦(美国西北部,西接华盛顿州和俄勒冈州),为新建的自营数据中心。商家针对新数据中心运行及4号独立日提供了一个5折优惠码,优惠后最低1GB内存套餐每月仅1.75美元起。下面列出部分套餐配置信息。CPU:1core内存...

UCloud新人优惠中国香港/日本/美国云服务器低至4元

UCloud优刻得商家这几年应该已经被我们不少的个人站长用户认知,且确实在当下阿里云、腾讯云服务商不断的只促销服务于新用户活动,给我们很多老用户折扣的空间不多。于是,我们可以通过拓展选择其他同类服务商享受新人的福利,这里其中之一就选择UCloud商家。UCloud服务商2020年创业板上市的,实际上很早就有认识到,那时候价格高的离谱,谁让他们只服务有钱的企业用户呢。这里希望融入到我们大众消费者,你...

csr文件为你推荐
站酷zcool站酷zcool字体下载后怎么安装到PS中vc组合有一首歌好像是什么昆虫组合?跟青春有关好像。叫什么了www.4411b.com难道那www真的4411B坏了,还是4411b梗换com鑫域明了地陷裂口地陷是由什么原因引起的陈嘉垣大家觉得陈嘉桓漂亮还是钟嘉欣漂亮?同一ip网站如何用不同的IP同时登陆一个网站同ip站点同ip站点很多有没有影响?www.baitu.com韩国片爱人.欲望的观看地址ip查询器查看自己IP的指令woshiheida这个左下角水印woshiheida的gif出处在哪呢?急!!!!!
187邮箱 westhost lunarpages rackspace 鲜果阅读 windows2003iso 建站代码 大容量存储 域名转向 刀片服务器的优势 工信部icp备案号 亚马逊香港官网 smtp虚拟服务器 小夜博客 hdroad nnt phpinfo 塔式服务器 linux服务器系统 建站行业 更多