Skip to content

Commit

Permalink
update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
fatedier committed Jul 1, 2023
1 parent 7f713f0 commit 636adff
Show file tree
Hide file tree
Showing 11 changed files with 73 additions and 16 deletions.
6 changes: 3 additions & 3 deletions content/zh-cn/_index.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,15 @@
<a class="btn btn-lg btn-secondary mr-3 mb-4" href="https://github.com/fatedier/frp">
GITHUB <i class="fab fa-github ml-2 "></i>
</a>
<p class="lead mt-5">frp 支持多种代理类型,为不同场景下的需求提供丰富的解决方案。</p>
<p class="lead mt-5">frp 支持多种代理类型以及 P2P 通信,为不同场景下的需求提供丰富的解决方案。</p>
{{< blocks/link-down color="info" >}}
</div>
{{< /blocks/cover >}}


{{% blocks/lead color="primary" %}}
frp 采用 C/S 模式,将服务端部署在具有公网 IP 的机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,反向代理到处于内网的服务。
在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。
在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。此外,还可以通过 xtcp 实现 P2P 通信。
{{% /blocks/lead %}}

{{< blocks/section color="white">}}
Expand All @@ -35,6 +35,6 @@


{{% blocks/feature icon="fab fa-weixin" title="交流" url="https://t.zsxq.com/eUvBMrZ" %}}
加入知识星球兴趣圈 [frp](https://t.zsxq.com/eUvBMrZ) 和开发者共同交流
付费加入知识星球兴趣圈 [frp](https://t.zsxq.com/eUvBMrZ) 寻求更多帮助
{{% /blocks/feature %}}
{{< /blocks/section >}}
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/dns.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "转发 DNS 查询请求"
weight: 4
weight: 20
description: >
这个示例通过简单配置 UDP 类型的代理转发 DNS 查询请求。
---
Expand Down
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/https2http.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "为本地 HTTP 服务启用 HTTPS"
weight: 7
weight: 35
description: >
通过 `https2http` 插件可以让本地 HTTP 服务转换成 HTTPS 服务对外提供。
---
Expand Down
52 changes: 52 additions & 0 deletions content/zh-cn/docs/Examples/multiple-ssh-over-same-port.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: "多个 SSH 服务复用同一端口"
weight: 10
description: >
这个示例通过 tcpmux 类型的代理,实现多个 ssh 服务通过同一个端口暴露。与此类似,只要是能够支持 HTTP Connect 代理连接方式的客户端,都可以通过这种方式来实现对端口的复用。
---

1. 在具有公网 IP 的机器上部署 frps,修改 frps.ini 文件,这里使用了最简化的配置:

```ini
[common]
bind_port = 7000
tcpmux_httpconnect_port = 5002
```

2. 在内网机器 A 上部署 frpc,配置文件:

```ini
[common]
server_addr = x.x.x.x
server_port = 7000

[ssh1]
type = tcpmux
multiplexer = httpconnect
custom_domains = machine-a.example.com
local_ip = 127.0.0.1
local_port = 22
```

3. 在内网机器 B 上部署另一个 frpc,配置文件:

```ini
[common]
server_addr = x.x.x.x
server_port = 7000

[ssh2]
type = tcpmux
multiplexer = httpconnect
custom_domains = machine-b.example.com
local_ip = 127.0.0.1
local_port = 22
```

4. 通过 SSH ProxyCommand 访问内网机器 A,假设用户名为 test:

`ssh -o 'proxycommand socat - PROXY:x.x.x.x:machine-a.example.com:22,proxyport=5002' test@machine-a`

访问内网机器 B,区别只在于域名不同,假设用户名为 test:

`ssh -o 'proxycommand socat - PROXY:x.x.x.x:machine-b.example.com:22,proxyport=5002' test@machine-b`
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/ssh.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "通过 SSH 访问内网机器"
weight: 2
weight: 5
description: >
这个示例通过简单配置 TCP 类型的代理让用户访问到内网的服务器。
---
Expand Down
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/static-file.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "对外提供简单的文件访问服务"
weight: 6
weight: 30
description: >
这个示例通过配置 `static_file` 客户端插件来将本地文件暴露在公网上供其他人访问。
---
Expand Down
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/stcp.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "安全地暴露内网服务"
weight: 8
weight: 40
description: >
这个示例将会创建一个只有自己能访问到的 SSH 服务代理。
---
Expand Down
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/unix-domain-socket.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "转发 Unix 域套接字"
weight: 5
weight: 25
description: >
这个示例通过配置 Unix域套接字客户端插件来通过 TCP 端口访问内网的 Unix域套接字服务,例如 Docker Daemon。
---
Expand Down
6 changes: 5 additions & 1 deletion content/zh-cn/docs/Examples/vhost-http.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
---
title: "通过自定义域名访问内网的 Web 服务"
weight: 3
weight: 15
description: >
这个示例通过简单配置 HTTP 类型的代理让用户访问到内网的 Web 服务。
---

HTTP 类型的代理相比于 TCP 类型,不仅在服务端只需要监听一个额外的端口 `vhost_http_port` 用于接收 HTTP 请求,还额外提供了基于 HTTP 协议的诸多功能。

HTTPS 与此类似,但是需要注意,frp 的 https 代理需要本地服务是 HTTPS 服务,frps 端不会做 TLS 终止。也可以结合 https2http 插件来实现将本地的 HTTP 服务以 HTTPS 协议暴露出去。

1. 修改 frps.ini 文件,设置监听 HTTP 请求端口为 8080:

```ini
Expand All @@ -15,6 +17,8 @@ HTTP 类型的代理相比于 TCP 类型,不仅在服务端只需要监听一
vhost_http_port = 8080
```

https 代理的话需要配置 `vhost_https_port`。

2. 修改 frpc.ini 文件,假设 frps 所在的服务器的 IP 为 x.x.x.x,`local_port` 为本地机器上 Web 服务监听的端口, 绑定自定义域名为 `custom_domains`。

```ini
Expand Down
2 changes: 1 addition & 1 deletion content/zh-cn/docs/Examples/xtcp.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "点对点内网穿透"
weight: 9
weight: 45
description: >
这个示例将会演示一种不通过服务器中转流量的方式来访问内网服务。
---
Expand Down
11 changes: 6 additions & 5 deletions content/zh-cn/docs/Overview/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,19 @@ description: >

## frp 是什么?

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

## 为什么使用 frp?

通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:

* 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。
* 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。
* 客户端服务端通信支持 TCP、QUIC、KCP 以及 Websocket 等多种协议。
* 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间,降低请求延迟
* 代理组间的负载均衡。
* 端口复用,多个服务通过同一个服务端端口暴露。
* 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
* 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。
* 支持 P2P 通信,流量不经过服务器中转,充分利用带宽资源。
* 多个原生支持的客户端插件(静态文件查看,HTTPS/HTTP 协议转换,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
* 高度扩展性的服务端插件系统,易于结合自身需求进行功能扩展。
* 服务端和客户端 UI 页面。

## 下一步?
Expand Down

0 comments on commit 636adff

Please sign in to comment.