Docker安全

目录

[一. cgroup](#一. cgroup)

[2. cpu优先级](#2. cpu优先级)

[3. 内存资源限制](#3. 内存资源限制)

[4. 磁盘io限制](#4. 磁盘io限制)

[二. lxcfs隔离](#二. lxcfs隔离)

[三. 容器特权](#三. 容器特权)


一. cgroup

1. cpu资源限制

复制代码
docker run -it --rm --cpu-period 100000 --cpu-quota 20000 ubuntu
root@433a1612a171:/# dd if=/dev/zero of=/dev/null &


2. cpu优先级

复制代码
docker run -it --rm  ubuntu
root@0280fc49f2d0:/# dd if=/dev/zero of=/dev/null &
docker run -it --rm --cpu-shares 100 ubuntu
root@b75b4d5066b8:/# dd if=/dev/zero of=/dev/null &
/sys/devices/system/cpu/cpu1
echo 0 > online


测试时只保留一个cpu核心可用,只有争抢cpu资源时优先级才会生效

3. 内存资源限制

复制代码
docker run -d --name demo --memory 200M --memory-swap=200M nginx
/sys/fs/cgroup/memory
mkdir x1
cd x1/
echo 209715200 > memory.limit_in_bytes
yum install -y libcgroup-tools.x86_64
cd /dev/shm/
cgexec -g memory:x1 dd if=/dev/zero of=bigfile bs=1M count=300
free -m


复制代码
cd /sys/fs/cgroup/memory/x1/
echo 209715200 > memory.memsw.limit_in_bytes
cd /dev/shm
cgexec -g memory:x1 dd if=/dev/zero of=bigfile bs=1M count=300


控制用户内存

复制代码
vim /etc/cgrules.conf
yyl     memory  x1/
systemctl  start cgred.service
su - yyl
cd /dev/shm/
dd if=/dev/zero of=bigfile bs=1M count=200

4. 磁盘io限制

复制代码
docker run -it --rm --device-write-bps /dev/sda:30MB ubuntu
root@3226b0fc6231:/# dd if=/dev/zero of=bigfile bs=1M count=100 oflag=direct

二. lxcfs隔离

复制代码
yum install lxcfs-2.0.5-3.el7.centos.x86_64.rpm
lxcfs /var/lib/lxcfs &
docker run  -it -m 256m \
>       -v /var/lib/lxcfs/proc/cpuinfo:/proc/cpuinfo:rw \
>       -v /var/lib/lxcfs/proc/diskstats:/proc/diskstats:rw \
>       -v /var/lib/lxcfs/proc/meminfo:/proc/meminfo:rw \
>       -v /var/lib/lxcfs/proc/stat:/proc/stat:rw \
>       -v /var/lib/lxcfs/proc/swaps:/proc/swaps:rw \
>       -v /var/lib/lxcfs/proc/uptime:/proc/uptime:rw \
>       ubuntu
free -m

三. 容器特权

默认容器内的用户是受限的

复制代码
docker run -it --rm busybox


开启容器特权

复制代码
docker run -it --rm --privileged busybox


设置容器白名单

复制代码
docker run -it --rm --cap-add=NET_ADMIN busybox
相关推荐
KKKlucifer1 小时前
国家网络安全通报中心:重点防范境外恶意网址和恶意 IP
tcp/ip·安全·web安全
wanhengidc1 小时前
手机云服务是什么意思?
运维·网络·安全·游戏·智能手机
饱饱要坚持可持续发展观2 小时前
docker 重命名镜像
docker
TG_yilongcloud3 小时前
阿里云国际代理:怎么保障数据库在凭据变更过程中的安全与稳定?
数据库·安全·阿里云·云计算
JialBro3 小时前
S7-200 SMART PLC 安全全指南:配置、漏洞解析与复现防护
安全·plc·工控安全·西门子
ZeroNews内网穿透4 小时前
企业远程访问方案选择:何时选内网穿透,何时需要反向代理?
运维·服务器·网络·python·安全
羑悻的小杀马特4 小时前
Docker 容器化部署核心实战:从镜像仓库管理、容器多参数运行到 Nginx 服务配置与正反向代理原理解析
nginx·docker·容器·镜像仓库
lingggggaaaa5 小时前
小迪安全v2023学习笔记(八十二讲)—— Java组件安全&Solr&Shiro&Log4j&CVE复现
笔记·学习·安全
NiKo_W6 小时前
Git 版本回退与撤销修改
开发语言·git·安全
en-route6 小时前
Kubernetes Ingress:使用 Apache APISIX 进行外部流量路由
容器·kubernetes