FRP 服务的搭建(内网穿透)
FRP 服务搭建
(基于Ubuntu+LXD下的FRP内网穿透,实现ssh与远程控制)
Ubuntu下实现frp服务的大致流程:
- 下载frp软件;
- 配置frps.ini;
- 启动frps服务;
- 配置frpc.ini;
- 启动frpc服务;
- 配置frp服务器的自启动服务;
- 配置frp客户端的自启动服务。
步骤1:Ubuntu下从GitHub下载最新版的frp软件包:
- 使用wget命令从frp的GitHub官网上下载:wget github.com/fatedier/fr…
- 解压frp文件到/home下:sudo tar -zxvf frp_0.49.0_linux_amd64.tar.gz -C /home
- 重命名frp文件目录名为nat: sudo mv frp_0.49.0_linux_amd64/ nat/
步骤2:了解frps与frpc的区别:
- Frp服务需要在服务器端配置frps.ini文件,然后启动./frps服务。在客户机端配置frpc.ini文件,然后启动./frpc服务(要先启动服务器,再启动客户端,顺序不能改变);
- frps*类文件是服务器端必须的文件;
- frpc*类文件是客户机端必须的文件。
步骤3:配置frps.ini以及启动frp服务端:
- 在服务器端执行步骤 1;
- 查看nat的目录结构:
- 配置frps.ini: sudo vim frps.ini,并写入下图命令:
- bind_port=7000 代表frp服务的通信端口;
- dashboard_port=7501 代表frp WEB后台端口;
- dashboard_user=admin 代表frp WEB登录用户名;
- dashboard_pwd=admin 代表frp WEB登录密码;
- enable_prometheus=true 代表开启frp进程监控;
- authentication_method=token 代表frp服务使用token进行用户身份验证;
- token=202211054037 代表token的验证字符。
- Frp服务器端开启frp服务(nat目录下):./frps -c ./frps.ini
显示frps started successfully 证明frp客户端启动成功
步骤4:配置frpc.ini以及启动frp客户端:
- 在服务器端执行步骤1;
- 查看nat的目录结构:
- 配置frpc.ini: sudo vim frpc.ini,并写入下图命令:
- server_addr = 192.168.5.75 代表frp服务器的地址;
- server_port = 7000 代表frp的通信端口,服务器和客户端之间要设置的一样;
- token=202211054037 代表token的验证字符,需要和服务器端设置的一致;
- [ssh-tf] 代表客户机ssh进程名,不同客户机上frpc.ini的名字要设置的不一样;
- type = tcp
- local_ip = 127.0.0.1 代表客户机,如果设置frp多层代理,需要更改此地址;
- local_port = 22 代表客户机ssh进程的端口;
- remote_port = 60501 代表客户机22端口要和服务器60501端口相连;
- [mstsc-tf] 代表客户机mstsc进程名;
- type = tcp
- local_ip = 127.0.0.1 代表是客户机自身和服务器相连;
- local_port = 3389 代表客户机mstsc进程的端口号;
- remote_port = 60511 代表客户机mstsc进程要和服务器的60511端口相连;
- Frp客户端开启frp服务(nat目录下):./frpc -c ./frpc.ini
显示frpc started successfully 证明frp客户端启动成功,则Frp服务已搭建完毕
步骤5:分别在frp服务器端以及frp客户端设置frp开机自启服务
此时Frp服务只是一次性的,当终端关闭以后,Frp服务也就下线了。因此我们有必要设置frp的开机自启服务。
1. 服务器端的frp自启服务设置;
- 新建frps.service文件:sudo vi /etc/systemd/system/frps.service
- 写入frps.service配置:
- 将frps自启服务托管给systemctl:systemctl enable frps
- 开启frps服务:systemctl start frps
2.客户端的frp自启服务设置;
-
新建frpc.service文件:sudo vi /etc/systemd/system/frpc.service
-
写入frpc.service配置:
-
将frpc自启服务托管给systemctl:systemctl enable frpc
-
开启frpc服务:systemctl start frpc
此时Frp服务搭建完成。
可能出现的问题:
- 如果使用的云主机作为frps,注意打开云主机的端口,否则frp服务无法启动;
- 服务器端打开了相关端口后,客户端如果开启防火墙(ufw),需要允许相关端口(ssh是22端口,mstsc是3389端口)通过;sudo ufw allow 22

浙公网安备 33010602011771号