pacproxy-https-server
Version:
pacproxy server with auto SSL certificate renew and load. 自动更新和加载SSL数字证书的加密代理服务器
134 lines (80 loc) • 4.34 kB
Markdown
# pacproxy-server
pacproxy runs in a web server 在vps服务器上运行的pacproxy加密代理
自动获取SSL数字证书, 自动加载SSL数字证书
关于pacproxy参见[pacproxy.js](https://github.com/httpgate/pacproxy.js)
## 准备
* 需要能运行nodejs的服务器, 建议选用Debian服务器
* 需要[申请一个域名](https://github.com/httpgate/pacproxy.js/blob/main/documents/About_Domain_ZH.md),并将域名指向服务器公网IP
* 需要能够临时占用服务器公网IP的80端口,或者Cloudflare管理的域名需要获取[DNS API Token](https://developers.cloudflare.com/fundamentals/api/get-started/create-token/), 其他域名可以[托管到Cloudflare](https://developers.cloudflare.com/fundamentals/setup/manage-domains/add-site/)
* 需要ssh到服务器的命令行,推荐用[Bitvise SSH Client](https://bitvise.com/ssh-client-download)
* 需要准备服务器设置文件current.site.cfg, 空白文件夹下第一次运行服务器会生成该文件样板,详情参考[样板](example.site.cfg)
## 运行
* 可运行[编译好的服务器软件](https://github.com/httpgate/resouces/tree/main/pacproxy-server) ,适合各种操作系统,笔记本和台式机
* 推荐用pm2[直接运行pacproxy-https-server的npm库](https://github.com/httpgate/resouces/tree/main/pm2_Run_Npm_Package.md)
* 也可以按以下步骤用pm2直接运行代码,运行更稳定,可及时更新软件
### 初始化服务器,并修改网站设置
```
git clone https://github.com/httpgate/pacproxy-server
cd pacproxy-server
./pacpinit.sh
```
编辑当前网站设置并按Ctrl + O保存,Ctrl + X退出
### 设置share参数
* 如果启用[pacproxy-share模块](https://github.com/httpgate/pacproxy-share)需要设置share参数, 此时website参数只能设置为true, false 或 ''
* 如果不启用CDN加速,则只需要设置根路径,如 share : ['/share_path']
* 如果启用了CDN加速,则需要将CDN域名也加上,如 share : ['/share_path', 'CDN_DOMAIN']
### 设置website参数
* current.site.cfg里的website参数可以为空'', 可以是外部网站URL, 可以是true或false
* 设置为true或false时需要先在当前文件夹下创建website文件夹:mkdir website
* 设置为true时website文件夹可放一个静态网站,或一些可下载的文件。可以用chrome浏览器访问某个网页,然后保存到website文件夹里,类型选”Webpage, Complete", 文件名为:index.html
* 设置为false时会将website显示为一个文件夹,列出website里的所有文件。此时建议设置website_auth参数,保护信息隐私
* 设置website为外部网站URL时会将该网站的内容显示到自己的网站上,此时需要留意黑客DDOS攻击,会导致自己IP因为中转DDOS攻击被该外部网站和一些CDN屏蔽。此时可设置website_auth参数, 或改为使用本地网站。
* website参数设置好后,浏览器访问: https://your.site.domain 可以显示网站的内容,也可以将一些需要分享给他人下载的文件放到website文件夹内
### 运行pacproxy服务:
```
sudo ./runserver.js
```
核对屏幕上显示出的PAC链接,如果不对则需要修改网站配置文件:
```
nano current.site.cfg
```
从浏览器访问网站,确认运行正常后 Ctrl + C 退出
### 后台运行pacproxy服务:
```
sudo pm2 start runserver.js
```
查看日志:
```
sudo pm2 logs --lines 100
```
可用pm2每天下午13点45分(举例)重启服务,清理内存:
```
sudo pm2 restart runserver --cron-restart="45 13 * * *"
```
### 停止pacproxy服务
```
sudo pm2 delete runserver
```
### 升级Github代码:
```
git checkout package.json
git pull
npm update
```
### 更新数字证书
免费数字证书现在有效期为3个月,允许过期前30天更新新证书。
新版本每次重启会在后台自动更新数字证书,用pm2每个月5日18点(举例)重启服务:
```
sudo pm2 restart runserver --cron-restart="00 18 5 * *"
```
### 如果中间做错可以删掉从头再来:
```
cd ..
rm -rf ./pacproxy-server
```
## 推荐
推荐用pacproxy安全的访问以下网站:
* 明慧网:https://www.minghui.org
* 干净世界:https://www.ganjing.com
* 神韵作品: https://shenyunzuopin.com
* 大法经书: https://www.falundafa.org