IT男的VPS系列教程 篇九:用frp的socks5/http插件进一步简化访问
创作立场声明:本人在数码领域全凭爱好,但能力有限,如有不当欢迎指出。
需求
frp的稳定性和功能强大有目共睹,我也是长期使用frp,用来穿透家里的各种服务。frp最基础的服务就是http/tcp服务穿透,但是我们通常遇见的问题是,这类服务一般都需要利用一个域名来穿透。
如果不清楚frp的可以看我之前的教程
那么问题来了,我家里的服务实在是太多了,光是群晖就是好几个端口,而且每周都有新增的项目上线,但是每次都要去做穿透,非常麻烦,而且通常一个服务有多个端口,需要多N多个穿透。
frp又很麻烦的不能再服务端操控,每次都要到客户端完成。而且域名多了长度又长,非常难记,比如要记住xxx.xxx.com:xxxx,难道就不能直接访问192.168.1.x吗?
http/socks5插件
那么到底能不能一次操作?能不能直接通过内网ip+端口的形式访问?
当然可以,就是利用frp的http插件和sock5的插件,可以直接输入家里内网的IP访问,不许需要访问穿透域名。
插件模式是为了在客户端提供更加丰富的功能,目前内置的插件有 unix_domain_socket、http_proxy、socks5、static_file。具体使用方式请查看使用示例。
通过 plugin 指定需要使用的插件,插件的配置参数都以 plugin_ 开头。使用插件后 local_ip 和 local_port 不再需要配置。
通过frp的这个插件,不论内网项目增加、端口变化都不用再去修改frp配置,连域名都省了,一切就像是在内网中一样。
在客户端加以下穿透项目:
[http-proxy]
type = tcp
remote_port = 1090
plugin = http_proxy
plugin_http_user = abc
plugin_http_passwd = abc123
格式的话和正常的frp穿透是一样的,增加了plugin、plugin_http_user 、plugin_http_passwd三个参数。后两个参数是可选的,可以不填,不过为了避免被扫描到滥用,还是填上吧。
访问家里HTTP(s)服务
如果需要访问群晖界面,地址填写公网服务器地址,端口填写1090,同时填写用户名和密码。
之后直接访问10.0.0.X:5000 ,就可以直接访问回家里的群晖。而之间我需要通过比如dsm.abc.com:5000这样的域名访问。
tcp访问
对于tcp访问,比如ssh,需要通过代理,比如xshell增加:
[http-proxy]
type = tcp
remote_port = 1091
plugin = socks5
plugin_http_user = abc
plugin_http_passwd = abc123
socks5是个透明代理,只是透明的传输数据,在Xshell中增加一个代理,用来访问1091端口。
一样填上主机端口和地址。
这样一来,内网项目增加、端口变化都不用再去修改frp配置,也不用再去买域名来穿透,一切就像是在内网中一样?
当然,有很多软件本身没有设置代理的地方,比如远程桌面,这时候需要Sockscap来代理,这里不做评价,可以自行百度。
群晖TT非
校验提示文案
jiaoting
校验提示文案
Ruicky
校验提示文案
买是不可能的只能看看
校验提示文案
落霞艳
校验提示文案
KingTam
校验提示文案
jiaoting
校验提示文案
jiaoting
校验提示文案
jiaoting
校验提示文案
lalalabalala
校验提示文案
lalalabalala
校验提示文案
jiaoting
校验提示文案
jiaoting
校验提示文案
jiaoting
校验提示文案
jiaoting
校验提示文案
群晖TT非
校验提示文案
KingTam
校验提示文案
落霞艳
校验提示文案
买是不可能的只能看看
校验提示文案
Ruicky
校验提示文案