<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[阿Tim日志]]></title> 
<link>https://atim.cn/index.php</link> 
<description><![CDATA[专业的php开发者.开发团队的带队人]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[阿Tim日志]]></copyright>
<item>
<link>https://atim.cn/certbot-case/</link>
<title><![CDATA[使用certbot自动生成证书]]></title> 
<author>bkkkd &lt;partybase@gmail.com&gt;</author>
<category><![CDATA[开发应用]]></category>
<pubDate>Sat, 20 Jan 2018 09:44:46 +0000</pubDate> 
<guid>https://atim.cn/certbot-case/</guid> 
<description>
<![CDATA[ 
	现在已经是https时代,趋势是使用https替换http.这样会更安全.<br/>之前使用aliyun或者腾讯云也可以申请证书,然后手动配置,但经常会忘记更新.<br/>所以采用certbot让服务器可以自动进行更新.<br/><div class="code"><br/># 下载certbot的脚本,也有其它安装方法,但我个人试过,这个是最简单的方法.<br/>wget https://dl.eff.org/certbot-auto<br/>chmod a+x ./certbot-auto<br/>mv ./certbot-auto /usr/local/bin/certbot<br/># 注册信息<br/>certbot&nbsp;&nbsp;register --agree-tos -m name@yourdomail.com<br/><br/># 创建证书并验证,但最方便的是使用 standalone方式, 但问题就是原来的web服务需要先关闭.<br/># 其实一共有三个方式<br/># --standalone&nbsp;&nbsp; 使用脚本的服务器进行验证<br/># --webroot 基于现有网站根目录进行验证<br/># --manual&nbsp;&nbsp; 手动验证,(我没有试过这个方式)<br/><br/>certbot certonly --standalone -d atim.cn -d www.atim.cn<br/><br/></div><br/>验证完成后,会显示证书的路径.<br/>在/etc/letsencrypt/live/ 目录下生成对应域名的目录,证书都在目录里面.<br/>然后修改nginx站点配置(apache的配置自己去找)<br/><div class="code"><br/>server &#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;listen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 443;<br/>&nbsp;&nbsp;&nbsp;&nbsp;server_name&nbsp;&nbsp;atim.cn *.atim.cn;<br/>&nbsp;&nbsp;&nbsp;&nbsp;# SSL<br/>&nbsp;&nbsp;&nbsp;&nbsp;ssl on;<br/>&nbsp;&nbsp;&nbsp;&nbsp;ssl_certificate /etc/letsencrypt/live/atim.cn/fullchain.pem;<br/>&nbsp;&nbsp;&nbsp;&nbsp;ssl_certificate_key /etc/letsencrypt/live/atim.cn/privkey.pem;<br/>&nbsp;&nbsp;&nbsp;&nbsp;location ~ .* &#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proxy_pass&nbsp;&nbsp; http://webserver;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proxy_set_header Host $host;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proxy_set_header X-Real-IP $remote_addr;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&#125;<br/></div><br/>主要是就增加这三句<br/><div class="code"><br/>&nbsp;&nbsp;&nbsp;&nbsp;ssl on;<br/>&nbsp;&nbsp;&nbsp;&nbsp;ssl_certificate /etc/letsencrypt/live/atim.cn/fullchain.pem;<br/>&nbsp;&nbsp;&nbsp;&nbsp;ssl_certificate_key /etc/letsencrypt/live/atim.cn/privkey.pem;<br/></div><br/>重启服务器就好了.<br/>最后就是编写定时任务自动更新证书了(vim的使用方法可网上找)<br/><div class="code">crontab -e</div><br/>增加以下代码<br/><div class="code"><br/>38 3 20 */2 * /usr/local/bin/certbot renew --pre-hook &quot;systemctl stop nginx.service&quot; --post-hook &quot;systemctl start nginx.service&quot;<br/></div><br/>其中 --pre-hook 和-- post-hook分别是前置命令和后置命令,详细可以通过查看.由于使用了certbot内置服务器进行验证,所以需要停止nginx更新完成再启动<br/><div class="code">certbot --help renew</div><br/>
]]>
</description>
</item><item>
<link>https://atim.cn/certbot-case/#blogcomment</link>
<title><![CDATA[[评论] 使用certbot自动生成证书]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://atim.cn/certbot-case/#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>