我们上一大章介绍了Kubernetes的知识,本章节我们进入中间件的讲解,这里会包含很多不同的类型组件,中间件的第一个大类我这里定义的是Web服务器。由于目前使用最广泛的Web服务器是Nginx,所以我们这里的讲解主要以Nginx服务器为主。
前面我不是购买了2台服务器吗,都是放在家里的,如果在外面想用的时候不是很方便。同理如果是公司内网的测试服务器,也需要远程访问,正常的公司或者家里一般都没有固定公网的能力,所以默认情况下是无法访问的。
当然市面上也有类似花生壳的内网穿透工具,但是他是有流量限制(免费版),当然目前市面还有一类产品就是厂商提供的NAS,也具有内网穿透能力。只是他只能访问到NAS的内容。
FRP(Fast Reverse Proxy) 是一个开源的高性能反向代理工具,通过将内网服务映射到公网服务器(FRPS 服务端),实现外网用户访问内网资源(如网站、数据库、远程桌面等)。他需要有一个具有公网能力的服务器才可以实现,结合新用户在各大云厂商基本上只有几十块就可以买1年。
二、FRP 内网穿透的部署
FRPS(服务端)
#下载并解压
wget https://github.com/fatedier/frp/releases/download/v0.60.0/frp_0.60.0_linux_amd64.tar.gz
tar xvf frp_0.60.0_linux_amd64.tar.gz
vi frps.ini
[common]
#监听端口,客户端连接需要
bind_port = 9527
max_pool_count = 50
#和客户端保证一致
token = xxxxxxxx
tcp_mux = true
log_file = /usr/local/frp/frps.log
log_level = info
log_max_days = 3
authentication_timeout = 0
privilege_mode = true
#具体以现场路径为准
/usr/local/frp/frps -c /usr/local/frp/frps.ini
FRPC(客户端)
同样参考服务端的方式进行下载解压,注意配置文件的名字。
vi frpc.ini
[common]
#服务器的ip和端口,云服务器需要注意端口放通安全组
server_addr = xx.xx.xx.xx
server_port = 9527
#token和服务器保持一致
token = xxxxxx
tcp_mux = true
log_file = /usr/local/frp/frpc.log
log_level = info
log_max_days = 3
authentication_timeout = 0
# 服务器与客户端时间相差15min会连接失败,0表示不验证
# 添加ssh节点
# 这里就是本地的服务端口和远程服务器的端口
[ssh]
type = tcp
local_ip = 192.168.31.198
local_port = 22
remote_port = 9528
#具体路径以现场未准
/usr/local/frp/frpc -c /usr/local/frp/frpc.ini
简单点来说,这样配置以后,本地的192.168.31.198服务器的22端口就会通过公网服务器9528端口暴露出去,我们通过连接到服务器9528端口(注意安全组)就可以连接到我们内网的ssh端口。
这里我映射的TCP的流量,实际上它还可以映射HTTP的流量(也就是可以通过域名访问到内网的服务器)。
特别注意:内网映射以后,公网就可以访问到你的服务器,所以需要考虑安全因素,当然我也没什么重要数据,下面2条是我采用的安全措施,可供参考。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有