服务器上线后,怎么发现总有个 xmrig 的容器在跑,删了还出来

那么恭喜你!!你的服务器已经被入侵了!!
$ docker ps
IMAGE               COMMAND                  CREATED           STATUS                           PORTS    NAMES
linuxrun/cpu2    "./xmrig --algo=cr...."    4 hours ago     Exited (137) 7 minutes ago                  linuxrun-cpu2
这就是有人在你的 Docker 宿主上跑了一个 xmrig 挖矿的蠕虫,因为你的系统被入侵了……
 
在你说 Docker 不安全之前,先检讨一下自己是不是做错了。
检查一下 dockerd 引擎是否配置错误:ps -ef | grep dockerd,如果你看到的是这样子的:
$ ps -ef | grep dockerd
123  root   12:34   /usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375
 
如果在其中没有 --tlsverify 类的 TLS 配置参数,那就说明你将你的系统大门彻底敞开了。这是配置上严重的安全事故。
-H tcp://0.0.0.0:2375 是说你希望通过 2375/tcp 来操控你的 Docker 引擎,但是如果你没有加 --tlsverify 类的配置,就表明你的意图是允许任何人来操控你的 Docker 引擎,而 Docker 引擎是以 root 权限允许的,
因此,你等于给了地球上所有人你服务器的 root 权限,而且还没密码。
 
如果细心一些,去查看 dockerd 的服务日志,journalctl -u docker,日志中有明确的警告,警告你这么配置是极端危险的:
$ journalctl -u docker
...
level=warning msg="[!] DON'T BIND ON ANY IP ADDRESS WITHOUT setting --tlsverify IF YOU DON'T KNOW WHAT YOU'RE DOING [!]"
...
如果这些你都忽略了,那么被别人入侵就太正常了,是你自己邀请别人来的。所以,Docker 服务绑定端口,必须通过 TLS 保护起来,以后见到 -H tcp://.... 就要检查,是否同时配置了 --tlsverify,如果没看到,那就是严重错误了。
 
这也是为什么推荐使用 docker-machine 进行 Docker 宿主管理的原因,因为 docker-machine 会帮你创建证书、配置 TLS,确保服务器的安全。
 
配置 TLS 的信息可以查看官网文档:https://docs.docker.com/engine/security/https/
关于 docker-machine 的介绍,可以看官网文档:https://docs.docker.com/machine/overview/

docker被入侵后.............的更多相关文章

  1. docker启动centos7后sudo不能使用

    docker启动centos7后sudo不能使用 过程 使用docker -it xxx /bin/sh进入centos镜像,然后安装了docker,想使用systemctl start docker ...

  2. Linux 主机被入侵后的处理案例

    Linux主机被入侵后的处理案例 提交 我的留言 加载中 已留言 一次Linux被入侵后的分析 下面通过一个案例介绍下当一个服务器被rootkit入侵后的处理思路和处理过程,rootkit攻击是Lin ...

  3. Docker---(8)Docker启动Redis后访问不了

    原文:Docker---(8)Docker启动Redis后访问不了 版权声明:欢迎转载,请标明出处,如有问题,欢迎指正!谢谢!微信:w1186355422 https://blog.csdn.net/ ...

  4. docker容器启动后添加端口映射

    DOCKER 给运行中的容器添加映射端口 方法1 1.获得容器IP 将container_name 换成实际环境中的容器名 docker inspect `container_name` | grep ...

  5. Linux服务器被入侵后的处理过程(转发阿良)

    Linux服务器被入侵后的处理过程   突然,频繁收到一组服务器 ping 监控不可达邮件,赶紧登陆 zabbix 监控系统查看流量状况. 可见流量已经达到了 800M 左右,这肯定不正常了,马上尝试 ...

  6. Centos7 docker容器启动后添加端口映射

    docker容器启动后添加端口映射的两种方法: 一.通过修改防火墙策略添加端口映射 docker容器已创建好,但是想在容器内配置tomcat监控,需要新的端口去访问,但是映射时没有映射多余端口,此时, ...

  7. Docker++:docker运行Tomcat后访问首页报404 (永久解决方式)

    docker运行Tomcat后访问首页报404 与 tomcat 版本有关. 解决方式如下: 1.查看防火墙问题 2.Tomcat 下如果有 webapps.dist 和 webapps 则需要进行合 ...

  8. docker容器运行后退出,怎么才能一直运行?【转】

    现象 启动docker容器 docker run –name [CONTAINER_NAME] [CONTAINER_ID] 查看容器运行状态 docker ps -a 发现刚刚启动的mydocker ...

  9. docker安装centos后没有ifconfig命令解决办法

    使用docker pull centos命令下载下来的centos镜像是centos7的最小安装包,里面并没有携带ifconfig命令,导致我想查看容器内的ip时不知道该怎么办 yum provide ...

随机推荐

  1. Java使用for循环输出菱形

    /** * This program would print out a diamond * @param row the row of diamond * @version 2018-7-23 * ...

  2. 第一篇 Spring boot 配置文件笔记

    spring boot 不需要配置太多文件程序便可正常运行,特殊情况需要我们自己配置文件. 项目以IDEA写实例,系统会默认在src/main/java/resources目录下创建applicati ...

  3. HDU4278

    Faulty Odometer Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  4. Flask 中的 特殊装饰器before_request/after_request

    before_request :在请求收到之前绑定一个函数做一些事情. after_request: 每一个请求之后绑定一个函数,如果请求没有异常. teardown_request: 每一个请求之后 ...

  5. canvas-2arcTo.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. [笔记] imooc《JavaScript深入浅出》对象与函数

    懒得做草稿了,习惯md也懒得扔印象笔记 主要是之前没去接触这一部分,就随手记下来了 创建对象的方法 对象字面量 new构造器/原型链 Object.create() 属性操作 属性读写(以及读写异常. ...

  7. 【工具相关】Web-将网站放在XAMPP上面

    一,将XAMPP服务器打开--->Welcome--->Open Application Folder. 二,会出现如下所示界面.找到htdocs. 三,打开htdocs.如下图所示. 四 ...

  8. js 中三元运算符的运用

    外层为false,逐级向内层判断 $scope.nums=700; $scope.result=($scope.nums>300)?($scope.nums>400)?($scope.nu ...

  9. NO.1食品超市经营管理的数据方案

    背景 丸悦是一家日资企业,经营管理方式有着很强的日本文化风格:讲流程.重细节.丸悦2013年进入中国,沿袭固有经营管理方式,并且只选择日本供应商合作,日常经营出现诸多摩擦,最终多方原因导致年亏损300 ...

  10. Use Slim to overview model in Tensorflow like model.summary() in Keras

    model.summary() in Tensorflow like Keras Use Slim Example: import numpy as np from tensorflow.python ...