土豆不好吃

使用docker开NAT小鸡

文章目录[显示]

人们常说,「精神病人思路广,智障儿童欢乐多」。像我这种病得不轻的人,自然就在想有没有办法拿docker来开NAT小鸡呢?

Docker作为一种容器化技术,通过cgroup可以在一定程度上做到资源隔离,虽然不算虚拟化,但是也可以勉强开NAT小鸡玩玩。技术要点大概有如下:

容器sshd

N多年前,当我第一次接触到Docker时,我曾经在网络上搜索“如何ssh到容器内”。

(╯‵□′)╯︵┴─┴ 容器一般不是这么用的啦。

但既然开NAT小鸡,就必然要ssh进去了。通常来说就是在容器里安装配置sshd或者dropbear,然后把端口publish就可以了。直接&可不太好,更好的方案是我们需要一个守护进程。可以用Go port of supervisor,https://github.com/ochinchina/supervisord

映射端口

这个就简单了,跑容器的时候直接 -p就好了,由于是NAT小鸡,直接让docker随机分配端口岂不是更好!

docker run -p 22 image

限制资源

限制CPU和RAM比较容易,run的时候加上-cpus-m就可以了

限制磁盘比较麻烦,可以参考这篇 https://www.lizi.tw/web/21084.html

OS image

这个其实就是个手工活,写好Dockerfile,带好sshd,然后build就可以了。

然后到了真正要开小鸡的时候,一顿查之前的命令,不停地docker run xxx,有没有更好的、鼠标点点点的方案呢?答案当然是有的!

欢迎使用我fork之后魔改的Docker Web,真正实现了鼠标点点点即可开NAT小鸡的功能!

https://github.com/BennyThink/EasyDockerWeb

clone回来,yarn && yarn start,然后fab prepare(提前pip3 install fabric3)即可,默认用户名密码是admin/admin

在Image下面可以选择所有我构建好的image,用户名密码均为root/root

比如这里我们选择Kali,然后给这个小鸡开80和443端口,并映射到宿主机的随机端口,512M内存,0.5个CPU

点击确认,你的NAT小鸡就开好了!

点击确认

你的小鸡好了,赶快ssh一下?

选择Debian Sid,80-90端口

多么亦可赛艇!就是这么愉快!bug多也不修,能开小鸡就挺好

 


文章版权归原作者所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明原作者和本文原始地址:
https://dmesg.app/docker-nat-vps.html
退出移动版