文章内容
2024/9/25 20:04:55,作 者: 黄兵
Realm端口转发工具简单使用
最近使用 Windows 的远程桌面连接由于服务器在美国,速度非常的慢,并且还会经常掉线,线路质量也不好。
为了解决这个问题,我想到了使用 GOST 做流量转发,但是不知道怎么设置 GOST 转发 Windows RDP 的流量。
经过查找,找到了一个更好的方案。
Realm 是Rust语言开发的流量转发工具,Realm 比 Gost占用资源更小。
支持多组服务器转发,同时也支持 TCP 和 UDP,还有域名解析便捷。
据我的测试结果来看,对于 RDP 的转发 realm 比市面上别的转发工具延迟都要明显低一些。
- 下载最新的可执行文件到本地:
Github 以最新版本为主,根据自己的系统版本下载即可,我这里有一台美国 CN2 GIA 的 VPS 速度不错,同时操作系统是 Ubuntu 20.04,则需要下载:realm-x86_64-unknown-linux-gnu.tar.gz,当然 realm 的版本一直更新,您可以到这里寻找最新版本:Github - realm Releases,这里需要说明的是:musl 是静态编译版本体积稍大。
使用如下命令下载文件并解压:
cd /usr/local/bin wget https://github.com/zhboner/realm/releases/download/v2.6.1/realm-x86_64-unknown-linux-gnu.tar.gz tar -zxvf realm-x86_64-unknown-linux-gnu.tar.gz
- 赋予程序可执行权限:
chmod +x realm
- 创建 realm 配置文件:
realm 最新版的配置文件为 toml 结尾的文本文件
mkdir -p /etc/realm vim /etc/realm/config.tml
具体的配置文件规则很简单,只需要在 listen 里填入 VPS 上的带转发端口号,remote 中填入目的地的 VPS 的 IP 和端口号即可:
[network] no_tcp = false use_udp = true [[endpoints]] listen = "0.0.0.0:3388" remote = "test.cloudflare.com:3389"
配置文件支持各种协议,以及域名解析等操作,更多规则可以查看项目:GitHub - realm
- 创建自启动服务项:
使用 systemd 来创建开机启动防止机器重启了服务没了
vim /etc/systemd/system/realm.service [Unit] Description=realm After=network-online.target Wants=network-online.target systemd-networkd-wait-online.service [Service] Type=simple User=root Restart=on-failure RestartSec=5s DynamicUser=true ExecStart=/usr/local/bin/realm -c /etc/realm/config.tml [Install] WantedBy=multi-user.target
- 开启服务配置自启
systemctl daemon-reload systemctl enable realm && systemctl start realm # ps: 禁用自启 systemctl stop realm && systemctl disable realm
如果你的落地服务器使用的是动态 IP,或者 DDNS 服务,可以在 crontab 计划任务里来设置定时重启 realm 服务:
cronteb -e #填写内容为时间和重启的服务名称: 00 5 * * * systemctl restart realm
- 测试是否成功转发:
此时就应该可以成功通过这台 VPS 来转发落地服务器的任何流量了, 如果发现无法转发,可以看一下是否开启了 selinux、iptables、防火墙规则等等干扰了程序端口运行。 关闭干扰的防火墙规则或者添加转发端口到白名单即可, 如果还是无法转发可以查看一下 realm 日志 log 判断错误所在:
tail /var/log/realm.log -f # 如果没有配置log字段那么就 使用journalctl 查看日志 journalctl -u realm -f
一般的错误都是域名解析失败,可以改变系统的DNS为 8.8.8.8 即可。
文章来源:Realm端口转发工具简单使用
其它相关推荐:
评论列表