返回介绍

客户端插件

发布于 2023-08-01 23:18:27 字数 3606 浏览 0 评论 0 收藏 0

默认情况下,frpc 只会转发请求到本地 TCP 或 UDP 端口,也就是通过 local_iplocal_port 指定的本地服务地址。

通过客户端插件的功能将一些简单的本地服务内置在 frpc 中,可以帮助用户在只启动 frpc 的情况下实现原本需要额外启动其他服务才能实现的功能。

在每一个代理的配置中,通过 plugin 指定需要使用的插件,插件的配置参数都以 plugin_ 开头。当启用客户端插件后,local_iplocal_port 不再需要配置。

客户端插件可以被应用在任意类型的代理中,但是需要插件本身的协议能够支持。例如静态文件访问插件可以通过 TCP 或者 HTTP 的代理暴露出去。

使用 http_proxy 插件的示例:

# frpc.ini
[http_proxy]
type = tcp
remote_port = 6000
plugin = http_proxy
plugin_http_user = abc
plugin_http_passwd = abc

plugin_http_userplugin_http_passwd 即为 http_proxy 插件可选的配置参数。

http_proxy

HTTP 代理插件,用于将内网机器作为 HTTP 代理暴露给其他服务,可以通过此代理访问到此内网机器能够访问到的其他服务。

参数可选描述
plugin_http_userHTTP 代理用户名
plugin_http_passwdHTTP 代理密码

socks5

SOCKS5 代理。

参数可选描述
plugin_user连接代理的用户名
plugin_passwd连接代理的密码

static_file

静态文件浏览服务,通过暴露一个简单的 HTTP 服务查看指定的目录下的文件。

参数可选描述
plugin_local_path要对外暴露的文件目录
plugin_strip_prefix用户请求的 URL 路径会被映射到本地文件,如果希望去除用户访问文件的前缀,需要配置此参数
plugin_http_userHTTP BasicAuth 用户名
plugin_http_passwdHTTP BasicAuth 密码

unix_domain_socket

代理本地 Unix 域套接字的服务。

参数可选描述
plugin_unix_path本地 Unix 域套接字地址

http2https

将本地的 HTTPS 服务以 HTTP 的形式暴露出去。

参数可选描述
plugin_local_addr本地服务地址
plugin_host_header_rewrite如果配置,发送给本地服务的请求的 Host 字段会被修改
plugin_header_{header name}发送给本地服务的请求会被加上指定的 header 字段

https2http

将本地的 HTTP 服务以 HTTPS 的形式暴露出去。

参数可选描述
plugin_local_addr本地服务地址
plugin_crt_pathHTTPS 所需的证书文件,如果 crt 和 key 都为空,则使用自动生成的证书
plugin_key_pathHTTPS 所需的密钥文件
plugin_host_header_rewrite如果配置,发送给本地服务的请求的 Host 字段会被修改
plugin_header_{header name}发送给本地服务的请求会被加上指定的 header 字段

https2https

将本地的 HTTPS 服务以 HTTPS 的形式暴露出去。

参数可选描述
plugin_local_addr本地服务地址
plugin_crt_pathHTTPS 所需的证书文件,如果 crt 和 key 都为空,则使用自动生成的证书
plugin_key_pathHTTPS 所需的密钥文件
plugin_host_header_rewrite如果配置,发送给本地服务的请求的 Host 字段会被修改
plugin_header_{header name}发送给本地服务的请求会被加上指定的 header 字段

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文