一个用 Rust 编写的简单、高性能的中继服务器。
github地址:https://github.com/zhboner/realm
1.下载
wget https://github.com/zhboner/realm/releases/download/v2.4.6/realm-x86_64-unknown-linux-gnu.tar.gz
tar -xf realm-x86_64-unknown-linux-gnu.tar.gz
chmod +x realm
mv realm /usr/bin/
执行下 realm -v
有报错的话重新下载musl
版本
2.配置
命令行运行
转发1.1.1.1
的 443
端口到本机的5000
端口
realm -l 0.0.0.0:5000 -r 1.1.1.1:443
配置文件运行
mkdir /etc/realm
vim /etc/realm/realm.toml
TOML示例
[log]
level = "warn"
output = "/var/log/realm.log"
[network]
no_tcp = false
use_udp = true
[[endpoints]]
listen = "0.0.0.0:5000"
remote = "1.1.1.1:443"
[[endpoints]]
listen = "0.0.0.0:10000"
remote = "www.google.com:443"
运行
/usr/bin/realm -c /etc/realm/realm.toml &
更多示例:https://github.com/zhboner/realm/tree/master/examples
3.检测运行脚本
vim check_realm.sh
#!/bin/bash
if pgrep -x "realm" > /dev/null
then
echo "realm 服务正在运行"
else
echo "realm 服务未运行,正在启动..."
/usr/bin/realm -c /etc/realm/realm.toml &
fi
编辑cron
vim /etc/crontab
* * * * * root /root/check_realm.sh >> /root/cron.log 2>&1
check_realm.sh此行告诉 cron在每月、每月和每周的每一天、每小时、每分钟运行您的脚本。它还将脚本的任何输出(stdout 和 stderr)重定向到/root/cron.log.重定向到`/root/cron.log