使用frp实现公网访问docker容器

累,折腾一上午,状况频发,总算是完成了

研究docker最开始的想法就是了解ctf的靶机是怎么一回事,对docker进行学习后想尝试实现在公网上访问我的容器,学长提到了frp,正好有个云服务器,来试一下。

其实是很简单的事情,概括来讲就三步

①服务器端安装开启frps

wget -c https://github.com/fatedier/frp/releases/download/v0.53.2/frp_0.53.2_linux_amd64.t

tar -xvf frp_0.53.2_linux_amd64.tar.gz

进入文件夹,frps.ini可以直接使用预设的内容,启动frps

./frps -c frps.ini

启动成功

(上文版本文件为.toml,我没有尝试成功,改为安装0.46.1版本的frp,该版本文件后缀为.ini,后续使用和编辑文件都是这个)

②客户端安装,编辑,开启frpc

客户端中同样安装,进入文件夹编辑frpc.ini

fprc.ini内容
[common]
server_addr = 服务器ip
server_port = 7000 #连接frp的端口

[http]
type = tcp
local_ip = 127.0.0.1
local_port = 本地连接的端口
remote_port = 6001 #公网访问的服务器端口

保存,启动frps

./frps -c frps.ini

启动成功

③docker-compose.yml中修改容器映射端口,重构容器并运行

在公网上访问 IP地址:对应端口 即可访问到容器内容

在手机上成功访问

是的,一开始看所有博客都没写多少,我也认为是很简单的事情,做的时候却感觉是不是写的太少了,但是等自己完成之后,发现写下来也确实只能写下这些东西

归根结底还是自己对于linux和服务器的操作不熟练,从git上下载内容和windows本地上传文件缺乏经验导致的

服务器的端口开启,远程连接编辑文件内容的vim编辑操作

linux系统文件操作命令

从本地向服务器上传文件

这里显示上传成功了,但我并没有找到、、、、、、

大概就这些吧,

目前还想了解的就是关于多靶机开启和随机flag生成的原理,还有dockerfile和docker-compose.yml文件的编写能玩出什么花

另外对于php代码的理解太浅了,根本没掌握php,还要多学,才能更好理解php代码审计和反序列化的题目

后续更多的应该是学习php和mysql,题目也要多写,虽然过程不是很顺,但完成的那一刻真的浑身成就感

不过现在先吃饭😋😋😋


评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注