FRP内网穿透搭建教程(frps 内网穿透)
haoteby 2025-05-10 22:00 22 浏览
一、FRP内网穿透工具
1、FRP简介:
frp 是一个开源项目, 采用 C/S 模式,将服务端部署在具有公网 IP 的机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,
反向代理到处于内网的服务。 在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。
协议类型 | 描述 |
tcp | 单纯的TCP端口映射,服务端会根据不同的端口路由到不同的内网服务。 |
udp | 单纯的UDP端口映射,服务端会根据不同的端口路由到不同的内网服务。 |
http | 访问HTTP应用。 |
https | 访问HTTPS应用。 |
stcp | 安全的TCP内网代理,需要在被访问者和访问者的机器上都部署frpc,不需要在服务端暴露端口。 |
sudp | 安全的UDP内网代理,需要在被访问者和访问者的机器上都部署frpc,不需要在服务端暴露端口。 |
xtcp | 点对点内网穿透代理,功能同 stcp,但是流量不需要经过服务器中转。 |
tcpmux | 支持服务端TCP端口的多路复用,通过同一个端口访问不同的内网服务。 |
2、FRP配置:
注:从本地外网机器获取到的公网ip无法使用,需购买云服务器,如购买阿里云、腾讯云服务器,将服务端部署到云服务器上,客户端部署到可以访问内外网的跳板机上;
2.1 服务器端配置frps.ini:(需要安装在外网机器上)
1、下载安装包
https://github.com/fatedier/frp/releases/tag/v0.37.1
2、解压安装包、并拷贝frps.exe 、frps.ini拷贝指定目录,windows下如C盘: C:\frp\ (方法windows、Linux版本都适用)
3、配置服务端frps.ini :(windows、Linux版本都适用)
[common]
bind_port = 7000 #frps服务端的端口
token = cjjs@88888888 #客户端连接服务端的密码
max_pool_count=20 #最大连接数
dashboard_port = 7500 #控制面板的服务端口,用于web页面查看所有客户端连接信息与状态
dashboard_user = admin #控制面板登录账户
dashboard_pwd = admin #控制面板登录密码
vhost_http_port = 80 #设置http端口
vhost_https_port = 443 #设置https端口
[可选]
log_level = debug #设置日志显示级别{debug, info, warn, error)
log_max_days = 5 #设置日志最大天数
privilege_mode = true #设置特权模式是否开启,开通后web,ssh等使用都可以直接在客户端设置
privilege_token = admin #设置特权模式token值
subdomain_host = abc.cn #设置动态二级域名
注:frps.ini文件可以使用默认配置直接启动就行,当然最好加个token,加强安全验证。
4、启动服务端:
(1)将文件frps.exe 、frps.ini拷贝至任意目录(C:\frps);
(2)启动frps服务: frps.exe -c frps.ini
2.2 客户端配置frpc.ini:(需要安装在可以同时访问内网外网的跳板机上)
1、将解压安装包中的frpc.exe 、frpc.ini拷贝指定目录;(windows、Linux版本都适用)
2、配置客户端frpc.ini :(windows、Linux版本都适用)
[common]
server_addr = 81.70.5.18 #frps服务端的公网IP(腾讯云服务器公网ip)
server_port = 7000 #frps服务端的端口
token = yydds@88888888 #连接frp服务端的密码
[ssh] #配置ssh服务
type=tcp
local_ip=10.199.108.11 #内网服务器ip
local_port=22 #内网服务器端口
remote_port=30000 #表示在 frps服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口,即22号端口
use_encryption=true #可选,表示是否加密
use_compression=false #可选,表示是否压缩
[RDP] #配置远程桌面
type=tcp
local_ip=10.41.71.128 #内网服务器ip
local_port=3389 #内网服务器端口
remote_port=30001 #表示在 frps服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口,即3389号端口
[http_proxyx]
type = tcp #通信数据类型
remote_port = 1080 #在frp服务端开设代理服务的端口
plugin = socks5 #通过插件开设socks5代理服务
#plugin_user = abc123 #通过插件设置连接代理的用户名
#plugin_passwd = abc123 #通过插件设置连接代理的密码
#user_compression=true
3、启动客户端:
frpc.exe -c frpc.ini
2.3 web配置
1、公网服务器,配置服务端frps.ini
[common]
bind_port = 7000 #frps服务端的端口
token = yydds@88888888 #客户端连接服务端的密码
vhost_http_port = 80 #http端口
vhost_https_port = 443 #https端口
2、内网跳板机,配置客户端frpc.ini
[common]
server_addr = 81.70.5.18 #frps服务端的公网IP(腾讯云服务器公网ip)
server_port = 7000 #frps服务端的端口
token = yydds@88888888 #连接frp服务端的密码
[web_http]
type = http
local_ip = 10.199.108.10 #内网服务器ip
local_port = 80 #内网网站使用的端口
remote_port = 30002 #表示在 frps服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口,即80号端口
[web_https]
type = http
local_ip = 10.199.108.10 #内网服务器ip
local_port = 443 #内网网站使用的端口
remote_port = 30003 #表示在 frps服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口,即443号端口
4、重新启动frp服务:
1)重启frps: ./frps.exe -c frps.ini
2)重启frpc: ./frpc.exe -c frpc.ini
2.4 STCP配置
背景: frp的tcp模式相当于设备直接向公网暴露了一个tcp端口;任何设备都可以尝试连接这个端口,会有很大的安全风险;而stcp协议就是为解决这个安全问题;
限制特定设备能够使用这个端口。
1、公网服务器,配置服务端frps.ini
[common]
bind_port = 7000 #frps服务端的端口
token = yydds@88888888 #客户端连接服务端的密码
2、内网跳板机,配置客户端frpc.ini
[common]
server_addr = 81.70.5.18 #frps服务端的公网IP(腾讯云服务器公网ip)
server_port = 7000 #frps服务端的端口
token = cjjs@88888888
[rdp]
type = stcp
sk = abcdefg #只有sk一致的用户才能访问到此服务
local_ip = 127.0.0.1
local_port = 3389 #远程桌面的本地端口地址
3、本地电脑,配置客户端frpc.ini
[common]
server_addr = 81.70.5.18 #frps服务端的公网IP(腾讯云服务器公网ip)
server_port = 7000 #frps服务端的端口
token = cjjs@88888888
[rdp_visitor]
type = stcp
role = visitor #stcp的访问者
server_name = rdp #要访问stcp的代理名字
sk = abcdefg #只有sk一致的用户才能访问到此服务
bind_addr = 127.0.0.1 #绑定本地ip、端口,用于访问远程桌面服务
bind_port = 6000
4、在本地电脑打开远程桌面服务,输入127.0.0.1:6000,即可访问内网跳板机上的远程服务。
2.5 XTCP配置
XTCP 的配置方式和STCP很类似;但是会采用P2P的方式进行打洞穿透,如果成功,后续的流量将不会经过frps,而是直接通信,不再受到frps所在服务器的带宽限制。
1、公网服务器,配置服务端frps.ini
[common]
bind_port = 7000 #frps服务端的端口
token = cjjs@88888888 #客户端连接服务端的密码
2、内网跳板机,配置客户端frpc.ini
[common]
server_addr = 81.70.5.18 #frps服务端的公网IP(腾讯云服务器公网ip)
server_port = 7000 #frps服务端的端口
token = cjjs@88888888
[rdp]
type = xtcp
sk = abcdefg #只有sk一致的用户才能访问到此服务
local_ip = 127.0.0.1
local_port = 3389 #远程桌面的本地端口地址
3、本地电脑,配置客户端frpc.ini
[common]
server_addr = 81.70.5.18 #frps服务端的公网IP(腾讯云服务器公网ip)
server_port = 7000 #frps服务端的端口
token = cjjs@88888888
[rdp_visitor]
type = xtcp
role = visitor #stcp的访问者
server_name = rdp #要访问stcp的代理名字
sk = abcdefg #只有sk一致的用户才能访问到此服务
bind_addr = 127.0.0.1 #绑定本地ip、端口,用于访问远程桌面服务
bind_port = 6000
4、在本地电脑打开远程桌面服务,输入127.0.0.1:6000,即可访问内网跳板机上的远程服务。
3、各服务访问方式
(1)SSH访问方式:
ssh root@81.70.5.18 -p 30000 (mobaxterm 登录方式,30000为客户端映射的端口,81.70.5.18 为腾讯云服务器ip。)
(2)RDP(远程桌面)访问方式:
win系统下打开远程桌面:输入81.70.5.18 :30001 #30001为客户端映射的端口,181.70.5.16 为腾讯云服务器ip。
(3)Web访问方式:
打开浏览器,输入 81.70.5.18 :30003 #30003为vhost_https_port映射的端口,即客户端配置的远程端口;
4、frp加入开机启动服务
1、frps加入开机启动服务
tar -zxvf frp.tar.gz -C ./
mkdir /etc/frp
cp frp_0.37.1_linux_386/frps /usr/bin/frps
cp frp_0.37.1_linux_386/frps.ini /etc/frp/frps.ini
cp frp_0.37.1_linux_386/systemd/frps.service /usr/lib/systemd/system/frps.service
systemctl status frps.service
systemctl start frps.service
2、frpc加入开机启动服务
tar -zxvf frp.tar.gz -C ./
mkdir /etc/frp
cp frp_0.37.1_linux_386/frpc /usr/bin/frpc
cp frp_0.37.1_linux_386/frpc.ini /etc/frp/frpc.ini
cp frp_0.37.1_linux_386/systemd/frpc.service /usr/lib/systemd/system/frpc.service
systemctl status frpc.service
systemctl start frpc.service
相关推荐
- 提高购票成功率!官方“捡漏神器”,收藏!
-
清明小长假火车票已全部开售您买好假期出行的车票了吗?如果还没有买到的话不妨试试官方“捡漏神器”铁路12306的候补购票功能候补购票说明每个用户同时可以保有6个待兑现候补订单;每个候补订单最多可选择3个...
- 手把手教你用官方“捡漏神器”!提高购票成功率的秘诀在这
-
清明小长假火车票已全部开售您买好假期出行的车票了吗?...
- 微信里隐藏一个免费存放照片的相册,不占手机内存,不会用太浪费
-
才发现,不知道太可惜了,手机里有个免费存放照片的相册,你知道吗?简单一学就会,可惜好多人不知道,这个相册有三大优点:一就是免费长期使用二就是不占手机内存三就是无限次的上传...
- 速存!2025 教资笔试报名照片上传规范细则
-
教资报名卡在照片环节?!照片不合规直接导致报名失败,务必按这5点:1.基本要求:近6个月内免冠正面证件照,清晰无遮挡!2.尺寸要求:295像素(宽)*413像素(高)3.大小要求:文件不能超过...
- 微信新功能:朋友圈支持图片、表情包评论
-
不知道大家是否还记得,在2019年12月期间微信朋友圈评论支持发送自定义表情包,这个当时我也为大家分享过,只不过该功能在上线后没多久就下线了,具体原因未知,但我个人猜测可能跟一些用户发送的图片...
- 全红婵更新抖音动态,上传12张照片,第一张就是妹妹戴眼镜的合照
-
全红婵都抖音动态终于更新了,一共上传十二张照片,第一张就是和妹妹一起游玩戴眼镜的合照,还有婵宝的美甲照片全红婵刚发的新照片炸出一堆粉丝!首图就是她和妹妹戴着3D眼镜,头靠头贴在一起,口罩都挡不住姐妹...
- 女人给你发照片是暗示了什么?读懂背后心意,把握情感信号
-
在日常交流中,女人突然发来照片,看似随意的举动,可能暗藏深意。了解这些照片背后的暗示,不仅能让你更懂她的想法,还能更好地把握彼此之间的情感走向。接下来,就为你解析女人发照片背后的多种潜在含义。一、分享...
- 微信朋友圈评论区迎来大更新:支持发图片和动图
-
最近,不少用户发现微信正在悄悄上线一个全新功能——...
- 有这个神器,插入500个员工照片只需1分钟
-
如下图,是一份模拟的员工档案表,需要根据A列的员工姓名,在C列插入对应的员工照片:...
- 上传模特和商品图片,就能自动合成带货展示视频!
-
上传一张模特照片,再上传一张产品照片,就可以直接生成这种AI数字人带货的展示视频。这就是微度最近上线的主体库功能。·只需要在微度里面找到参考生视频的功能,选择主体库,把自己常用的模特照片和商品图片上传...
- 微信朋友圈终于可以发图片评论了!这次是灰度测试,你中招了吗?
-
微信近期悄然上线了一项全新功能——朋友圈评论可发图片!尽管当下仅在部分iOS用户群体中开展测试,但已有不少用户开始尝鲜使用。该功能最早于2019年曾短暂亮相,后因审核方面的问题而被下线,如今再度回归大...
- 2025税务师报名照上传必看:详细要求+手机制作全攻略
-
一、2025年税务师考试报名时间网上报名时间:2025年5月6日-7月15日...
- 前端移动端上传图片pc端如何实时获取
-
在一个前后端分离的项目中,如果你希望前端移动端上传图片后,PC端能实时获取这张图片,通常有几种实现方式:一、使用轮询(简单但不是实时)PC端每隔几秒请求一次服务器,看是否有新图片。...
- 上传照片文件大小超过了规定的大小怎么办?一招教你搞定!
-
上传照片文件大小如果超过了规定大小怎么办?比如上传照片,首先原始图像的大小多大?把光标放在图片上面,可以直接显示大小是二百四十六,也可以选中图片按右键,属性也可以查看图像大小,属性里面也可以,但也可以...
- 用最简单的方法给手机照片添加文字!雷哥手把手教你2分钟搞定
-
用最简单的方法给手机照片添加文字!雷哥手把手教你2分钟搞定...