0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Docker的安全性设置使用案例

马哥Linux运维 来源:csdn 2023-11-02 16:27 次阅读

Docker的工具实践及root概念和Docker容器安全性设置

1. 使用案例
2. Docker解决的问题
3. Docker未来发展
4. Docker Hub 服务
5. 技术局限
6. Docker环境安全
7. 容器部署安全

使用案例

2a45ea36-785c-11ee-939d-92fbcf53809c.png

Docker是一个命令行工具,它提供了中央“docker”执行过程中所需的所有工具。这使得Docker的操作非常简单。一些例子可以检查运行中的容器的状态:

或检查可用的镜像及其版本的列表:

另一个例子是显示一个镜像的历史:

上面的命令显示了命令行界面操作的方便快捷。只需要指定镜像ID的前几个字符就可以。可以看到只需要“d95”就能显示d95238078ab0镜像的所有历史。

人们可能会注意到该镜像非常小。这是因为Docker从父镜像建立增量镜像,只存储每个容器的更改。因此,如果有一个300MB的父镜像,如果在容器中安装了50MB的额外应用或服务,该容器和生成镜像可能只有50MB。

可以用Dockerfiles自动化Docker容器的创建过程。Dockerfiles是含有单个容器性能规范的文件。例如,可以创建一个Dockerfiles来建立一个Ubuntu容器,在新容器内运行一些命令、安装软件或执行其他任务,然后启动容器。

容器网络

Docker早期版本中的网络基于主机桥接,但是Docker 1.0包含了一种新形式的网络,允许容器直接连接到主机以太网接口。默认情况下,一个容器有一个回路以及一个连接到默认内部桥接的接口,但是如果需要的话也可以配制成直接访问。通常,直接访问比桥接的速度更快。

然而,桥接方法在许多情况下是非常有用的。桥接是通过主机自动创建一个内部网络适配器并为其分配一个主机本身尚未使用的子网。然后,当新的容器连接到这座桥,它们的地址进行自动分配。容器启动时可以将其连接到主机接口或端口,因此运行Apache的容器可能启动并连接到主机上的TCP端口8080(或随机端口)。通过使用脚本和管理控制,可以在任何地方启动Docker,连接端口并将其传达到需要使用该服务的应用或服务堆栈的其他部分。

在Hyper-V服务器上Docker主机备份方法

要在Hyper-V服务器上创建Docker主机,需要下载并且安装OpenSSH以及Windows版本的Docker Machine。还应该将OpenSSH二进制文件添加到Hyper-V服务器路径以便Docker Machine可以找到它们。

一旦所需的组件就绪,创建Docker主机如同运行一条命令行一样轻而易举。打开命令提示符窗口,定位到包含Docker Machine的文件夹,然后输入可执行文件名称(Docker-machine_windows-amd64.exe),其后输入-d开关、驱动程序的名称(在本例中是Hyper-V)以及正在创建的虚拟机(VM)的名称。

例如,该命令可能如下所示:

Docker-machine_windows-amd64.exe -d hyper-v Docker,当运行这个命令的时候,Docker Machine完成几个不同的任务。其中一些更重要的任务(从备份的角度来看)包括:

使用命令行中指定的名称创建虚拟硬盘(virtual hard disk,VHD);

下载名为Boot2Docker.ISO的DVD映像;

创建虚拟机;

把Boot2Docker.ISO 文件与新创建的VM关联,作为虚拟DVD光驱;

把VHD与VM关联;

启动VM;

向VM分配IP地址和端口号。

2. Docker解决的问题

2a50fea8-785c-11ee-939d-92fbcf53809c.png

云计算、大数据,移动技术的快速发展,加之企业业务需求的不断变化,导致企业架构要随时更改以适合业务需求,跟上技术更新的步伐。毫无疑问,这些重担都将压在企业开发人员身上;团队之间如何高效协调,快速交付产品,快速部署应用,以及满足企业业务需求,是开发人员亟需解决的问题。Docker技术恰好可以帮助开发人员解决这些问题。

为了解决开发人员和运维人员之间的协作关系,加快应用交付速度,越来越多的企业引入了DevOps这一概念。但是,传统的开发过程中,开发、测试、运维是三个独立运作的团队,团队之间沟通不畅,开发运维之间冲突时有发生,导致协作效率低下,产品交付延迟, 影响了企业的业务运行。Docker技术将应用以集装箱的方式打包交付,使应用在不同的团队中共享,通过镜像的方式应用可以部署于任何环境中。这样避免了各团队之间的协作问题的出现,成为企业实现DevOps目标的重要工具。以容器方式交付的Docker技术支持不断地开发迭代,大大提升了产品开发和交付速度。

此外,与通过Hypervisor把底层设备虚拟化的虚拟机不同,Docker直接移植于Linux内核之上,通过运行Linux进程将底层设备虚拟隔离,这样系统性能的损耗也要比虚拟机低的多,几乎可以忽略。同时,Docker应用容器的启停非常高效,可以支持大规模的分布系统的水平扩展,真正给企业开发带来福音。

正如中国惠普云计算集成云技术首席专家刘艳凯所说的那样:“任何一项技术的发展和它受到的追捧,都是因为它能够解决困扰人们的问题,”Docker正是这样的一种技术。

3. Docker未来发展

2b423f20-785c-11ee-939d-92fbcf53809c.png

任何一项新技术的出现,都需要一个发展过程,比如云计算为企业所接受用了将近五年左右时间,OpenStack技术也经历了两、三年才受到人们的认可。因此,虽然Docker技术发展很快,但技术还不够成熟,对存储的灵活的支持、网络的开销和兼容性方面还存在限制,这是Docker没有被企业大范围使用的一个主要原因。另外一个原因是企业文化是否与DevOps运动一致,只有企业支持DevOps,才能更大地发挥Docker的价值。最后一个原因就是安全性问题,Docker对于Linux这一层的安全的隔离还有待改进,才能进一步得到企业的认可。惠普刘艳凯认为,这也是Docker需要在下一步中改进的一方面。

Docker价值的最大体于对企业DevOps的支持,对原生云应用大规模水平扩展的支持。在惠普Helion云战略中包括了对DevOps服务和原生云应用的支持,而这一战略的具体落地,与Docker技术有着紧密的联系。因此,惠普团队一直积极地参与OpenStack社区中和Docker项目相关的开发活动中,努力改进Docker技术中存在的不足。同时,惠普产品中也集成了Docker,例如,惠普开发平台产品集成了Docker,使用Docker作为应用的容器;以及惠普最新发布的CloudSystem 9.0也增加对Docker的支持,用户可以像使用其它的虚拟化资源一样,选择Docker作为应用的承载容器。刘艳凯认为,惠普非常认可Docker给用户带来的一些价值,那也希望通过自己努力,使更多的用户使用到Docker这样的先进的技术。

4. Docker Hub 服务

双方在开源容器技术以及发展方向上共同努力,并提供本地化的 Docker 服务。Docker 公司选择阿里云平台作为其DockerHub 在中国运营的基础服务。阿里云也获得 DockerEngine 商用版以及DockerDataCenter 运营权,并为 Docker 客户提供企业级支持和咨询服务。同时,阿里云将成为 Docker 官方支持的云服务提供商。

阿里云总裁胡晓明表示,通过和 Docker 的战略合作,阿里云将更好地为企业级客户提供完善的云服务,使能客户,并实现时代转型。

5. 技术局限

网络限制:容器网络(Docker Network )可以方便地在同一主机下对容器进行网络连接。加上一些其他的工作,就可以跨主机使用叠加网络功能。然而,也就到此为止了。网络配置操作是受限的,而且到docker 0.7为止可以说这些手段都是人工的。尽管容器脚本化可以规模化,但是必须给网络定义增加预分配实例,每次提供容器时还需要额外步骤,这容易引起错误。

库控制受限:库已经成为任何容器会话的中心议题。公共库是最有价值的,因为他贡献了大量的预置容器,节省了许多的配置时间。然而,在沙盒里使用它是有风险的。在不知道谁以及如何创建镜像的情况下,可能会存在任意数量的有意或无意的稳定性和安全性风险。对于企业来说,有必要建立和维护一个私有库,这个库的建立挑战不大,但管理是个问题。Docker为大型库的镜像管理提供了一个有限的元数据模型,确保未来实例如预期的能力受限,也没有叠加功能。

没有清晰的审计跟踪:提供容器是很简单的,但知道提供容器的时间、原因、方式以及提供方却不容易。因此,在提供之后,用户并不掌握多少出于审计目的的历史。

运行实例的低可见性:如果没有经过深思熟虑的行动,实例提供后很难接触到运行容器的对象,也很难知道哪些应该出那里,哪些不应该出那里。

6. Docker环境安全

2b5131e2-785c-11ee-939d-92fbcf53809c.png

Docker的势头在过去的12个月里十分火热,很多人表示很少见如此能够吸引行业兴趣的新兴技术。然而,当兴奋转化为实际部署时,企业需要注意Docker的安全性。

了解Docker的人都知道,Docker利用容器将资源进行有效隔离。因此容器相当于与Linux OS和hypervisor有着几乎相同的安全运行管理和配置管理级别。但当Docker涉及到安全运营与管理,以及具有保密性、完整性和可用性的通用控件的支持时,Docker可能会让人失望。

当Docker运行在云提供商平台上时,Docker安全性变得更加复杂。需要知道云提供商正在做什么,或许用户正在于别人共享一台机器。

Docker虽然容器没有内置的安全因素,而且像Docker这样的新兴技术很难有比较全面的安全措施,但这并不意味着以后也不会出现。

7. 容器部署安全

也有专家将Docker安全问题的实质定位于配置安全,认为Docker的问题是很难配置一个安全的容器。虽然Docker的开发人员通过创建非常小的容器来降低攻击面,但问题在于大型企业内部在生产环境中运行Docker容器的员工需要有更多的可见性和可控性。

企业在部署数千或数万台Docker容器时,能够确保这些Docker容器都遵守企业安全策略进行配置是至关重要的事情。

Docker为解决这个问题,就需要增加Docker容器部署的实时可见性,同时实施企业制定的安全策略。也有一些厂商为此推出解决方案,给运营商提供了实时可见性并帮助他们执行容器级别的虚拟基础设施的安全策略。

编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10991

    浏览量

    206735
  • ip地址
    +关注

    关注

    0

    文章

    240

    浏览量

    16741
  • 容器
    +关注

    关注

    0

    文章

    481

    浏览量

    21878
  • 虚拟机
    +关注

    关注

    1

    文章

    855

    浏览量

    27377
  • Docker
    +关注

    关注

    0

    文章

    437

    浏览量

    11603

原文标题:Docker的使用案例以及未来发展、Docker Hub 服务、环境安全、容器部署安全

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    nios如何保证安全性

    在工业设计当中,fpga的安全性是很严重的(个人认为),烧写在epcs上的程序,只要用逻辑分析仪就可以实现程序盗用,nios也是同样的不靠谱,在flash当中,一样没有加密,会有安全问题。所以我觉得
    发表于 08-15 14:42

    边缘智能的边缘节点安全性

    设置写保护。图4. 固件受物理写保护(执行更新时除外)是保护设备完整的有效方法。许多设备还使用非易失性存储器来存储写访问所需的数据。在高安全性系统中,可以使用单独的非易失性存储器芯片来存储数据(但不
    发表于 10-22 16:52

    各国汽车安全性怎么测试

    曾经有一项问卷调查是对10万名消费者进行调查,结果显示他们最关心的汽车性能是安全性,无论性价比如何高,只要安全性不好的话消费者都不会想购买的。其实全世界其它国家的消费者也是这么想的。各国为了提高汽车
    发表于 05-16 06:11

    docker核心概念

    密度。企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能。
    发表于 07-15 07:29

    蓝牙mesh系列的网络安全性

    蓝牙mesh网络安全性概览为何安全性如此关键?安全性可谓是物联网(IoT)最受关注的问题之一。从农业到医院、从智能家居到商业智能建筑、从发电站到交通管理系统,物联网系统和技术将触及我们生活的方方面面
    发表于 07-22 06:27

    怎么提高SRAM工艺FPGA的设计安全性

    随着FPGA的容量、性能以及可靠的提高及其在消费电子、汽车电子等领域的大规模应用,FPGA设计的安全性问题越来越引起人们的关注。相比其他工艺FPGA而言,处于主流地位的SRAM工艺FPGA有一些
    发表于 08-23 06:45

    视频安全性好处

    视频安全性好处
    发表于 09-26 18:43

    Keysight U1840A Medalist sj5000的安全性安装和设置

    该硬件手册描述 sj5000 的安全性、安装和设置
    发表于 10-31 10:19

    实现更强大IoT设备安全性的步骤

    本文将讨论实现更强大IoT设备安全性的步骤,并解释嵌入式安全性背后的不同概念,以及如何针对嵌入式设备安全性实施一致且包罗万象的方法。发现设备漏洞
    发表于 02-22 06:26

    什么是蓝牙mesh网络安全性

    蓝牙mesh网络安全性的基本概念
    发表于 02-25 08:22

    为什么基于硬件的安全性更有效?

    我们一直认为这些都是非常安全的产品。例如婴儿监视器、玩具、安全摄像头(非常讽刺),甚至医疗设备。已经快速采用IoT技术的领域将是最脆弱环节 ;设备越智能则越不安全对于其它许多行业而言,安全性
    发表于 03-05 07:18

    关于FPGA设计的安全性你看完就懂了

    关于FPGA设计的安全性你看完就懂了
    发表于 04-30 06:19

    FPGA设计的安全性不看肯定后悔

    FPGA设计的安全性不看肯定后悔
    发表于 05-07 06:52

    汽车安全性的内容和影响因素是什么?

    汽车安全性的内容和影响因素是什么? 电子技术在汽车行驶安全上的应用有哪些?
    发表于 05-14 06:43

    数据库安全性概述

    本文主讲 数据库的安全性,欢迎阅读~????目录一、数据库安全性概述二、数据库安全性控制1. 用户标识与鉴别2. 存取控制3. 自主存取控制方法4. 授权与回收5. 数据库角色6. 强制存取控制方法
    发表于 07-30 06:42