frp服务端搭建教程(Linux)

简介: 想要外网访问内网的资源,如果有一台带有公网IP的服务器,可以使用frp进行中转实现。frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。
准备工作

Github地址: https://github.com/fatedier/frp
公网IP主机一台

frp分服务端和客户端两种类型,本文讲解服务端的配置方法,环境为CentOS 7

后续将讲解Windows系统服务端和客户端的配置方法

一、下载并解压缩

通过如下命令下载frp文件,并将其解压。也可通过github下载安装包上传linux
具体版本号可以通过Github页面来查看,当前最新版本为0.42.0

# 下载
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.42.0_linux_amd64.tar.gz
# 解压缩
tar xf frp_0.42.0_linux_amd64.tar.gz
# 重命名
mv frp_0.42.0_linux_amd64 /usr/local/frps/
cd /usr/local/frps
# 删除客户端frpc相关的文件
rm -f frpc*

二、修改服务端配置文件frps.ini文件

通过如下命令打开frps.ini文件并编辑

vim frps.ini
文件内容如下:
[common]
bind_port =8100
vhost_http_port = 6100
subdomain_host = a.b.com 
dashboard_port = 7100
dashboard_user = username自定义
dashboard_pwd = password自定义
log_file = ./logs/frps.log
log_level = error
log_max_days = 3
token = token自定义
max_pool_count = 50
tcp_mux = true
名称 说明
bind_port 客户端与服务端交互接口
vhost_http_port http端口
subdomain_host 自定义域名
dashboard_port 服务器后台web访问端口
dashboard_user 服务器后台web访问用户名
dashboard_pwd 服务器后台web访问密码
log_file 定义log文件名称及存放位置
log_level log文件记录的最低级别
log_max_days log记录的最大天数
token 定义log文件名称及存放位置
max_pool_count 最大连接池大小
更多参数说明,请参考 http://gofrp.org/docs/reference/server-configures/

三、配置frp启动服务

执行如下命令,编辑frp启动文件

sudo vi /etc/systemd/system/frps.service

文件内容如下:

[Unit]
Description=frps daemon
After=syslog.target  network.target
Wants=network.target
 
[Service]
Type=simple
ExecStart=/usr/local/frps/frps -c /usr/local/frps/frps.ini
 
[Install]
WantedBy=multi-user.target

四、配置frp启动服务

systemctl enable frps
systemctl start frps

五、连接后台web界面

至此frp已经配置完成,你可以通过你的公网Ip:端口号来访问对应的web后台.
需要登录,请输入上方配置文件中配置的用户名和密码即可

image.png


目录
相关文章
|
21天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 <<EOF binary put file.txt quit EOF ```
30 4
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
45 0
|
1月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 创建网络连接 nc命令 使用教程
【Shell 命令集合 网络通讯 】Linux 创建网络连接 nc命令 使用教程
37 1
|
1月前
|
缓存 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
39 0
|
1月前
|
Shell Linux API
【Shell 命令集合 磁盘维护 】Linux 查找指定目录下的所有符号链接文件 symlinks 命令使用教程
【Shell 命令集合 磁盘维护 】Linux 查找指定目录下的所有符号链接文件 symlinks 命令使用教程
33 1
|
1月前
|
消息中间件 Linux 开发工具
Linux系统安装RabbitMQ详细教程
Linux系统安装RabbitMQ详细教程
24 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 网络通讯 】⭐Linux 显示当前系统的主机名和操作系统类型 uuname命令 使用教程
【Shell 命令集合 网络通讯 】⭐Linux 显示当前系统的主机名和操作系统类型 uuname命令 使用教程
29 0
|
1月前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 验证Samba配置文件 testparm命令 使用教程
【Shell 命令集合 网络通讯 】Linux 验证Samba配置文件 testparm命令 使用教程
38 0
|
1月前
|
Shell Linux Apache
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
163 1
|
1月前
|
存储 缓存 Shell
【Shell 命令集合 磁盘维护 】⭐⭐⭐Linux 将文件系统的缓冲区数据立即写入磁盘 sync 命令使用教程
【Shell 命令集合 磁盘维护 】⭐⭐⭐Linux 将文件系统的缓冲区数据立即写入磁盘 sync 命令使用教程
52 1