搭建 HNet 在线代理 作者: Hogwarts 发布于: 2023-04-17 更新于: 2023-07-16 分类: 默认分类 用caddy和nginx反代google会有被墙的网站打不开的痛苦。 HNet仅仅是在不具备安装翻墙软件的环境中,解决临时翻墙上网的一种反代技术而已。 HNet模式不支持chatgpt和套了CF5秒盾的网站。 #一、安装运行环境node和npm apt/yum安装的版本过低,需要手动安装。 node版本需要16以上,推荐TLS版本。 ##1.1 下载 wget https://nodejs.org/dist/v18.16.0/node-v18.16.0-linux-x64.tar.gz #下载 tar -xvf node-v18.16.0-linux-x64.tar.gz #解压 mv node-v18.16.0-linux-x64 nodejs #重命名 ##1.2 通过软连接放入环境变量 ln -sf /root/nodejs/bin/npm /usr/local/bin/npm ln -sf /root/nodejs/bin/node /usr/local/bin/node ##1.3 查看版本 node --version npm --version #二、安装 HNet 文件 ##2.1 下载 git clone -b v2 https://github.com/Hideipnetwork/hideipnetwork-web.git ##2.2 安装并试启动 cd hideipnetwork-web npm install npm run start ##2.3 可能显示npm版本升级提升 #提示 npm notice New minor version of npm available! 9.5.1 -> 9.6.4 npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.6.4 npm notice Run npm install -g npm@9.6.4 to update! #按提示操作即可 npm install -g npm@9.6.4 ##2.4 自定义样式 自定义标题、图标以及主页hnet web的样式,自行修改 `/public/assets`里的js文件。 #三、安装 PM2 进程管理 PM2是node进程管理工具 #安装PM2 npm i pm2 -g #通过软链接添加到环境变量 ln -s /root/nodejs/bin/pm2 /usr/local/bin/ #查看是否可用 pm2 --version #进入hnet文件夹 cd /root/hideipnetwork-web #启动hnet npm install pm2 start index.mjs --name HNet #查看hnet是否正常启动运行 lsof -i:56559 #PM2设置开机自启已启动的程序 pm2 save pm2 startup #PM2查看运行情况 pm2 list #四、Nginx反代配置 location / { # proxy_busy_buffers_size 512k; # proxy_buffers 4 512k; # proxy_buffer_size 256k; proxy_pass http://127.0.0.1:56559; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'Upgrade'; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; } #五、存在的小问题 ##5.1 安装目录问题 nodejs和pm2安装在root根目录下,好似不妥。水平太低,还未改变。 ##5.2 Nginx 反代问题 nginx反代后,域名暴露在公网,有被墙可能。 最好加一个页面认证吧,具体操作待续。 #六、抄录地址 [自建在线云浏览器](https://blog.tanglu.me/web-browser/ "自建在线云浏览器") [hideipnetwork-web Github](https://github.com/Hideipnetwork/hideipnetwork-web/ "hideipnetwork-web") 标签: hnet, node, npm, pm2