sni gost hosts 分流rclone

🕓 Jan 23, 2021 · ☕2 min read

利用gost支持sni协议做简单rclone googleaip 分流 ……

Terrance Siu (TS)大佬指点下,搞定了sni+gost+白名单

本次折腾的主要意义在于:gost 支持 sni协议,可以快速搭建rclone文件下载通路,不用特意走梯子,对clash 分流等支持方便。 但是ip:443如果暴露,那么任何人都可以把相应服务解析至该IP。由于我们不是做公益,所以还要用白名单来控制访问

vps搭建服务


更新一下软件

apt  update && apt install screen wget nano iptables  procps curl nload iperf3 net-tools gnupg zip -y 

首先是gost, 一键

wget --no-check-certificate -O gost.sh https://raw.githubusercontent.com/KANIKIG/Multi-EasyGost/master/gost.sh && chmod +x gost.sh && ./gost.sh

然后假定443端口没有被占用,运行

gost -L sni://:443

Done

将以上写成服务,(TS大佬提供)

nano /etc/systemd/system/[email protected]

内容为

[Unit]
Description=GO Simple Tunnel - a simple tunnel written in golang
After=network.target

[Service]
Type=simple
Restart=on-abort
ExecStart=/usr/bin/gost -L sni://:%i

[Install]
WantedBy=default.target

直接运行

systemctl enable [email protected] 即可启动vps 443端口作为sni服务

systemctl status [email protected] 查看运行状态

systemctl restart [email protected] 重启服务

成功

success

客户端设置


可以直接改hosts文件,添加如下内容到hosts文件里面

VPS-IP www.googleapis.com
VPS-IP oauth2.googleapis.com

当然,如果443端口呗占用,那么可以将上面443改成8443

这种情况下无法使用hosts,只能用gost转发解决

gost -L :8443 -F sni://VPS-IP:8443

不过这样的话,就不如直接用梯子了,哈哈哈😂

将本地IP加入白名单

首先安装iptables

apt install iptables-persistent

记得保存之前的配置到 /etc/iptables/rules.v4

然后修改 /etc/iptables/rules.v4文件

nano  /etc/iptables/rules.v4

做如下修改:

*filter
:INPUT DROP [0:0] #拒绝所有传入
:FORWARD DROP [0:0] 
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -s 1.2.3.0/24 -j ACCEPT #白名单ip 1.2.3.0换成你自己的IP
-A INPUT -p tcp -m multiport --dports 22,32400 -j ACCEPT #白名单端口,用逗号隔开
COMMIT

iptables

1.2.3.0换成你本地的地址,允许访问所有协议

22,32400 端口在这里所有ip都可以访问

然后重启 iptables 让rules 生效

service netfilter-persistent start
iptables-restore /etc/iptables/rules.v4

至此,sni+host+白名单搞定

白名单很有用,自用vps的话还是很有必要的


金牌大学渣
WRITTEN BY
金牌大学渣
Web Developer