EtherDream / jsproxy

An online proxy based on ServiceWorker
MIT License
9.32k stars 3.61k forks source link

【基于宝塔安装】【傻瓜教程】使用自建域名,部署自建证书 #69

Open chen19870509 opened 5 years ago

chen19870509 commented 5 years ago

前置条件

一键部署平台 测试域名可访问

目标1

自建域名可访问

假设自建域名为 jsproxy.test.com 在域名管理中配置域名指向vps ip jsproxy.test.com >42.42.42.42

42.42.42.42为公网IP

验证

确定https://jsproxy.test.com:8443可以打开网页 目标1完成

目标2

证书生效

阿里云生成Symantec1年免费证书,下载nginx版

不要问我为什么不用官方文档的方法,我整不来

注意,文件名称为pem和key

上传至下面位置 /home/jsproxy/server/cert/1

1为新建文件夹,是目录

解压缩得到2个文件 简化文件名称 ecc.pem ecc.key

添加到cert.conf配置文件中 编辑文件 ~/server/cert/cert.conf

listen 8443 ssl http2; ssl_certificate cert/1/ecc.cer; ssl_certificate_key cert/1/ecc.key;

cert/1/ 文件夹存放测试域名相关的证书

一键部署自动申请的域名

完成以上操作后,切记一定要重载 ./run.sh reload 如果不重载,配置不会生效

参考文件为https://github.com/EtherDream/jsproxy/blob/master/docs/cert-manual.md

注意的地方有2个

一、 如果文件的所有人不是jsproxy,可能会操作不下去 所以一定要在root的权限下变更所有人,然后执行操作

chown jsproxy 1.pem

1.pem为目录或文件名

二、 如果配置没生效,但确定配置没有问题的情况下

请在访客模式、无痕窗口下运行,或者F5强制刷新

因为缓存的缘故,可能配置生效但是前端不显示

实在不会就关闭所有窗口,如果访客模式或者无痕窗口模式下有窗口没有关闭,前端会一直显示缓存

至此,测试域名及正式域名都可以访问 完毕

chen19870509 commented 5 years ago

[浏览器] --- https ---> [验证证书] --- ok ---> [https] 首先确定域名可用 其次保障证书可用 需求达成

宝塔面板可以和jsproxy共存

在实际实施中的作用仅仅为文件操作,无其他功能

chen19870509 commented 5 years ago

说一下对平台的理解,未必对,欢迎指正 不需要nginx支持,也不需要安装,支持共存 域名只要指向,8443端口就可以访问 如果想修改8443端口为其他端口,以下操作 编辑/server/cert/cert.conf listen 8443 ssl http2;

8443变更为想要的端口

此时域名操作已完成,可以正常访问平台 但是由于没有证书,导致平台无法正常工作,导入证书,重启平台后 正常。。 献给其他的菜鸟。哈哈

chen19870509 commented 5 years ago

最后感谢作者带来如此好的作品。。 虽然还有好多功能点没做。但是基本功能已经很棒棒了 感恩

WXpiero commented 5 years ago

没看出来宝塔面板在你的步骤里起啥作用啊。。。。不过话说你这个该发到wiki里吧

ancct commented 5 years ago

最后感谢作者带来如此好的作品。。 虽然还有好多功能点没做。但是基本功能已经很棒棒了 感恩

BT面板安装个人感觉挺好的,但是能不能附图另开一贴,无图萌新看不懂啊