如何搭建FRP服务器?详细步骤解析!
创作时间:
作者:
@小白创作中心
如何搭建FRP服务器?详细步骤解析!
引用
1
来源
1.
https://www.kdun.com/ask/1308469.html
FRP(Fast Reverse Proxy)是一款高性能的反向代理应用,支持TCP、UDP、HTTP、HTTPS等多种协议,通过在内网或防火墙后的机器上部署FRP,可以轻松实现内网穿透,将内网服务暴露到公网上。本文将详细介绍如何在Linux环境下搭建FRP服务器和客户端,并验证其功能。
准备工作
- 域名:一个用于访问的域名(如www.test.xyz)。
- 服务器:一台拥有公网IP的服务器(如阿里云、腾讯云等)。
- 内网主机:需要被穿透的内网设备。
- 下载FRP:从FRP官方Github下载适合的版本。
安装与配置
1. 服务端配置
创建目录并上传文件:
mkdir -p /usr/local/frp
cd /usr/local/frp
wget https://github.com/fatedier/frp/releases/download/v0.49.0/frp_0.49.0_linux_amd64.tar.gz
tar -zxvf frp_0.49.0_linux_amd64.tar.gz
编辑配置文件:
打开frps.ini
并进行如下配置:
[common]
bind_port = 7000 # 服务端通信端口
dashboard_port = 7500 # 后台管理端口
dashboard_user = admin # 后台用户名
dashboard_pwd = admin # 后台密码
vhost_http_port = 7002 # HTTP穿透端口
vhost_https_port = 7003 # HTTPS穿透端口
max_pool_count = 50
token = aaa123 # 身份验证令牌
tcp_mux = true
log_file = /usr/local/frp/frps.log # 日志文件路径
log_level = info
log_max_days = 3
authentication_timeout = 0 # 不验证时间差
subdomain_host = test.xyz # 注册域名
privilege_mode = true
启动服务端:
./frps -c ./frps.ini
2. 客户端配置
创建目录并上传文件:
mkdir -p /usr/local/frp
cd /usr/local/frp
wget https://github.com/fatedier/frp/releases/download/v0.49.0/frp_0.49.0_linux_amd64.tar.gz
tar -zxvf frp_0.49.0_linux_amd64.tar.gz
编辑配置文件:
打开frpc.ini
并进行如下配置:
[common]
server_addr = 10.10.xxx.xxx # 服务端IP
server_port = 7000 # 服务端通信端口
token = aaa123 # 身份验证令牌
tcp_mux = true
log_file = /usr/local/frp/frpc.log # 日志文件路径
log_level = info
log_max_days = 3
authentication_timeout = 0 # 不验证时间差
[ssh] # SSH节点
type = tcp
local_ip = 192.168.xxx.xxx # 本地IP
local_port = 22
remote_port = 7001 # 远程端口
[web01] # Web节点
type = http
local_ip = 192.168.xxx.xxx # 本地IP
local_port = 8080 # 本地端口
subdomain = web01 # 自定义子域名
custom_domains = test.xyz # 主域名
启动客户端:
./frpc -c ./frpc.ini
验证结果
- 测试SSH节点:使用Xshell等工具连接公网服务器,通过7001端口访问内网主机的SSH服务。
- 测试Web节点:在浏览器中访问
http://web01.test.xyz:7002
,应能访问内网Tomcat服务的首页。
设置开机自启动
1. 服务端开机自启动
复制文件:
cp frps /usr/local/bin/frps
mkdir /etc/frp
cp frps.ini /etc/frp/frps.ini
编写systemd服务文件:
[Unit]
Description=frps
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/frps -c /etc/frp/frps.ini
Restart=on-failure
[Install]
WantedBy=multi-user.target
启动并设置开机自启:
systemctl enable frps
systemctl start frps
systemctl status frps
2. 客户端开机自启动(以CentOS为例)
复制文件:
cp frpc /usr/local/bin/frpc
mkdir /etc/frp
cp frpc.ini /etc/frp/frpc.ini
编写systemd服务文件:
[Unit]
Description=frpc
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.ini
Restart=on-failure
[Install]
WantedBy=multi-user.target
启动并设置开机自启:
systemctl enable frpc
systemctl start frpc
systemctl status frpc
常见问题解答(FAQs)
Q1: FRP服务器无法启动怎么办?
A1: 请检查以下几点:
- 配置文件错误:确保
frps.ini
和frpc.ini
中的配置正确无误,特别是端口和IP地址。 - 端口占用:确认配置文件中的端口未被其他服务占用,可以使用
netstat -tlnp | grep <端口号>
查看端口占用情况。 - 日志信息:查看日志文件(如
frps.log
)中的错误信息,有助于定位问题,如果日志文件没有生成,请检查文件路径和权限是否正确。 - 依赖问题:确保系统已安装所有必要的依赖包,对于CentOS系统,可以使用以下命令安装依赖:
对于Ubuntu系统,则使用:yum install wget pcre libssl-dev gcc make
apt install wget pcre libssl-dev gcc make
- 权限问题:确保运行FRP的用户对配置文件和日志文件具有读写权限,如果没有,可以使用
chmod
命令修改权限:chmod 600 /path/to/config
- 防火墙设置:检查防火墙设置,确保所需的端口已被开放,对于CentOS系统,可以使用
firewall-cmd
命令;对于Ubuntu系统,则使用ufw
命令,开放7000端口的命令为:
或firewall-cmd --permanent --add-port=7000/tcp && firewall-cmd --reload
ufw allow 7000/tcp
- 网络问题:确保服务器能够正常访问互联网,并且内网主机也能够与服务器通信,如果存在网络问题,可以尝试ping服务器的公网IP或域名来测试连通性,还需要确认服务器所在的网络环境允许进行端口映射和内网穿透操作,如果有任何限制或禁止此类操作的规定,则需要联系网络管理员进行调整。
如果以上步骤都无法解决问题,建议查看官方文档或社区论坛寻求更多帮助,同时也可以提供更详细的错误信息以便他人协助诊断问题所在,另外需要注意的是不同的操作系统版本之间可能存在差异因此在实际操作过程中需要根据具体情况灵活调整解决方案,最后如果遇到无法解决的技术难题也可以考虑升级到最新版本的FRP软件或者更换其他类似的内网穿透工具以满足需求。
Q2: FRP客户端无法连接到服务器怎么办?
A2: 请检查以下几点:
- 服务器地址和端口:确保在
frpc.ini
中配置的服务器地址和端口正确无误,可以通过ping命令测试服务器地址是否可达。
如果无法ping通,请检查服务器的网络连接是否正常以及是否有防火墙阻止了ICMP请求,此外还可以尝试使用traceroute命令追踪数据包的路径以帮助定位网络问题所在的位置。ping <服务器IP>
- 身份验证令牌:确保客户端和服务端的
token
值一致且正确无误,不一致的令牌会导致连接失败,可以在配置文件中核对双方的token
值是否匹配,如果仍然有问题可以尝试重新生成一个新的令牌并在两端同步更新后再试一次连接操作看是否能成功建立连接关系,另外需要注意不要将令牌泄露给未经授权的人以防止潜在的安全风险发生。
热门推荐
冬日暖心:福州佛跳墙&鱼丸大赏!
福州鼓山:春日踏青打卡胜地
《火影忍者:究极风暴4》玩家必看!快速解决游戏故障
杨帆:央视综艺频道的“综艺鬼才”
央视综艺2024:创新引领,杨帆助力
杨帆再登春晚舞台:从东北走出的“百变主持”
SSL/TLS扫描工具全解析:从入门到实践
TLS 1.4:SSL/TLS协议的最新标准与安全提升
米其林推荐:武汉必打卡热干面
黄鹤楼与归元寺:武汉历史文化的双子星
广州自驾游重庆攻略:打卡洪崖洞,吃遍火锅!
韶关丹霞山:广州到重庆自驾游必打卡!
五一自驾游:广州沙面岛与大沙头火车站探秘
CCTV带你探秘潮州古城:千年古迹与现代魅力
掌握聊天技巧,轻松开启浪漫恋情!
猎心人老王教你社交场自信撩妹大法!
北宫雨泽教你轻松聊爆女生朋友圈!
温暖关怀:老年女性便秘的心理干预与家庭支持
冬季养生:中医食疗缓解老人便秘
青岛西到长沙南高铁最新时刻表出炉!
毕业季亲子游:从青岛到长沙的超值6日纯玩之旅
长江黄金系列邮轮预订全攻略:从航线选择到登船准备
秋冬厨房神器:光波炉&微波炉使用秘籍
光波炉 vs 微波炉:谁更健康?
1983年与2025年运势对比分析
北方“扫帚日”:初三大扫除的秘密
止咳平喘药副作用
《国家宝藏》揭秘:从“金龟婿”看传统文化的传承与创新
丰盛古镇:穿越千年的巴渝风情
120元玩转重庆金刚碑!大学生专属穷游攻略来啦