更新 frpc.sh
This commit is contained in:
parent
85c371c5fa
commit
5f64ddfe9f
61
frpc.sh
61
frpc.sh
@ -6,6 +6,7 @@ INSTALL_DIR="/usr/local/bin"
|
|||||||
SERVICE_NAME="frpc"
|
SERVICE_NAME="frpc"
|
||||||
CONFIG_DIR="/etc/frp"
|
CONFIG_DIR="/etc/frp"
|
||||||
CONFIG_FILE="$CONFIG_DIR/frpc.toml"
|
CONFIG_FILE="$CONFIG_DIR/frpc.toml"
|
||||||
|
FRPC_BIN="$INSTALL_DIR/frpc"
|
||||||
|
|
||||||
# 检测系统架构
|
# 检测系统架构
|
||||||
ARCH=$(uname -m)
|
ARCH=$(uname -m)
|
||||||
@ -25,30 +26,41 @@ case $ARCH in
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# 下载 frpc
|
# 检查 frpc 是否已安装
|
||||||
echo "正在下载 frpc v$FRPC_VERSION ..."
|
if [ -f "$FRPC_BIN" ]; then
|
||||||
DOWNLOAD_URL="https://ghub.z1.mk/https://github.com/fatedier/frp/releases/download/v${FRPC_VERSION}/frp_${FRPC_VERSION}_linux_${ARCH}.tar.gz"
|
echo "frpc 已安装,跳过下载步骤。"
|
||||||
wget -q --show-progress -O /tmp/frp.tar.gz $DOWNLOAD_URL
|
else
|
||||||
|
# 下载 frpc
|
||||||
|
echo "正在下载 frpc v$FRPC_VERSION ..."
|
||||||
|
DOWNLOAD_URL="https://ghub.z1.mk/https://github.com/fatedier/frp/releases/download/v${FRPC_VERSION}/frp_${FRPC_VERSION}_linux_${ARCH}.tar.gz"
|
||||||
|
wget -q --show-progress -O /tmp/frp.tar.gz $DOWNLOAD_URL
|
||||||
|
fi
|
||||||
# 解压并安装
|
# 解压并安装
|
||||||
echo "正在安装 frpc ..."
|
echo "正在安装 frpc ..."
|
||||||
tar -xzf /tmp/frp.tar.gz -C /tmp
|
tar -xzf /tmp/frp.tar.gz -C /tmp
|
||||||
sudo mv /tmp/frp_${FRPC_VERSION}_linux_${ARCH}/frpc $INSTALL_DIR/
|
sudo mv /tmp/frp_${FRPC_VERSION}_linux_${ARCH}/frpc $INSTALL_DIR/
|
||||||
sudo chmod +x $INSTALL_DIR/frpc
|
sudo chmod +x $INSTALL_DIR/frpc
|
||||||
|
|
||||||
|
# 清理临时文件
|
||||||
|
rm -rf /tmp/frp_${FRPC_VERSION}_linux_${ARCH} /tmp/frp.tar.gz
|
||||||
|
|
||||||
# 创建配置文件目录
|
# 创建配置文件目录
|
||||||
echo "正在创建配置文件目录 ..."
|
echo "正在创建配置文件目录 ..."
|
||||||
sudo mkdir -p $CONFIG_DIR
|
sudo mkdir -p $CONFIG_DIR
|
||||||
|
|
||||||
# 用户输入 frps 服务器地址和端口号
|
# 检查配置文件是否存在
|
||||||
echo "请输入 frps 服务器地址(例如:frps.example.com):"
|
if [ -f "$CONFIG_FILE" ]; then
|
||||||
read FRPS_SERVER
|
echo "配置文件已存在,跳过生成步骤。"
|
||||||
echo "请输入 frps 服务器端口号(例如:7000):"
|
else
|
||||||
read FRPS_PORT
|
# 用户输入 frps 服务器地址和端口号
|
||||||
|
echo "请输入 frps 服务器地址(例如:frps.example.com):"
|
||||||
|
read FRPS_SERVER
|
||||||
|
echo "请输入 frps 服务器端口号(例如:7000):"
|
||||||
|
read FRPS_PORT
|
||||||
|
|
||||||
# 写入 TOML 配置文件
|
# 写入 TOML 配置文件
|
||||||
echo "正在写入 TOML 配置文件 ..."
|
echo "正在写入 TOML 配置文件 ..."
|
||||||
sudo bash -c "cat > $CONFIG_FILE" <<EOF
|
sudo bash -c "cat > $CONFIG_FILE" <<EOF
|
||||||
[common]
|
[common]
|
||||||
server_addr = "$FRPS_SERVER"
|
server_addr = "$FRPS_SERVER"
|
||||||
server_port = $FRPS_PORT
|
server_port = $FRPS_PORT
|
||||||
@ -60,11 +72,16 @@ server_port = $FRPS_PORT
|
|||||||
# localPort = 80
|
# localPort = 80
|
||||||
# customDomains = ["example.com"]
|
# customDomains = ["example.com"]
|
||||||
EOF
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
# 创建 Systemd 服务
|
# 检查 Systemd 服务是否已存在
|
||||||
echo "正在创建 Systemd 服务 ..."
|
|
||||||
SERVICE_FILE="/etc/systemd/system/$SERVICE_NAME.service"
|
SERVICE_FILE="/etc/systemd/system/$SERVICE_NAME.service"
|
||||||
sudo bash -c "cat > $SERVICE_FILE" <<EOF
|
if [ -f "$SERVICE_FILE" ]; then
|
||||||
|
echo "Systemd 服务已存在,跳过生成步骤。"
|
||||||
|
else
|
||||||
|
# 创建 Systemd 服务
|
||||||
|
echo "正在创建 Systemd 服务 ..."
|
||||||
|
sudo bash -c "cat > $SERVICE_FILE" <<EOF
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Frp Client Service
|
Description=Frp Client Service
|
||||||
After=network.target
|
After=network.target
|
||||||
@ -80,15 +97,13 @@ RestartSec=5s
|
|||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
# 重载 Systemd 并启动服务
|
# 重载 Systemd 并启动服务
|
||||||
sudo systemctl daemon-reload
|
sudo systemctl daemon-reload
|
||||||
sudo systemctl enable $SERVICE_NAME
|
sudo systemctl enable $SERVICE_NAME
|
||||||
sudo systemctl start $SERVICE_NAME
|
sudo systemctl start $SERVICE_NAME
|
||||||
|
fi
|
||||||
|
|
||||||
# 检查服务状态
|
# 检查服务状态
|
||||||
echo "frpc 安装完成!"
|
echo "frpc 安装完成!"
|
||||||
echo "服务状态:"
|
echo "服务状态:"
|
||||||
sudo systemctl status $SERVICE_NAME
|
sudo systemctl status $SERVICE_NAME
|
||||||
|
|
||||||
# 清理临时文件
|
|
||||||
rm -rf /tmp/frp_${FRPC_VERSION}_linux_${ARCH} /tmp/frp.tar.gz
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user