frp: 内网穿透的瑞士军刀

frp: 内网穿透的瑞士军刀

frpDocker Images for Frp. (amd64, arm32v6, arm32v7, arm64v8, i386)项目地址:https://gitcode.com/gh_mirrors/frp/frp

项目介绍

frp 是一款简单而高效的内网穿透工具,它支持多种代理类型,包括但不限于TCP、UDP、HTTP、HTTPS,并且通过其P2P扩展xtcp,提供了更为灵活的通信方式。该工具基于客户端/服务器(C/S)架构设计,允许用户将位于内网或受防火墙保护的设备服务暴露给公网,从而轻松实现远程访问。frp以其丰富功能见长,如加密通信、压缩数据、身份验证、代理速率限制、负载均衡等,极大地满足了开发者和服务运维人员在不同场景下的需求。

快速启动

安装与部署

首先,从 GitHub Release 页面 根据你的操作系统和架构下载最新版的 frp。假设我们有一个具有公网IP的服务器A(运行服务端 frps)和一个位于局域网内的服务器B(运行客户端 frpc)。

服务端设置

在服务器A上执行:

# 解压并移动二进制文件到适当位置
tar xvzf frp_版本号_linux_amd64.tar.gz
mv frps frps.toml /usr/local/bin/

# 编辑配置文件,设定bindPort
echo 'bindPort = 7000' > /usr/local/bin/frps.toml

然后启动 frps

frps -c /usr/local/bin/frps.toml
客户端设置

在服务器B上,同样解压并移动二进制文件,编辑配置文件以连接服务端:

# frpc.toml
[common]
server_addr = "服务器A的公网IP"
server_port = 7000

[[proxies]]
type = "tcp"
local_ip = "127.0.0.1"
local_port = 22
remote_port = 6001

启动 frpc

frpc -c /path/to/frpc.toml

这样,你就能够通过SSH远程访问内网的服务器B了,使用命令 ssh 用户名@服务器A的公网IP -p 6001

应用案例和最佳实践

SSH访问内网机器

  • 场景描述:需要从外部网络访问内部服务器的SSH服务。
  • 实践步骤:参照快速启动中的配置,建立TCP代理,确保对外公布的端口(如6001)与配置文件中一致。

为Web服务配置自定义域名

  • 场景描述:使内网Web服务可通过特定域名访问。
  • 操作指南:配置vhostHTTPPort,并在客户端指定customDomains指向你的域名,确保DNS解析正确指向frps服务器的IP。

典型生态项目

frp因其灵活性被广泛应用于各种生态系统中,例如:

  • 微服务部署:作为桥梁,允许分散在各私有网络内的微服务相互访问或被集中管理。
  • IoT设备管理:使得远程监控和管理位于内网的物联网设备成为可能。
  • 家庭自动化:让家庭服务器的各类服务(如NAS、监控系统)通过公共互联网可访问。
  • 企业级应用:企业内外部资源的无缝对接,比如内部邮件、CRM系统的远程访问。

利用frp,无论是个人还是企业,都能有效打破网络隔离,简化服务部署与访问流程,提高工作效率。


以上就是围绕frp项目的简明教程,涵盖了基本的介绍、快速启动指导以及一些建议的应用场景,旨在帮助用户快速上手这个强大的内网穿透工具。

frpDocker Images for Frp. (amd64, arm32v6, arm32v7, arm64v8, i386)项目地址:https://gitcode.com/gh_mirrors/frp/frp

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霍璟尉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值