在云服务器上安装frp服务端
目录
frp
是一款非常优秀的开源内网穿透工具,可以帮助我们在公网上连接内网主机上的服务。本文介绍如何在Linux
云服务器上安装frp
服务端。
下载并安装frp服务端
frp
的GitHub仓库地址为https://github.com/fatedier/frp。截至本文完成时,frp
的最新版本为v0.35.1
。首先,将Release中最新版的二进制包下载并复制到云服务器上。
wget https://github.com/fatedier/frp/releases/download/v0.35.1/frp_0.35.1_linux_amd64.tar.gz
tar xf frp_0.35.1_linux_amd64.tar.gz
cd frp_0.35.1_linux_amd64/
可以看到目录中有frpc
frps
两个可执行文件分别为frp
的客户端以及服务端,以及frpc.ini
frps.ini
等示例配置文件。我们按照官方默认的目录,将frps
安装到/usr/bin
中,并将默认配置文件frps.ini
复制到/etc/frp/frps.ini
。
sudo cp frps /usr/bin
sudo mkdir -p /etc/frp
sudo cp frps.ini /etc/frp
到此为止,frp
服务端的安装就算完成了。可以使用下面的命令测试一下安装是否成功。
frps -c /etc/frp/frps.ini
看到类似[I] [root.go:217] frps started successfully
的提示,即为安装成功。
配置frps
使用编辑器打开/etc/frp/frps.ini
。将下列配置信息加入配置文件。
bind_port = frp使用的端口
token = 密码
allow_ports = 50000-65535
tcp_mux = false
log_level = info
log_max_days = 3
protocol = tcp
log_file = /tmp/frps.log
端口号限制
Ubuntu
系统默认禁用1024
以下的端口,若使用会报错Create server listener error, listen tcp 0.0.0.0:1007: bind: permission denied
。请使用大于1024
的端口。安装systemd服务
使用上面的命令启动frps
之后,虽然可以进行测试,但是一旦终端关闭,服务端也就会自动终止。幸运的是,官方为我们提供了systemd
的服务文件,可以使用systemd
以守护进程的方式启动frps
。
仍然在解压出来的frp_0.35.1_linux_amd64
目录中,可以找到systemd
文件夹,里面便包含了默认配置的服务脚本。只需要将服务文件复制到systemd
的服务库中即可。
sudo cp systemd/frps.service /etc/systemd/system/
设置用户名
复制完毕后,还需要设置启动
frp
服务的用户名。编辑/etc/systemd/system/frps.service
文件,将其中的User=nobody
换成User=你的用户名
即可。接下来,尝试启动服务。
sudo service frps start
若没有任何输出,则证明服务启动成功。最后,将服务设置为开机启动即可。
sudo systemctl enable frps