看到某商家销售1.5刀月付的台湾nat,测试ip大陆三网都是直连,于是没忍住就上车折腾了。 配置:1CPU,256M内存,2G硬盘,中华电信,台湾彰化,300M带宽,2T月流量 网址就不给了,一来这个套餐已经下架了,二来网站域名才注册半年不到,属于新商家,存在较大风险
我安装的是 Debian10+Hysteria,安装遇到的相关问题记录如下:
一、安装时提示:[Network error]: Failed to get the latest version of hysteria in Github!
我使用的是 https://github.com/emptysuns/Hi_Hysteria 提供的一键脚本 默认没有curl所以直接使用:wget https://git.io/hysteria.sh && chmod +x hysteria.sh && ./hysteria.sh 脚本可以正常运行,但输入1进行安装最终提示:Failed to get the latest version of hysteria in Github!
Issues最近有人也遇到这样的问题:https://github.com/emptysuns/Hi_Hysteria/issues/245 有回帖说是ip被github 限制了,所以需要改脚本增加 github token 就可以解决 并且开发组也答复说下次更新会修复这个问题,不直接访问API获取版本号了
我测试了下,发现用其它ip以及自己电脑ip也都无法正常读取 latest version 所以我猜测不是ip被github限制了,而是github单方面做出了一些限制
首先重新注册一个github,然后在: Settings ==>> Developer settings ==>> Personal access tokens ==>> Tokens(classic) 点击右侧主界面的 Generate a personal access tokens 新建一个token Token描述随便写,下面的项目全部勾选(我看不懂每一条的意思,所以直接注册新号,给全部权限) 然后点 Generrate token 按钮提交就会得到一个token(一串很长的数字与字母的组合)
接下编辑第一步wget回来的hysteria.sh 找到第一段这个代码 –no-check-certificate https://api.github.com/repos/apernet/hysteria/releases/latest 修改下面这样:(token替换为上面在github得到的哪个token)
–no-check-certificate –header=’token’ https://api.github.com/repos/apernet/hysteria/releases/latest 保存之后运行即可正常读取到 latest version 并自动进行接下去的安装了。
二、使用ACNE申请证书,使用本地证书文件,还是自签证书的问题?
毫无疑问,使用正儿八经的证书是最保险的,而nat机没有80/443端口所以自动申请不了,所以只能使用本地证书文件的方式去实现,但实际执行的时候不知道为啥总是失败…..
于是曲线救国,比如我要用 taiwan.mpyes.com这个域名,先将它解析到nat的地址(cname或a记录均可) 然后到阿里云申请免费的ssl证书,再下载apache证书到本地解压缩,会得到三个文件,分别是key还有两个crt,实际只需使用key跟chain.crt这两个即可(使用本地证书文件,脚本提示需 fullchain cert)
然后按照hysteria.sh脚本正常安装,类型选择自签证书,安装完成之后可以看到脚本显示路径/etc/hihy,进入这个目录 再进cert目录便可以看到key跟crt文件,然后直接将上一段获得的key跟chain.crt改成etc/hihy/cert下的同名文件并覆盖
update 2023/05/30
直接覆盖的证书会报错,无法正常使用,所以还得使用本地证书,查询了一些资料,发现问题在于阿里云免费ssl并不提供完整的证书链文件,所以指定本地证书文件出错的根本原因是放上去的证书文件不对! 所以解决方案就是用 acme.sh 生成 Let’s Encrypt 证书,会得到四个文件:example.com.key、 example.com.cer、 fullchain.cer、ca.cer,安装hysteria时指定到fullchain.cer(证书有效期60天,所以要在本机生成并设置自动更新) ** 亦可参照这篇文章: nginx 部署 Let’s encrypt 免费ssl证书流程
嫌麻烦的可以使用宝塔面板: 第一步:换源(非必要) 第二步:安装宝塔面板 第三步:输入bt,选择8,改宝塔面板端口为nat开放的端口 第四步:进入宝塔面板安装nignx(其它的都取消勾选,只安装nignx) 第五步:添加网站域名(不需要指定端口,直接添加域名即可) 第六步:站点配置SSL菜单里申请 Let’s Encrypt,验收方式选择“DNS验证”然后按要求操作,证书会立即签发 第七步:站点配置的配置文件菜单里可以看到 ssl_certificate 跟 ssl_certificate_key 的具体目录,记录备用 第八步:安装hysteria,使用本地证书文件(使用上一步的两个目录路径即可)
============
结语:打从一年前认识了Hysteria https://www.mpyes.com/2022.04.24/19:38:59/2949 用了这么久总体感觉还是非常好用的,家里 OpenWrt 旁路由使用ShadowSocksR Plus+持续在线无压力稳定得很,毕竟这玩意比较小众所以暂时并没有被GFW特殊关照。
==================
==================
update 2023/05/25 22:12
前晚在家里旁路由部署了这个tw线路,晚上还用手机看了一个多小时youtube,一切正常 结果次日早上起床,线路就不通了,加了电报群发现是被攻击了 今天再次查看情况,管理员取消ddns了,要求用户自己安装ddns获取ipv4 倒不是责怪,这种情况习以为常了,有的低价影响市场会被人家打、有的故意低价割韭菜都是可能的 买的时候其实就当玩具机买的,纯粹是手痒,毕竟自己手里一堆小鸡流量根本用不完的
所以大厂贵自然有贵的道理,比如我的阿里云hk轻量,24一个月,部署了好几个月都稳稳当当的很少掉线 再如我的瓦工dc6,好多年了一直稳定着,所以大厂价格贵,一是线路很稳定,二是技术较好抗打能力强