KCPTun 安装及配置开机启动脚本
KCPTun地址
KCPTun安装
# 新建kcptun文件夹
mkdir /root/kcptun
# 进入kcptun文件夹
cd /root/kcptun
# 根据服务器架构下载最新kcptun文件
wget https://github.com/xtaci/kcptun/releases/download/v20201126/kcptun-linux-amd64-20201126.tar.gz
# 解压文件
tar -zxvf kcptun-linux-amd64-20201126.tar.gz
解压之后会发现只有两个文件:
client_linux_amd64 、 server_linux_amd64
第一个是是客户端文件,第二个是服务端文件。
目前 KCPTun 没有启动脚本,所以需要新建脚本。
# 创建 start.sh
vi /root/kcptun/start.sh
输入以下内容:
#!/bin/bash
cd /root/kcptun/
./server_linux_amd64 -c /root/kcptun/server-config.json 2>&1 &
echo "Kcptun started."
# server_linux_amd64 对应服务端文件名,请对应修改。
# 创建配置文件
vi /root/kcptun/server-config.json
输入以下内容:
{
"listen": ":32143",
"target": "127.0.0.1:23546",
"key": "password",
"crypt": "none",
"mode": "fast2",
"mtu": 1350,
"sndwnd": 1024,
"rcvwnd": 1024,
"datashard": 10,
"parityshard": 3,
"dscp": 46,
"nocomp": false,
"log": "/root/kcptun/kcptun.log"
}
# 创建 stop.sh
vi /root/kcptun/stop.sh
输入以下内容:
#!/bin/bash
PID=`ps -ef | grep server_linux_amd64 | grep -v grep | awk '{print $2}'`
if [ "" != "$PID" ]; then
echo "killing $PID"
kill -9 $PID
echo "Kcptun started."
else
echo "Kcptun not running!"
fi
# 创建 restart.sh
vi /root/kcptun/restart.sh
输入以下内容:
#!/bin/bash
cd /root/kcptun/
echo "Stopping Kcptun..."
bash stop.sh
bash start.sh
echo "Kcptun restart succeed !"
给以上几个创建的脚本添加执行权限:
chmod +x /root/kcptun/*.sh
日志文件在:/root/kcptun/kcptun.log
# 启动kcptun
sh /root/kcptun/start.sh
# 停止kcptun
sh /root/kcptun/stop.sh
# 重启kcptun
sh /root/kcptun/restart.sh
添加开机启动:
# Centos 系统:
chmod +x /etc/rc.d/rc.local && echo "sh /root/kcptun/start.sh" >> /etc/rc.d/rc.local
# Ubuntu/Debian 系统:
chmod +x /etc/rc.local && echo "sh /root/kcptun/start.sh" >> /etc/rc.local
执行后会添加到末尾但是会在exit 0
后面,造成开机并不能自启,此时需要手动修改文件。
注意: Debian9+ / Ubuntu17+ 默认不带有 /etc/rc.local 文件,但是rc.local文件依然存在,此方法添加的开机启动则无效。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
评论已关闭