当前位置: 首页 > news >正文

Overfrp内网穿透:使用域名将内网http/https服务暴露到公网

项目地址:https://github.com/sometiny/overfrp

使用overfrp部署穿透服务器,绑定域名后,可使用域名访问内网的http/https服务。

用例中穿透服务器和内网机器之间的访问全链路加密,具有ssh2相当的安全级别。
!!!由于内网服务会暴露到公网,请谨慎使用,防止内网资源泄露。!!!

1、启动穿透服务端

./overfrp-server server --listen "127.0.0.1:7659" --allow-register --suffix "local.locateat.net"#控制台输出类似如下内容:
#server started at: 127.0.0.1:7659
#HostKey指纹:ecdsa-sha2-nistp256 SHA256 Nu4RNSjbm9M9dJ9rZ4o887OgqYnl974gRVm+rBg3TKM
#HostKey指纹:ssh-rsa SHA256 Sv1nH+y8QYnvNGNRYz7woIexC0/RTjlgUdJYrRhqcIU

线上部署时需要指定--suffix为自己的域名,并增加一条带’*'的解析到自己的服务。

例如,解析*.local.locateat.net到你自己的服务器。

2、向服务端注册通道标识,用于发布服务,通道标识可复用,注册一次即可。

./overfrp-client register --server "127.0.0.1:7659"#控制台输入类似如下内容:
#通道注册成功,通道标识:EzwVZY2MtEyWmiaQ+3DvRw==
#标识已保存至:F:\xxxxx\.identifier

后续会用到通道标识,用于发布服务。

3、发布服务,--identifier指定前面注册的通道标识

./overfrp-client publish --server "127.0.0.1:7659" --identifier "EzwVZY2MtEyWmiaQ+3DvRw==" --target "www.baidu.com:443" --ssl-off-loading --keep-http-host#控制台输出类似如下内容:
#[*]frp server: 127.0.0.1:7659
#[*]frp publishing...
#[*]frp publish success
#[*]已绑定域名:
#http://www-baidu-com-443-2690fb70ef47.local.locateat.net:7659

浏览器访问 http://www-baidu-com-443-2690fb70ef47.local.locateat.net:7659 可正常打开baidu页面

  • 要用http地址去访问baidu的443端口,所以需要指定–ssl-off-loading来卸载baidu的ssl。

  • 浏览器默认发送的host头不是www.baidu.com,需要指定–keep-http-host保持–target中指定的host。

可使用--use-stored-identifier自动从通道标识文件读取标识,而不需要每次指定。

访问非https服务时,必须去掉--ssl-off-loading,例如映射本地80端口:

./overfrp-client publish --server "127.0.0.1:7659" --use-stored-identifier --target "127.0.0.1:80"

4、默认绑定域名为http协议,如果需要绑定https协议的域名,服务端启动时需要指定证书和私钥。

--certificate "./CERTIFICATE.cer"
--private-key "./CERTIFICATE.key"

域名绑定端口默认跟穿透服务器一样,可以使用--http-listen-at--https-listen-at,来指定不同的端口。

--http-listen-at "127.0.0.1:8080"
--https-listen-at "127.0.0.1:4343"
例如:如下服务端启动参数
./overfrp-server server \--listen "127.0.0.1:7659" \--allow-register \--suffix "local.locateat.net" \--certificate "./CERTIFICATE.cer" \--private-key "./CERTIFICATE.key" \--http-listen-at "127.0.0.1:8080" \--https-listen-at "127.0.0.1:4343"

使用overfrp-client publish发布服务时控制台可能输出如下内容:

[*]frp server: 127.0.0.1:7659
[*]frp publishing...
[*]frp publish success
[*]已绑定域名:
https://www-baidu-com-443-2690fb70ef47.local.locateat.net:4343
http://www-baidu-com-443-2690fb70ef47.local.locateat.net:8080

两个url均可正常访问baidu.com,注意端口已经变成43438080

5、publish支持最多32个--target

例如

./overfrp-client publish \
--server "127.0.0.1:7659" \
--identifier "EzwVZY2MtEyWmiaQ+3DvRw==" \
--target "www.baidu.com:443" --ssl-off-loading --keep-http-host \
--target "www.aliyun.com:443" --ssl-off-loading --keep-http-host \
--target "www.aliyun.com:80" --keep-http-host

控制台会有如下类似输出

[*]frp server: 127.0.0.1:7659
[*]frp publishing...
[*]frp publish success
[*]已绑定域名:
https://www-baidu-com-443-2690fb70ef47.local.locateat.net:4343
http://www-baidu-com-443-2690fb70ef47.local.locateat.net:8080
https://www-aliyun-com-443-2690fb70ef47.local.locateat.net:4343
http://www-aliyun-com-443-2690fb70ef47.local.locateat.net:8080
https://www-aliyun-com-80-2690fb70ef47.local.locateat.net:4343
http://www-aliyun-com-80-2690fb70ef47.local.locateat.net:8080

在这里插入图片描述


http://www.mrgr.cn/news/48527.html

相关文章:

  • org.apache.commons.lang3.tuple.Pair
  • 超纲了!什么是溢出字段?InnoDB是如何识别普通字段和溢出字段的?(附十张图、IBD文件解析、源码解析)
  • 关于安科瑞ABAT蓄电池在线监测系统的详细介绍-安科瑞 蒋静
  • c++关于内存的知识点上速成
  • MySQL 【日期】函数大全(二)
  • 【android studio】Gradle和Gradle插件版本关系和配置示例
  • 远程监控控制器(RMC)系统详解
  • 使用3080ti配置安装blip2
  • 面试技术点
  • Anaconda常用命令分享
  • 【Codeforces】CF 2020 D
  • plpo vue实战版教程
  • OAuth2.1的code_challenge和code_vertifier理解
  • 五子棋项目自动化测试
  • 电脑无线网wifi和有线网同时使用(内网+外网同时使用)
  • 【Linux 从基础到进阶】防止数据泄露的策略与工具
  • 【WebGIS】Cesium:天地图加载
  • 每日OJ题_牛客_比那名居的桃子_滑动窗口/前缀和_C++_Java
  • C语言—双链表
  • 科大讯飞嵌入式面试题及参考答案