给Frp穿透的内网Web上https
2020年了,谁还没有个https呢,不上SSL证书就out了
https://www.linuxprobe.com/wp-content/uploads/2020/09/2002cfa3215b7b79858e4ad8fb0a51d2.jpgNginx
第一方法是在服务器端使用Nginx。Nginx监听80和443端口,把来自域名的请求,通过Nginx的反向代理转发给frps监听的端口(比如7000),再由frps在转发给frpc处理http响应。在Nginx里配置上https证书,由Nginx实现ssl的加密解密。Nginx配置https证书和反向代理都是常规操作,不再做多余的演示。觉得麻烦用宝塔。frp的https配置
frp自身也可以配置上证书提供https服务,服务器frps就安心的做转发就好了。服务器端frps配置
在服务器端想用Nginx反向代理frps,一直没有测试成功。这里就让frps独占80和443端口。修改frps.ini,bind_port = 7000token=12310086Nvhost_http_port = 80vhost_https_port = 443frps执行修改过的配置文件,注意防火墙或者宝塔放行对应的端口。./frps -c frps.inihttps://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-23_19-01-01.png内网http响应
此时我的一个192.168.0.156的内网 8000端口存在http的响应页面。https://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-23_19-01-24.png
https://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-22_20-54-57.png内网frpc配置
frpc.ini配置根据自己情况修改,证书配置"plugin_crt_path"、"plugin_key_path"使用的是对应域名的nginx的证书。"plugin_local_addr"就是内网对应的http响应端口server_addr = 服务器IPbind_port = 7000token=12310086Ntype = httpscustom_domains = 域名plugin = https2httpplugin_local_addr = 127.0.0.1:8000# HTTPS 证书相关的配置plugin_crt_path = ./ssl/server.crtplugin_key_path = ./ssl/server.keyplugin_host_header_rewrite = 127.0.0.1plugin_header_X-From-Where = frp./frpc -c frpc.inihttps://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-23_19-01-18.pngfrps端也多了一条连接信息
https://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-23_19-02-00.png访问
配置上的域名解析到服务器的ip上,访问域名效果https://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-23_19-00-43.png
https://www.linuxprobe.com/wp-content/uploads/2020/09/Snipaste_2020-09-23_19-02-54.png
页:
[1]