首页 > 其他分享 >frp内网穿透的配置与设置

frp内网穿透的配置与设置

时间:2024-12-08 09:28:54浏览次数:10  
标签:frp 端口 穿透 FRP ini 公网 内网 port 服务端

FRP(Fast Reverse Proxy)是一个高性能的反向代理应用,可以实现内网穿透功能。它帮助你将内网的服务暴露到公网,无需公网IP和端口映射,非常适合需要穿透防火墙、NAT的场景。以下是 FRP 内网穿透的配置和设置方法。bf86c223feb745c2bd7076dc5a80597e.png

### 环境准备

- **FRP 服务端(frps)**:运行在公网服务器上,负责接收内网客户端的请求并转发。
- **FRP 客户端(frpc)**:运行在内网机器上,负责将内网的服务暴露到公网。

你需要一台公网服务器(VPS 或其他有公网 IP 的服务器)来部署 `frps`,以及你想要穿透的内网机器来运行 `frpc`。

### 步骤 1:下载 FRP

首先,去 [FRP GitHub 页面](https://github.com/fatedier/frp)下载适合你操作系统的 FRP 版本。

你可以在 FRP 官网或者 GitHub 页面上找到最新的版本,下载后解压。

### 步骤 2:配置 FRP 服务端(frps)

1. **编辑服务端配置**:在公网服务器上创建 `frps.ini` 文件,配置 FRP 服务端的参数。

```ini
# frps.ini (服务端配置)

[common]
bind_port = 7000  # FRP 服务端监听的端口
bind_udp_port = 7001  # UDP 端口(可选)
vhost_http_port = 8080  # HTTP 协议的虚拟主机端口
vhost_https_port = 443  # HTTPS 协议的虚拟主机端口(可选)
dashboard_port = 7500  # Web Dashboard 的端口(可选)
dashboard_user = admin  # Dashboard 用户名
dashboard_pwd = admin   # Dashboard 密码


```

- `bind_port`: 服务端监听的端口,客户端通过此端口与服务端通信。
- `vhost_http_port`: FRP 服务端暴露 HTTP 服务的端口。
- `dashboard_port`: 可选的 Web Dashboard 端口,用于监控 FRP 服务状态。

2. **启动 FRP 服务端**:
   
   使用命令启动 `frps` 服务端:
   
   ```bash

   ./frps -c frps.ini


   ```

   此时 FRP 服务端将开始监听并等待客户端连接。

### 步骤 3:配置 FRP 客户端(frpc)

1. **编辑客户端配置**:在内网机器上创建 `frpc.ini` 文件,配置要暴露的服务。```ini
# frpc.ini (客户端配置)

[common]
server_addr = x.x.x.x  # 公网服务器 IP 地址
server_port = 7000      # 与服务端配置中的端口一致

[web]
type = http
local_ip = 127.0.0.1   # 内网服务的 IP
local_port = 80        # 内网服务的端口
remote_port = 8080     # 映射到公网的端口


```

- `server_addr`: 你公网服务器的 IP 地址。
- `server_port`: 服务器端口,通常是 `7000`,与你在服务端配置中的 `bind_port` 一致。
- `[web]` 部分:表示将本地的 HTTP 服务(80端口)暴露到公网的 8080 端口。
  - `local_ip`: 内网服务所在机器的 IP 地址,通常是 `127.0.0.1`。
  - `local_port`: 内网服务监听的端口。
  - `remote_port`: 公网服务器上暴露的端口。

2. **启动 FRP 客户端**:
   
   使用以下命令启动客户端:

   ```bash

   ./frpc -c frpc.ini


   ```

   客户端启动后,将自动连接到 FRP 服务端,并将配置的服务暴露到公网服务器上。

### 步骤 4:访问内网服务

- 通过浏览器访问 `http://<公网IP>:8080`(假设你设置了 8080 端口),就可以访问内网的 HTTP 服务。
  
### 步骤 5:(可选)使用 Web Dashboard

FRP 提供了一个 Web 界面(Dashboard)来监控和管理连接。你可以在服务端配置中启用 Dashboard,然后通过浏览器访问:

```bash

http://<公网IP>:7500


```

登录使用你在 `frps.ini` 配置文件中设置的用户名和密码。

### 示例配置总结

#### 服务端 `frps.ini`:

```ini

[common]
bind_port = 7000
vhost_http_port = 8080
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin


```

#### 客户端 `frpc.ini`:```ini

[common]
server_addr = <公网服务器IP>
server_port = 7000

[web]
type = http
local_ip = 127.0.0.1
local_port = 80
remote_port = 8080


```

### 注意事项

1. **防火墙设置**:确保服务端的 `7000`、`8080` 端口以及你希望暴露的其他端口没有被防火墙阻塞。
   
2. **安全性**:可以通过配置 SSL、JWT 或其他认证机制来保护你的 FRP 连接,避免不受信的访问。

3. **持久化运行**:你可以使用 `systemd` 或其他进程管理工具来确保 FRP 客户端和服务端在服务器重启后自动启动。

4. **多端口支持**:FRP 可以暴露多个端口,你可以通过多个 `[section]` 来配置不同的服务。例如,你可以暴露 SSH 服务、数据库服务等。

### 进阶配置

1. **TCP 映射**:

   如果你想通过 FRP 映射一个 TCP 服务(比如数据库),你可以配置如下:

   ```ini

   [mysql]
   type = tcp
   local_ip = 127.0.0.1
   local_port = 3306
   remote_port = 6000


   ```

   这样,外部可以通过 `公网IP:6000` 访问内网的 MySQL 服务。

2. **UDP 映射**:

   FRP 也支持 UDP 映射。配置方式和 TCP 类似:

   ```ini

   [game]
   type = udp
   local_ip = 127.0.0.1
   local_port = 12345
   remote_port = 12345


   ```

### 总结ae81eb1fc3f74bcc8d1baea44b8cdfc5.png

FRP 是一个非常轻量且功能强大的内网穿透工具,可以帮助你轻松地将内网服务暴露到公网。通过配置服务端和客户端,你可以在几分钟内搭建起一个可靠的内网穿透解决方案。

 

标签:frp,端口,穿透,FRP,ini,公网,内网,port,服务端
From: https://blog.csdn.net/qq_33665793/article/details/144245705

相关文章

  • 内网渗透——NC隧道_网络隧道
    目录1.隧道定义2.NC2.1.环境搭建2.2.实验步骤2.2.1正向连接2.2.2反向连接1.隧道定义什么是隧道?隧道是一种绕过端口屏蔽的通信方式常见的隧道网络层:IPV6、imcp、gre隧道传输成:tcp、udp、常规端口转发应用层:ssh、http、https、dns隧道2.NCNCNetcat(简称NC......
  • 隧道穿透技术中的 - 何为正向连接 何为反向连接 何为端口转发 一次性给你说明白 !!!
    简单知道一下扫描是隧道穿透 从技术层面来讲,隧道是一种通过互联网基础设施在网络之间传递数据的方式涉及从数据封装、传输到解包的全过程使用隧道传递的数据(或负载)可以使用不同协议的数据帧或包假设我们获取到一台内网主机的权限,希望将这台主机作为跳板,通过外网主机访......
  • 内网加载 Docker 镜像以及使用 Flask 封装接口
    Author:ACatSmilingSince:2024-11-23内网机加载Docker镜像,并使用Flask封装接口。此步骤针对内网机,首先,上传打包好的基础镜像文件到服务器,然后加载。[root@zeloud~]#dockerload-isimilar.tar9853575bc4f9:Loadinglayer[==================================......
  • NAT介绍以及穿透各种类型nat的技术实现包括对称型nat
     穿透各种类型nat的技术实现包括对称型nat,对于对称型nat,我们采用猜端口方式确定彼此nat后的分配所得端口号,测试数据可达95%以上的成功率。NAT介绍NAT(NetworkAddressTranslation)即网络地址转换技术。是为了解决IP地址不够用而产生的路由器解决方案。路由器内部的局域网内的......
  • 免费内网穿透,了解下?手把手搭建,三步搞定!网络安全零基础入门到精通实战教程!
    在内网部署的一个应用,想分享给外网的小伙伴玩玩?学校实验室有一台高性能服务器,在外网就无法使用?来吧,内网穿透,了解一下?1.关于内网穿透1.1什么是内网穿透且看百度百科的说法:内网穿透,也即NAT穿透,进行NAT穿透是为了使具有某一个特定源IP地址和源端口号的数据包不......
  • div等元素如何阻止点击穿透和实现点击穿透?
    在前端开发中,阻止点击穿透(也称为点击吞噬)和实现点击穿透是常见的需求,尤其是在处理叠加元素(例如弹出层、模态框)时。div元素本身并没有直接的“阻止点击穿透”或“实现点击穿透”属性。我们需要结合CSS和JavaScript来实现这些效果。1.阻止点击穿透(防止点击底层元素):几种......
  • ISUP协议视频平台EasyCVR视频设备轨迹回放平台安防监控中P2P的穿透方法
    在现代视频监控领域,尤其是ISUP协议视频平台EasyCVR这样的跨区域网络化视频监控集中管理平台中,实现远程访问和数据传输的高效性至关重要。P2P(Peer-to-Peer)穿透技术因其在NAT(网络地址转换)环境下的高效性和稳定性,成为了实现远程监控的关键技术之一。本文将探讨P2P穿透技术的原理、应......
  • ssh 隧道 只需要一台中间服务器(带外网)实现内网穿透
    ssh隧道只需要一台中间服务器(带外网)实现内网穿透ssh隧道把服务器上的请求转发到本地,把本地请求转发到服务器把本地端口-L选项用于本地(Local)-R选项用于远程(Remote)1.开启服务器ssh网关功能修改/etc/ssh/sshd_config文件,将GatewayPorts修改为yes,并放开AllowAgentForwa......
  • 【kali笔记】MSF内网渗透,手把手教你如何免杀过360!
    ~勤奋刻苦,成就未来~1、TCP与UDP区别总结?TCP面向连接(如打电话要先拨号建立连接)提供可靠的服务;UDP是无连接的,即发送数据之前不需要建立连接,;UDP尽最大努力交付,即不保证可靠交付。(由于UDP无需建立连接,因此UDP不会引入建立连接的时延,TCP需要在端系统中维护连接状态,比如接受......
  • NEU校月赛靶机渗透 (内网渗透)
    一、题目背景:[]作为渗透测试工程师,前期你通过信息收集获取到靶标无人值守的运维机的向日葵凭证。请你通过该运维机作为跳板进行内网渗透。本题有三个flag,flag1在DMZ区web服务器普通用户桌面上,flag2在DMZ区web服务器管理员用户文件夹中,flag3在核心数据网的文件服务器的C:\fla......