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

* 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. Spring 4.3.11.RELEASE文档阅读(一):overview

    一.宏观概述中的体会和发现 Spring是组件式的框架,它允许我们只使用其一小部分.Spring所做的工作,就是不断的简化我们的操作.比如它的IOC容器,当我们自己应用设计模式,比如说:建造者.工厂. ...

  2. pat 1036

    1036. 跟奥巴马一起编程(15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 美国总统奥巴马不仅呼吁所有人 ...

  3. Android中当前墙纸Wallpaper存放的位置

    最近想做个应用保存当前墙纸,找了一下,发现当前墙纸的位置在. /System/users/0/wallpaper 没有后缀.导出来修改一下名字就可以看到图标了.比如改为png. 但是,这个目录要求系统 ...

  4. 【bzoj3105】[cqoi2013]新Nim游戏 高斯消元求线性基

    题目描述 传统的Nim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同).两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴.可以只拿一根,也可以拿走整堆火柴,但不能同时从 ...

  5. 关闭chrome浏览器的input香蕉黄背景

    chrome浏览器input的自动完成,点击之后自动输入,input的背景会变成香蕉黄,用如下方法修复: /* Change the white to any color ;) 就是给input设置内 ...

  6. 刷题总结——运输计划(bzoj4326)

    题目: 题目背景 NOIP2015 提高组 Day2 T3 题目描述 公元2044年,人类进入了宇宙纪元. L国有 n 个星球,还有 n-1 条双向航道,每条航道建立在两个星球之间,这 n-1 条航道 ...

  7. 【CF1016A】Death Note(签到)

    题意:无限页的书,每页可以写m个名字,给你一个长度为n的序列,序列为你每天要写的名字数,输出你每天要翻的页数. n<=2e5,m,a[i]<=1e9 思路: #include<cst ...

  8. 【leetcode】 First Missing Positive

    [LeetCode]First Missing Positive Given an unsorted integer array, find the first missing positive in ...

  9. AC日记——圆桌聚餐 cogs 729

    729. [网络流24题] 圆桌聚餐 ★★   输入文件:roundtable.in   输出文件:roundtable.out   评测插件时间限制:1 s   内存限制:128 MB «问题描述: ...

  10. IOS 使用DSYM文件定位Bug 的具体位置

    在项目的开发中,我们通常需要排查和修改测试中和发布后线上的一些bug,现在有一些第三方的bug分享和查找工具SDK,如腾讯的Bugly和听云等,包括苹果的开发工具xcode也自带 bug查找工具.那么 ...