51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

docker 安全

docker 安全

1-将容器的根文件系统挂载为只读

--read-only

-read-only 选项可以设置容器的文件系统为只读,这样无法修改和新建容器里面的文件

2-确保docker.sock不被挂载

docker.sock挂载的容器容易被获取特殊权限,一旦危险进入到docker中,严重影响了宿主机的安全,生产环境中,需要确保docker.sock不被挂载。

不要使用-v /var/run/docker.sock:/var/run/docker.sock参数来挂载/var/run/docker.sock文件。

这样做可以防止容器内的进程获取宿主机的Docker守护进程的控制权。

3-审核Docker文件和目录安全审计

除了审核常规的Linux文件系统和系统调用之外,还审核所有与Docker相关的文件和目录。 Docker守护程序以" root"特权运行。 其行为取决于某些关键文件和目录。如 /var/lib/docker、/etc/docker、docker.service、 docker.socket、/usr/bin/docker-containerd、/usr/bin/docker-runc等文件和目录

找到/etc/audit/audit.rules与/etc/audit/rules.d/audit.rules文件(若没有则先确认是否已安装auditd服务), 在文件中添加以下行:

-w /var/lib/docker -k docker
-w /etc/docker -k docker
-w /usr/lib/systemd/system/docker.service -k docker
-w /usr/lib/systemd/system/docker.socket -k docker
-w /usr/bin/docker-containerd -k docker
-w /usr/bin/docker-runc -k docker
-w /usr/bin/containerd -k docker

然后,重新启动audit程序。 例如

 systemctl restart auditd.service

重启遇到错误: Failed to stop auditd.service: Operation refused 连接

4- 确保不共享主机的网络命名空间服务配置

启动容器时不要通过--net = host选项。

检查提示

加固建议
在守护程序模式下运行docker并传递'--icc = false'作为参数。 例如,

/usr/bin/dockerd --icc=false
若使用systemctl管理docker服务则需要编辑` `` /usr/lib/systemd/system/docker.service

文件中的`ExecStart`参数添加 `--icc=false`选项

--icc = false

vi /usr/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --icc=false

编辑后重启docker

systemctl  daemon-reload
systemctl restart docker.service

赞(0)
未经允许不得转载:工具盒子 » docker 安全