{"id":5252,"date":"2020-03-20T11:32:00","date_gmt":"2020-03-20T03:32:00","guid":{"rendered":"https:\/\/www.ldhost.cn\/jc\/?p=5252"},"modified":"2020-03-15T17:37:35","modified_gmt":"2020-03-15T09:37:35","slug":"%e5%9c%a8linux%e6%9c%8d%e5%8a%a1%e5%99%a8%e4%b8%8a%e6%89%8b%e5%8a%a8%e5%ae%89%e8%a3%85%e5%85%8d%e8%b4%b9%e7%9a%84lets-encrypt%e5%9f%9f%e5%90%8d%e8%af%81%e4%b9%a6","status":"publish","type":"post","link":"https:\/\/www.ldhost.cn\/jc\/ot\/5252.html","title":{"rendered":"\u5728Linux\u670d\u52a1\u5668\u4e0a\u624b\u52a8\u5b89\u88c5\u514d\u8d39\u7684Let&#8217;s Encrypt\u57df\u540d\u8bc1\u4e66"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u51c6\u5907\u5de5\u4f5c<br>\nmkdir \/ root \/ letsencrypt \/ var \/ www \/ letsencrypt<br>\ncd \/ root \/ letsencrypt<br>\n\u6211\u4eec\u5c06\u4f7f\u7528acme_tiny\u5e93\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528\u4efb\u4f55\u5176\u4ed6\u5e93<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">wget https:\/\/raw.githubusercontent.com\/diafygi\/acme-tiny\/master\/acme_tiny.py<br>\n\u6211\u4eec\u751f\u6210\u4e00\u4e2a\u6807\u8bc6\u7b26\u5bc6\u94a5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">openssl genrsa 4096> \/root\/letsencrypt\/account.key<br> Nginx\u4e2d\u865a\u62df\u4e3b\u673a\u8bbe\u7f6e\u4e2d\u7684\u201c\u6dfb\u52a0\u5230<a href=\"https:\/\/www.ldhost.cn\/cnserver.html\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"\u670d\u52a1\u5668\uff08\u5728\u65b0\u7a97\u53e3\u6253\u5f00\uff09\">\u670d\u52a1\u5668<\/a>\u201d\u90e8\u5206<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">location \/.well-known\/acme-challenge\/ {<br>     \u522b\u540d\/ var \/ www \/ letsencrypt \/;<br>     try_files $ uri = 404;<br> }<br> \u6d4b\u8bd5\u4e2d<br> \u56de\u58f0\u201c\u6d4b\u8bd5\u201d >> \/var\/www\/letsencrypt\/test.txt<br> \u5e76\u5728\u6d4f\u89c8\u5668\u4e2d\u68c0\u67e5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">http:\/\/domain.com\/.well-known\/acme-challenge\/test.txt<br> \u521b\u5efa\u79c1\u94a5\uff0c\u8bf7\u6c42\u8bc1\u4e66\u5e76\u521b\u5efa\u8bc1\u4e66<br> \u751f\u6210\u79c1\u94a5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">openssl genrsa 4096&gt; \/root\/letsencrypt\/domain.com.key<br>\n\u6211\u4eec\u4f7f\u7528\u8bc1\u4e66\u7684\u8bbe\u7f6e\u521b\u5efa\u4e00\u4e2a\u6587\u4ef6\uff0c\u5728\u5176\u4e2d\u6307\u5b9a\u6211\u4eec\u7684\u7535\u5b50\u90ae\u4ef6\u4ee5\u53ca\u57df\u540d<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat &lt;&lt; EOF &gt; \/root\/letsencrypt\/domain.com.txt<br>\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ndefault_bits = 4096<br>\nprompt = no<br>\ndefault_md = sha256<br>\nreq_extensions = req_ext<br>\ndistinguished_name = dn\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">[ dn ]<br>\nC=RU<br>\nemailAddress=info@domain.com<br>\nCN = domain.com<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">[ req_ext ]<br>\nsubjectAltName = @alt_names<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">[ alt_names ]<br> DNS.1 = domain.com<br> DNS.2 = www.domain.com<br> EOF<br> \u521b\u5efa\u4e00\u4e2a\u8bf7\u6c42 <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">openssl req -new -sha256 -key \/root\/letsencrypt\/domain.com.key \\<br>\n-nodes -out \/root\/letsencrypt\/domain.com.csr \\<br>\n-config \/root\/letsencrypt\/domain.com.txt<br>\n\u5e76\u8fd0\u884c\u6211\u4eec\u4e0b\u8f7d\u7684\u5e93\u4ee5\u83b7\u53d6\u8bc1\u4e66<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">python acme_tiny.py &#8211;account-key \/root\/letsencrypt\/account.key \\<br> &#8211;csr \/root\/letsencrypt\/domain.com.csr \\<br> &#8211;acme-dir \/ var \/ www \/ letsencrypt \/> \/root\/letsencrypt\/domain.com.crt<br> \u66f4\u65b0\u811a\u672c<br> \u53ef\u4ee5\u5c06\u6b64\u811a\u672c\u6dfb\u52a0\u5230cron\u8ba1\u5212\u7a0b\u5e8f\u4e2d\uff0c\u4ee5\u81ea\u52a8\u63a5\u6536\u8bc1\u4e66\u3002<br> cat &lt;&lt; EOF > renew_cert.sh<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">#!\/bin\/bash<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">python acme_tiny.py &#8211;account-key \/root\/letsencrypt\/account.key \\<br>\n&#8211;csr \/root\/letsencrypt\/domain.com.csr \\<br>\n&#8211;acme-dir \/var\/www\/letsencrypt\/ &gt; \/root\/letsencrypt\/domain.com.new || exit<br>\nmv \/root\/letsencrypt\/domain.com.new \/root\/letsencrypt\/domain.com.crt<br>\nservice nginx reload<br>\nEOF<\/p>\n<div><img decoding=\"async\" src=\"https:\/\/www.ldhost.cn\/images\/ad-845-3.png\" alt=\"\u56fe\u7247\u63cf\u8ff0\" \/><\/div>","protected":false},"excerpt":{"rendered":"<p>\u51c6\u5907\u5de5\u4f5c mkdir \/ root \/ letsencrypt \/ var \/ www \/ letsencrypt cd \/ root \/ letsencrypt \u6211\u4eec\u5c06\u4f7f\u7528acme_tiny\u5e93\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528\u4efb\u4f55\u5176\u4ed6\u5e93 wget https:\/\/raw.githubusercontent.com\/diafygi\/acme-tiny\/master\/acme_tiny.py \u6211\u4eec\u751f\u6210\u4e00\u4e2a\u6807\u8bc6\u7b26\u5bc6\u94a5 openssl genrsa 4096> \/root\/letsencrypt\/account.key Nginx\u4e2d\u865a\u62df\u4e3b\u673a\u8bbe\u7f6e\u4e2d\u7684\u201c\u6dfb\u52a0\u5230\u670d\u52a1\u5668\u201d\u90e8\u5206 location \/.well-known\/acme&#8230; <a href=\"https:\/\/www.ldhost.cn\/jc\/ot\/5252.html\" class=\"readmore\">\u9605\u8bfb\u5168\u6587<span class=\"screen-reader-text\">\u5728Linux\u670d\u52a1\u5668\u4e0a\u624b\u52a8\u5b89\u88c5\u514d\u8d39\u7684Let&#8217;s Encrypt\u57df\u540d\u8bc1\u4e66<\/span><span class=\"fa fa-angle-double-right\" aria-hidden=\"true\"><\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"class_list":["post-5252","post","type-post","status-publish","format-standard","hentry","category-ot","content-layout-excerpt-thumb"],"_links":{"self":[{"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/posts\/5252","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/comments?post=5252"}],"version-history":[{"count":1,"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/posts\/5252\/revisions"}],"predecessor-version":[{"id":5253,"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/posts\/5252\/revisions\/5253"}],"wp:attachment":[{"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/media?parent=5252"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/categories?post=5252"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ldhost.cn\/jc\/wp-json\/wp\/v2\/tags?post=5252"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}