orlog 发表于 2017-12-21 15:36:31

个人网站部署策略(二) - 反代端部署https

原文链接: http://gaoit.de/a/3

实际上https并不是必须的,针对这个我单独吐过槽 http://gaoit.de/a/1 , 但这里也顺便写一下它的部署吧。
(请别忘了将下文的mjj.party替换成你自己的网站域名)

接上一篇的 http://hostloc.wiki/thread-415706-1-1.html ,反代网站建好以后,继续输入命令:
curl https://get.acme.sh | sh
(如果这一步出错那么先apt-get install -y curl)
然后source ~/.bashrc 就装好了acme,我们用它来签发证书

建一个临时的网站目录 mkdir -p /www/mjj.party
编辑我们的反代网站配置文件:
vi /etc/nginx/sites-enabled/mjj.party
进入编辑器后光标移动到access_log off这行,按o,在这行下面粘贴插入以下内容:
      location /.well-known {
            alias /www/mjj.party/.well-known;
      }
然后esc、输入:wq回车(保存退出)

重启nginx使修改生效 service nginx restart

签发证书
acme.sh --issue -d mjj.party -d www.mjj.party -w /www/mjj.party
看到success字样就是成功了
再建个目录 mkdir /www/ssl
安装证书
acme.sh --installcert -d mjj.party -d www.mjj.party --keypath /www/ssl/mjj.party.key --fullchainpath /www/ssl/mjj.party.key.pem --reloadcmd "service nginx reload"

然后 openssl dhparam -out /www/ssl/dhparam.pem 2048
(如果机器配置低,这一步可能执行时间有些久,耐心等候)

再次修改网站配置文件 vi /etc/nginx/sites-enabled/mjj.party
进入编辑器后光标移动到 listen 80; 这行,按o,在下面一行粘贴插入
      listen 443;
按esc,光标再移动到最后一个}的上一行按o(就是在server这个大括号里添加内容)
粘贴入以下
      ssl on;
      ssl_certificate /www/ssl/mjj.party.key.pem;
      ssl_certificate_key /www/ssl/mjj.party.key;
      ssl_dhparam /www/ssl/dhparam.pem;
      #add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
如果想hsts强制开启https那么就去掉最后那个注释符#,不过我非常不建议这样做

按esc 输入:wq回车保存退出
service nginx restart
结束

可以顺便检查下crontab里是否已成功添加了定期重签任务:
crontab -l
看到有acme的就对了

adu 发表于 2017-12-21 15:38:28

隔壁套路哥 发表于 2017-12-21 15:39:23

:lol

orlog 发表于 2017-12-21 15:40:42

adu 发表于 2017-12-21 15:38
感谢分享
步骤很详细
但感觉好麻烦

我觉得还好吧,就是顺便给小白朋友们说明了每句命令的作用。所以文字比较多
实际上就那几步 操作下来不费多少时间

优秀的苦瓜 发表于 2017-12-21 15:40:58

左手写爱 发表于 2017-12-21 15:52:47

:lol这个就光看看了楼主的教程1已经收藏了

maiawpyg 发表于 2017-12-21 15:56:03

要是反代 https呢 应该怎么弄 比如1.com 反带百度

orlog 发表于 2017-12-21 16:01:43

maiawpyg 发表于 2017-12-21 15:56
要是反代 https呢 应该怎么弄 比如1.com 反带百度

应该只要把proxy_pass 后边参数改成https就行了吧。。。
这个我自己没试过不很确定

maiawpyg 发表于 2017-12-21 16:34:47

orlog 发表于 2017-12-21 16:01
应该只要把proxy_pass 后边参数改成https就行了吧。。。
这个我自己没试过不很确定
...

还有SSL证书呢 不知道啥位置

orlog 发表于 2017-12-21 16:37:35

maiawpyg 发表于 2017-12-21 16:34
还有SSL证书呢 不知道啥位置

额 我们中有个人理解错了?反代源网站应该是不需要证书的
你可能是要在反代服务器端上https吧
页: [1] 2
查看完整版本: 个人网站部署策略(二) - 反代端部署https