给 Frp 穿透的内网 Web 上 https

良许Linux

共 1352字,需浏览 3分钟

 ·

2020-11-13 12:58


2020年了,谁还没有个https呢,不上SSL证书就out了






Nginx


第一方法是在服务器端使用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,


[common]
bind_port = 7000
token=12310086N

vhost_http_port = 80
vhost_https_port = 443
<以上代码可复制粘贴,可往左滑>
frps执行修改过的配置文件,注意防火墙或者宝塔放行对应的端口。
./frps -c frps.ini
<以上代码可复制粘贴,可往左滑>



内网http响应
此时我的一个192.168.0.156的内网 8000端口存在http的响应页面。






内网frpc配置


frpc.ini配置根据自己情况修改,证书配置"plugin_crt_path"、"plugin_key_path"使用的是对应域名的nginx的证书。"plugin_local_addr"就是内网对应的http响应端口


[common]
server_addr = 服务器IP
bind_port = 7000
token=12310086N

[test_htts2http]
type = https
custom_domains = 域名

plugin = https2http
plugin_local_addr = 127.0.0.1:8000

# HTTPS 证书相关的配置
plugin_crt_path = ./ssl/server.crt
plugin_key_path = ./ssl/server.key
plugin_host_header_rewrite = 127.0.0.1
plugin_header_X-From-Where = frp
<以上代码可复制粘贴,可往左滑>
./frpc -c frpc.ini
<以上代码可复制粘贴,可往左滑>



frps端也多了一条连接信息



访问


配置上的域名解析到服务器的ip上,访问域名效果


良许个人微信


添加良许个人微信即送3套程序员必读资料


→ 精选技术资料共享

→ 高手如云交流社群





本公众号全部博文已整理成一个目录,请在公众号里回复「m」获取!

推荐阅读:

雷军1994年写的诗一样的代码,我把它运行起来了!

Linux 网络状态工具 ss 命令使用详解

先说好,千万别用这个App做坏事


5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「1024」,即可免费获取!!


浏览 27
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报