为保证容器安全运行,建议用户根据业务,配置如下加固项,具体操作方法请参考官方说明:
- 启用apparmor能力:运行容器时可指定apparmor文件,apparmor能够提供安全策略,保护Linux系统和应用程序。启用apparmor能力前需要先开启Linux内核的apparmor功能。
- 启用SELinux能力:运行容器时可指定SELinux配置,提高安全性。启用SELinux能力前需要使用--selinux-enabled配置在Docker守护进程中生效。
- 启用现场还原能力:需要启用--live-restore配置减少对Docker守护进程的依赖。
- 为容器设置系统资源的配额,避免容器占用过多的系统资源,导致资源耗尽。系统资源包括但不限于CPU、内存。
- 避免在容器中运行不可信的应用。
- 避免在容器中侦听不必要的端口。
- 为容器配置适当的CPU优先级。
- 将容器的根文件系统挂载为只读模式。
- 将传入的容器流量绑定到特定的主机接口,为容器的端口映射配置指定IP地址。
- 如已在老版本AtlasEdge部署了全0端口映射容器,升级到此版本平滑容器后,主机存在全0侦听网络,有安全风险,建议修改容器端口映射主机IP地址并重新部署容器。
- 限制容器运行使用的文件句柄和fork进程数量。
- 容器服务对外侦听的业务接口启用认证和加密传输机制,保证业务数据不被窃取。
- 避免在容器内运行SSH服务端。
- 避免共享命名空间,包括网络命名空间、UTS命名空间、user命名空间。
- 避免在容器中挂载docker.sock。
- 避免容器部署时通过环境变量、ConfigMap等传递敏感信息,以防止敏感数据泄露。
- 确保没有任何用户加入Docker用户组。