/*************************************************

* Author : Samson

* Date : 08/07/2015

* Test platform:

* gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2

* GNU bash, 4.3.11(1)-release (x86_64-pc-linux-gnu)

* ***********************************************/

1、GRSEC and PaX

加固主机系统。

2、Use Docker in combination with AppArmor/SELinux/TOMOYO

使用强制訪问控制(mandatory access control (MAC))对Docker中使用的各种资源依据业务场景的详细分析进行资源的訪问的控制。

3、Limit traffic with iptables

使用netfilter对网络的出入訪问依据实际应用会被外网訪问的port、应用会与外网的交互网络地址、port、协议等进行梳理,进行白名单的生成并使用uptables进行配置以限制訪问;

4、Do not run software as root:不要使用root用户执行应用程序

在实际应用程序使用中,有一些必须要使用root用户才可以进行的操作,那么从安全的角度,须要将这一部分与仅使用普通用户权限运行的部分分离解耦。那么怎样在docker中使用普通用户权限对不须要root权限运行的部分进行实施呢?

在编写dockerfile时,使用类似例如以下的命令进行创建一个普通权限的用户。并设置创建的UID为以后执行程序的用户,例如以下:

RUN useradd noroot -u 1000 -s /bin/bash --no-create-home

USER noroot

RUN Application_name

docker命令參考:

https://docs.docker.com/reference/builder/#user

https://docs.docker.com/reference/builder/#run

5、docker run时不要使用--privileged选项

默认情况下,Docker容器是没有特权的,默认一个容器是不同意訪问不论什么设备的;当使用--privileged选项时。则此窗体将能訪问全部设备。比如:打开此选项后,即能够进行对Host中的/dev/下有的全部设备进行操作。若非要对host上的某些设备进行訪问的话,能够使用--device来进行设备的加入,而不是全部的设备。

Ref:

https://docs.docker.com/reference/run/#security-configuration

6、Use –cap-drop and –cap-add

使用这两个选项可能对更加细粒度的控制设置,能够加入或删除GNU Linux的能力在此容器中,能够使用的參数名支持http://linux.die.net/man/7/capabilities此网页中的全部能力选项參数。

Ref:

https://docs.docker.com/reference/run/#security-configuration

http://linux.die.net/man/7/capabilities

7、关注docker的漏洞信息、及时更新修复漏洞的安全补丁。

REF:

http://linux-audit.com/docker-security-best-practices-for-your-vessel-and-containers/

430

docker安全最佳实践概述的更多相关文章

  1. AWS 架构最佳实践概述(十一)

    AWS 架构最佳实践 AWS合理架构的框架支柱 安全性 - 保护并监控系统 能够保护信息.系统和资产 通过风险评估和缓解策略 可靠性 - 从故障中恢复并减少中断 从基础设施或服务故障中恢复 动态获取计 ...

  2. 使用nodejs构建Docker image最佳实践

    目录 简介 准备nodejs应用程序 创建Dockerfile文件 创建.dockerignore文件 创建docker image 运行docker程序 node的docker image需要注意的 ...

  3. Docker 开发最佳实践

    Docker development best practices The following development patterns have proven to be helpful for p ...

  4. Docker监控:最佳实践以及cAdvisor和Prometheus监控工具的对比

    在DockerCon EU 2015上,Brian Christner阐述了“Docker监控”的概况,分享了这方面的最佳实践和Docker stats API的指南,并对比了三个流行的监控方案:cA ...

  5. Serilog 最佳实践

    Serilog 最佳实践 概述 Serilog是 Microsoft .NET 的结构化日志记录库,并已成为[Checkout.com .NET 的首选日志记录库..它支持各种日志记录目的地(称为接收 ...

  6. Java 服务 Docker 容器化最佳实践

    转载自:https://mp.weixin.qq.com/s/d2PFISYUy6X6ZAOGu0-Kig 1. 概述 当我们在容器中运行 Java 应用程序时,可能希望对其进行调整参数以充分利用资源 ...

  7. 镜像命名的最佳实践 - 每天5分钟玩转 Docker 容器技术(18)

    我们已经学会构建自己的镜像了.接下来的问题是如何在多个 Docker Host 上使用镜像. 这里有几种可用的方法: 用相同的 Dockerfile 在其他 host 构建镜像. 将镜像上传到公共 R ...

  8. 【原创】Docker实战 Dockerfile最佳实践&&容器之间通信

    官方最佳实践文档 https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#from Docker实战(三十) ...

  9. Web前端开发最佳实践(1):前端开发概述

    引言 我从07年开始进入博客园,从最开始阅读别人的文章到自己开始尝试表达一些自己对技术的看法.可以说,博客园是我参与技术讨论的一个主要的平台.在这其间,随着接触技术的广度和深度的增加,也写了一些得到了 ...

随机推荐

  1. “玲珑杯”ACM比赛 Round #23

    A -- 生是脂肪的人 Time Limit:2s Memory Limit:128MByte Submissions:263Solved:97 DESCRIPTION 给定一个整数n,输出[(10^ ...

  2. 九度oj 题目1457:非常可乐

    题目描述: 大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为.因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享这一瓶可乐,而且一定要喝的和seeyou一样 ...

  3. cssText批量修改样式

    cssText所有浏览器都支持. cssText 的使用 obj.style.cssText = " width:200px;position:absolute;left:100px;&qu ...

  4. php错误报告

    ; This directive controls whether or not and where PHP will output errors, ; notices and warnings to ...

  5. Begin to study Deep Learning

    今天是儿童节,我开始了人生的新的阶段.借助这个节日我想在今年静下心来,简单执着的进行学习,不掺杂任何利益. 早上起来的比较晚,洗了床单吃了早午饭,背着书包就来到了公司.软件园里面很多游客,但是背着电脑 ...

  6. 添加gitlab远程账号 使用注意事项

    gitlab上面使用的密钥有两种,一种是Deploy keys 这种密钥是只读的,添加了之后,相应设备只拥有clone的权限,不被允许进行push操作.(在相应的库里面的设置里面添加) 还有一种是 S ...

  7. 标准C程序设计七---101

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  8. linux内核之进程的基本概念(进程,进程组,会话关系)

    进程是操作系统的一个核心概念.每个进程都有自己唯一的标识:进程ID,也有自己的生命周期.一个典型的进程的生命周期如图4-1所示. 进程都有父进程,父进程也有父进程,这就形成了一个以init进程为根的家 ...

  9. C语言集锦(二) 图像显示 Windows和Linux

    关于图像显示有很多库可以用,Windows下有GDI,GDI+,D3D等,Linux下有X Window和Wayland,此外还有OpenGL ,SDL等图形库以及各种GUI库. 了解最原始的方式,对 ...

  10. hdu 3189(网络流+二分枚举)

    Steady Cow Assignment Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6422   Accepted: ...