使用frp配置内网穿透:保姆级教程
创作时间:
作者:
@小白创作中心
使用frp配置内网穿透:保姆级教程
引用
CSDN
1.
https://blog.csdn.net/weixin_43213815/article/details/121336968
内网穿透技术在现代网络环境中扮演着重要角色,特别是在需要从外部访问内网资源时。本文将详细介绍如何使用frp这一开源工具实现内网穿透,包括其基础知识、使用场景、工作原理以及具体的配置步骤。
基础知识
什么是内网穿透
内网穿透是一种网络连接技术,主要用于在局域网内的设备与外网设备之间建立通信连接。其主要功能包括:
- 在端口映射时进行地址转换,将公网地址翻译为私有地址,并通过路由方式实现网络共享。
- 解决UDP数据传输不稳定的问题。
- 实现不同局域网设备之间的网络通信。
使用场景
内网穿透的主要应用场景包括:
- 不同局域网内的设备需要相互访问资源。
- 远程办公时需要访问公司内网资源。
- 在外网环境下访问内网中的特定服务(如Web服务、文件共享等)。
frp简介
frp是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持TCP、UDP、HTTP、HTTPS等多种协议。其GitHub项目主页为:https://github.com/fatedier/frp/
frp的作用
- 允许内网或防火墙后的设备对外网环境提供HTTP或HTTPS服务。
- 支持基于域名的虚拟主机,实现多个域名共用一个端口。
- 支持TCP和UDP服务,如通过SSH远程访问内网主机。
frp工作原理
- 服务端监听主端口,等待客户端连接。
- 客户端连接到服务端主端口,告知需要监听的端口和转发类型。
- 服务端fork新进程监听客户端指定的端口。
- 外网用户连接到客户端指定的端口,服务端通过与客户端的连接将数据转发到客户端。
- 客户端进程将数据转发到本地服务,实现内网对外暴露服务的能力。
实验环境准备
硬件环境
- 1台VPS:拥有公网地址(推荐使用阿里云VPS)
- 2台Linux/Windows虚拟机:作为内网机器
- 1台可联网的设备(如Kali Linux):用于测试
软件环境
- frp客户端和服务端软件
- SSH客户端(如PuTTY)
- 浏览器
VPS选择建议
对于初次购买VPS的用户,推荐选择阿里云的新人特惠套餐。具体链接如下:
域名购买
推荐使用阿里云万网进行域名购买,新用户可以享受优惠价格。具体链接如下:
https://wanwang.aliyun.com/domain/?spm=5176.10173289.0.0.2f6b2e77depa6w
实验环境配置
设备 | IP地址 | 说明 |
---|---|---|
Kali | 192.168.0.55 | 测试机(需能访问百度) |
Linux | 192.168.0.208 | 内网机器(Linux) |
Win7 | 192.168.0.213 | 内网机器(Windows) |
VPS | your-vps-ip | 服务端(公网机器) |
frp使用步骤
1. 服务端设置
1.1 下载和安装frp
SSH连接到VPS后,根据处理器架构下载相应的frp版本。以下是针对amd64架构的下载命令:
wget https://github.com/fatedier/frp/releases/download/v0.22.0/frp_0.22.0_linux_amd64.tar.gz
解压并重命名文件夹:
tar -zxvf frp_0.22.0_linux_amd64.tar.gz
cp -r frp_0.22.0_linux_amd64 frp
cd frp
1.2 配置frps.ini
编辑frps.ini文件,设置服务端参数:
[common]
bind_port = 7000
dashboard_port = 7500
token = 12345678
dashboard_user = admin
dashboard_pwd = admin
vhost_http_port = 10080
vhost_https_port = 10443
启动frps服务:
./frps -c frps.ini
正常启动后,可以通过浏览器访问x.x.x.x:7500
(其中x.x.x.x为VPS的IP)查看仪表板界面。
1.3 服务端后台运行
使用nohup命令将frps运行在后台:
nohup ./frps -c frps.ini &
2. 客户端设置
2.1 下载和安装frp客户端
根据客户端设备的情况选择相应的frp程序进行下载。下载链接:
https://github.com/fatedier/frp/releases
2.2 配置frpc.ini
编辑frpc.ini文件,设置客户端参数:
[common]
server_addr = x.x.x.x
server_port = 7000
token = 12345678
[rdp]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7001
[smb]
type = tcp
local_ip = 127.0.0.1
local_port = 445
remote_port = 7002
启动frpc服务:
frpc.exe
3. 结果测试
3.1 远程桌面测试
使用Kali Linux测试3389远程连接:
redesktop you-vps-ip:端口
3.2 Web服务测试
通过自定义域名访问部署于内网的Web服务:
- 修改frps.ini文件,设置http访问端口为8060:
[common]
bind_port = 7000
dashboard_port = 7500
token = 12345678
dashboard_user = admin
dashboard_pwd = admin
vhost_http_port = 8060
vhost_https_port = 8090
- 启动frps服务:
./frps -c ./frps.ini
- 修改frpc.ini文件,绑定自定义域名:
[common]
server_addr = your-vps-ip
server_port = 7000
token = 12345678
[web]
type = http
local_port = 8080
custom_domains = www.yourdomain.com
最后,可以在frp管理界面查看详细信息,包括流量和连接状态。
热门推荐
物流系统工程要素详解
苔球装饰的艺术:打造绿色生活的全面指南
孩子发音不清,不必焦虑!医生推荐的5种提升发音清晰能力训练方法
尘白禁区芙提雅缄默技能强度介绍
fc经典回合制游戏《最终幻想》的魅力回顾
揭秘干洗过程:从清洗原理到专业护理衣物的每一步
蒲黄:临床应用的宝藏
FSC森林认证是什么?FSC森林认证的优缺点是什么?
中国四大盆地探秘
头晕、眩晕傻傻分不清楚?一文带你走出误区!
物理竞赛 | 深入理解自然奥秘——IYPT全球青年物理学家挑战赛
十字路口上的转型阵痛:德国汽车工业前景展望
声音的听觉心理学:从情绪调节到音乐疗法
中国消防救援学院地址在哪里,哪个城市,哪个区?
2024年湖南专升本考情分析
近视防控新篇章:从任务到责任,全民共筑明亮未来
网络作家谈创作:自由生长,“出海”的无边界传播
华强北的未来:科技产业的摇篮与挑战
25年初的影视剧混战,被古偶仙侠困住的只有95花吗?
查理曼大帝:中世纪欧洲最具影响力的统治者
如何挑选一条真正适合自己的牛仔裤,这4个选款技巧请记住!
健身的好处:从身心蜕变到幸福人生的旅程
揭秘河北单招:哪些因素在左右录取分数线的波动?
楚国迁了那么多都城,为什么只有“郢都”成为楚人的精神象征?
逐梦七星海:探索柬埔寨滨海城市的旅游美景与精彩体验
浅说古籍影印本收藏投资价值
猫咪年龄对照表:猫咪年龄换算人类年龄完整解析与饲养建议
计算机专业毕业后,该去哪个城市发展?有哪些值得加入的公司?
为什么要学习数学/科学史?
双子座与天秤座的配对分析与相处之道