本文最后更新于 2020 年 9 月 28 日
本文以 Debian 10 为例,介绍如何搭建 frp 服务端,用以实现内网穿透,并以 VNC 的使用为例,介绍如何配置客户端。本文同样完全适用于 Ubuntu 20.04 系统。
注:请先参照 Debian & Ubuntu 服务器的初始化配置 一文对服务器进行各种必要的配置。本文以 sammy
用户为例,进行 frp 的部署,并默认已按初始化配置文章对服务器进行了配置。
服务端安装
在 GitHub 上找到对应架构的最新压缩包并下载,例如:
1 2 3 4 5 6
| export VERSION_FRP="0.34.0" cd /usr/local/bin sudo wget https://github.com/fatedier/frp/releases/download/v"$VERSION_FRP"/frp_"$VERSION_FRP"_linux_amd64.tar.gz sudo tar -xf frp_"$VERSION_FRP"_linux_amd64.tar.gz -C /usr/local/bin sudo mv frp_"$VERSION_FRP"_linux_amd64 frp sudo rm frp_"$VERSION_FRP"_linux_amd64.tar.gz
|
服务端设置
创建配置文件:
1
| sudo vim /usr/local/etc/frp/frps.ini
|
添加如下内容:
/usr/local/etc/frp/frps.ini1 2 3
| [common] bind_port = 自定义端口之一 token = 强密码
|
自启动:
1
| sudo vim /etc/systemd/system/frps.service
|
/etc/systemd/system/frps.service1 2 3 4 5 6 7 8 9 10 11 12 13
| [Unit] Description=Frp Server Service After=network.target
[Service] Type=simple User=nobody Restart=on-failure RestartSec=5s ExecStart=/usr/local/bin/frp/frps -c /usr/local/etc/frp/frps.ini
[Install] WantedBy=multi-user.target
|
1 2
| sudo systemctl enable frps sudo systemctl start frps
|
防火墙放行:
1 2
| sudo ufw allow 自定义端口之一 sudo ufw allow 自定义端口之二
|
客户端安装
客户端的安装和服务端的安装过程大同小异,此处不再赘述,只是客户端将可执行文件解压至了 ~/frp
目录下。
客户端设置
此处以监听在 5900 端口上的 VNC 服务为例,创建配置文件:
添加如下内容:
~/frp/config.ini1 2 3 4 5 6 7 8 9
| [common] server_addr = 服务端 IP 地址 server_port = 服务端所设置的自定义端口 token = 服务端所设置的密码
[vnc] type = tcp local_port = 5900 remote_port = 自定义端口之二
|
启动服务:
1 2
| cd ~/frp ./frpc -c config.ini
|
按 Ctrl
+ C
即可停止运行。
References
fatedier / frp
frp 内网穿透神器搭建
Ubuntu 配置 VNC + frp 内网穿透实现桌面远程访问