• 售前

  • 售后

热门帖子
入门百科

Docker---docker安全加固之安全隔离

[复制链接]
Holily1985 显示全部楼层 发表于 2022-1-12 12:09:51 |阅读模式 打印 上一主题 下一主题
目录

docker安全加固之安全隔离(如何增强隔离性)
设置特权级运行的容器:
--privileged=true(开特权)
【--cap-add只给某一个权限】

docker安全加固之安全隔离(如何增强隔离性)



server1
  1. <code>docker run -it --rm --memory 200M busybox
  2. / # free -m #给了200M但是swap出现的还是2G
  3. *proc是没有做隔离的,所以容器和宿主机看到的是一样的【直接访问的是根下的proc】
  4. free -m
  5. yum install -y lxcfs-2.0.5-3.el7.centos.x86_64.rpm 
  6. lxcfs  /var/lib/lxcfs &   #是lxcfs的数据目录,打入后台
  7. cd /var/lib/lxcfs/
  8. pwd
  9. ls    #会生成相应的cgroup和proc
  10. cd  cgroup/
  11. ls
  12. cd ..
  13. cd proc/
  14. ls  #可以看到每一个文件都分别代表宿主机的6样信息
  15. ll /proc/
复制代码




  1. <code>docker run -it --rm -m 200M -v /var/lib/lxcfs/proc/cpuinfo:/proc/cpuinfo:rw -v
  2. /var/lib/lxcfs/proc/diskstats:/proc/diskstats:rw -v
  3. /var/lib/lxcfs/proc/meminfo:/proc/meminfo:rw -v /var/lib/lxcfs/proc/stat:/proc/stat:rw -v
  4. /var/lib/lxcfs/proc/swaps:/proc/swaps:rw -v /var/lib/lxcfs/proc/uptime:/proc/uptime:rw
  5. ubuntu  
  6. #用-v选项把刚才的6个文件挂接到容器内部,给200M
  7. --/# free -m   #可以看到swap分区有200M
  8. docker run -it --rm -m 300M -v /var/lib/lxcfs/proc/cpuinfo:/proc/cpuinfo:rw -v
  9. /var/lib/lxcfs/proc/diskstats:/proc/diskstats:rw -v
  10. /var/lib/lxcfs/proc/meminfo:/proc/meminfo:rw -v /var/lib/lxcfs/proc/stat:/proc/stat:rw -v
  11. /var/lib/lxcfs/proc/swaps:/proc/swaps:rw -v /var/lib/lxcfs/proc/uptime:/proc/uptime:rw
  12. ubuntu
  13. --/# free -m   #可以看到swap分区有300M
复制代码

设置特权级运行的容器:

--privileged=true(开特权)

  1. <code>docker run -it --rm busybox
  2. --/ # ip addr
  3. --/ # ip link set down dev eth0  #执行命令没有操作权限,不允许
  4. --/ # id  #可以看到是超级用户
复制代码

不退出,重新连接server1窗口
  1. <code>docker ps
  2. docker inspect  5a65ea0b3b71
  3. docker inspect  5a65ea0b3b71 | grep Privileged  #目前是false。(不开特权)
复制代码


回到第一台server1窗口
  1. <code>--/ # fdisk -l  #看不到磁盘分区
  2. docker run -it --rm --privileged=true busybox   #容器内提权
  3. / # fdisk -l  #可以看到磁盘分区了
  4. / # lsmod  #可以看到内核选项
  5. docker run -it --rm --privileged=true ubuntu
  6. /# fdisk -l
  7. /# lsmem  #查看内存
  8. /# date #时间一样,但是时区不一样
复制代码

 
【--cap-add只给某一个权限】

  1. <code>docker run -it --rm --cap-add=NET_ADMIN busybox  
  2. #添加管理网络
  3. /# fdisk -l  #不能看到磁盘
  4. / # ip link
  5. / # ip link set down dev eth0
  6.  #可以看到已经禁掉网卡了
  7. / # ip addr
  8. / # ip link set up dev eth0  
  9. #激活网卡
  10. / # ip addr
复制代码

第2台server1窗口 
  1. <code>docker ps
  2. docker inspect 64cd0456af3a
  3. docker inspect 64cd0456af3 | less   #/Cap
复制代码
 
 
 

来源:https://blog.caogenba.net/m0_62341392/article/details/122418683
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作