FRP 使用手记

邻近回家,面对着怎么都调不通的代码,一点心情都没有。然而又想着 “回家之后怎么杀回校内网” 的事儿。正好晚上搞一下。

在 V2Ray 群里吐槽好久说希望加上内网穿透,小姐姐一直说 “再等等……”,然后有人看不下去了:“自己去试 frp 啊!”

Background

学校对网络管的比较严,虽然 10.0.0.0/8 段内网里面几乎任意主机都可以互通,但是对外就不一样了:目测是有一台堡垒机当作统一出口,然后对内网已报备的几台服务器做常用端口映射。虽然校园网有 IPv6,但是禁止了 22 口的入站(换成其他口就好了)。IPv6 对于运营商网络来说仍是稀有物品,而且速度不怎么好,寝室连学校,最高 500K 的样子。想使用 V2Ray 的特殊手段连进来,都失败了。SSH 端口转发一直断线,而且晚上 3 点会强制下线。目前最好的办法就是 TeamViewer,非商用的话一小会儿就断掉了。总之不是长久之计。

其他方案的话…… 花生壳?太阳花?nat123?国内非开源不太信任。

被安利 frp 之后就去搜了一下。文档蛮全的,感觉还挺简单的。而且一次成功。


首先去下载最新 Release,解压缩,之后为 Server 端和 Client 端分别进行配置。

Server 端

按照 “惯例”,把 frps 放在 /usr/bin 里面。然后新建 /etc/frps/,在里面新建一份配置文件 frps.ini

自己的需求比较简单,只是希望能在外网访问自己电脑而已,所以 中文文档 里面的很多高大上的东西都用不上,只用上了最最前面的端口转发。配置如下

没了……Server 端就是这么简洁……

再搞个服务,每次开机自动启动:

sudo vi /lib/systemd/system/frps.service

Client 端

复制 frpc/usr/bin/,新建配置文件 /etc/frpc/frpc.ini

同样是只用基础功能,所以配置依旧很少:

注意替换一下信息。之后依然是建个服务自动启动:

sudo vi /lib/systemd/system/frpc.service

就这样就完了!

在外网上试一下 ssh username@YOUR_SERVER_IP -p YOUR_PORT,然后输入个 ip a 看看是不是内网的 IP 地址?

如果使用 5900 口的话就可以 VNC 了哦~

一些小坑

  • login_fail_exit = false 可以保证 Client 一直尝试连接 Server,而不是 “连接失败就报错退出”。
  • 注意到 client 的 user,建议还是设置一下吧。
  • client 里面所有的小标签 [xxxx] 不能重名。(ini 的特性,同时好像根据小标签名来区分不同链接)
  • 目前暂时不支持 “每个连接分别使用一个服务器” 这样的 “双保险”
  • 中转服务器最好放在国内。为啥?为速度啊!

发表评论

电子邮件地址不会被公开。 必填项已用*标注