网站制作培训课程,wordpress模板如何修改,网站设计好网站,wordpress怎么改界面背景
本人目前在境外某大学读博#xff0c;校园网屏蔽了所有内网穿透的工具的数据包和IP访问#xff0c;为了实现在家也能远程访问服务器#xff0c;就不得不先开个学校VPN#xff0c;再登陆。我们实验室还需要访问另一个大学的服务器#xff0c;每次我都要去找另一个大学…背景
本人目前在境外某大学读博校园网屏蔽了所有内网穿透的工具的数据包和IP访问为了实现在家也能远程访问服务器就不得不先开个学校VPN再登陆。我们实验室还需要访问另一个大学的服务器每次我都要去找另一个大学的同学借账户和动态token访问不胜其烦。
我尝试了包括向日葵、FRP、ngrok等多个内网穿透工具在校园无线网、校园访客WiFi、有线网均做了测试。我发现大学为了防hack真是煞费苦心最终这些数据包全被过滤了。
我想到的解决方案有两点1. 进一步加密frp等工具的流量让防火墙认不出来2. 买插sim卡的无线路由器一步到位前提是服务器环境有手机信号。
我最终为了节约时间选择了后者。成本包括FRP服务器、路由器、流量卡在内大概500元RMB能保证一年的ssh访问流量77GB。果然能用钱解决的问题就不是问题。
步骤
内网穿透diagram FRP服务器搭建
选购服务器
FRP服务我选择了同城的低成本vps不到200一年521MB内存70Mbps网口。实测下载速度跑到6MB/s没啥压力。冗余服务器我在网上找了做ngrok隧道的做了冗余隧道。万一FRP程序死机了还有另一条冗余隧道。
FRP server搭建
github下载最新版FRP客户端和服务端github地址根据文档一步步搭建FRP服务端文档我FRP server主要配置如下
bindPort 7000
auth.token 填写长一点的数字字母的token我试过加符号会出错
# 服务端dashboard
webServer.port 7500
webServer.user admin
webServer.password admin
#日志记录等级有trace, debug, info, warn, error
log.level info
#日志保留时间
log.maxDays 3
log.to /root/frp_0.54.0_linux_amd64/log/frps.log详细配置参考官方文档
启动FRP服务器 使用以下命令启动服务器./frps -c ./frps.toml。 使用以下命令启动客户端./frpc -c ./frpc.toml。 如果需要在后台长期运行建议结合其他工具如 systemd 和 supervisor。 路由器SIM流量卡选购
路由器特点支持以太网口、SIM卡插入、外部电源供电 踩坑我就是买了WiFi蛋一开始可以usb有线网接入后面供电不行只能开启wifi接入结果网速慢多了。
SIM卡零月租纯流量77G 365天。SSH没几个人用每天平均200多M应该够用了。
Client路由设置
确定主要流量走以太网校园网只有内网穿透流量走流量卡SSH流量用ip route get {FRP服务器ip}查看是否走了wifi路由器用traceroute {域名}也可以考虑到FRP服务器ip可能会变需要定时解析
#!/bin/bash# 域名
DOMAIN_NAMExx.xx.com# 使用dig命令解析域名获取IP地址
IP_ADDRESS$(dig short $DOMAIN_NAME | tail -n1)if [ -z $IP_ADDRESS ]; thenecho 无法解析域名: $DOMAIN_NAMEexit 1
fi# WiFi接口名称注意下面只是example接口名
WIFI_INTERFACEwlx200db0362a21# 获取WiFi接口的默认网关
WIFI_GATEWAY$(ip route show default | grep $WIFI_INTERFACE | awk {print $3})# 构造预期的路由规则
EXPECTED_ROUTE$IP_ADDRESS via $WIFI_GATEWAY dev $WIFI_INTERFACE# 检查是否已存在预期的路由规则
EXISTING_ROUTE$(ip route show to match $IP_ADDRESS | grep $WIFI_INTERFACE)if [[ $EXISTING_ROUTE *$EXPECTED_ROUTE* ]]; thenecho 路由规则已存在无需更新: $EXPECTED_ROUTE
else# 删除旧的路由规则如果存在sudo ip route del $IP_ADDRESS dev $WIFI_INTERFACE 2 /dev/null# 添加新的路由规则sudo ip route add $EXPECTED_ROUTEecho 路由更新完成: $EXPECTED_ROUTEsudo systemctl restart frpc.service
fi
SSH和FRP安全设置参考前一篇文章。开启frptables