linux 容器(LXC) 第2章 chroot
来源:互联网 发布:淘宝纸箱设备 编辑:程序博客网 时间:2024/06/08 08:57
1. linux chroot 机制的由来
- root 用户启动一个daemon
在linux 系统上启动一个daemon 必须用root 用户来启动,比如一个web 服务器(nginx/apapce 80端口)是在操作系统的接口(1-1024),只有root 有这个权限来启动这类接口;用root 户启动daemon 的程序也被认为是一个自然的事情。
- 安全问题日益变大
随着安全的攻击越来越严重,如果任何一个提供TCP 服务的程序出现漏洞,那攻击者就获取到了root 权限,无疑是灾难性的。为了降低这个问题带来的风险,现在几乎所有的用户程序都是 用root 用户启动程序,然后主动放弃root 权限,该用一个普通的用户(比如 admin/nobody) 进行运行。 这样一旦攻击者获取到了这个程序的权限,也是此时运行用户的权限,不是root 权限对系统造成的危害相对要小了许多
- chroot 机制的引入
为了进一步提高系统的安全性,linux 系统引入了chroot 机制;chroot 是一个系统调用,程序可以通过调用chroot的函数库来更改一个进程所能看到的跟目录 。比如httpd 软件安装在/usr/local/httpd 这个目录下,那这个进程(httpd) 只可以读、写到这个指定的目录: [usr/local/httpd] ;这样即使攻击者获取进程的权限,也只能读写这个目录下的文件,这样就变的安全了许多,起码不会影响这个台机器其他的进程,和其他的机器的安全问题
2. chroot 简介
chroot 全程是change to root : 其中root 是根目录的意思,也就是改变(linux 根目录是/,也可以理解为设置)一个程序运行时参考的根目录的位置
# 根目录的参考linux 系统(原始的方案) | 引入chroot 机制/ /lxc/usr /lxc/usr/bin /lxc/bin/sys /lxc/sys
如上图我们看的一旦使用了chroot ,用户的春心就不是linux 系统的根目录,而是我们指定的/lxc (这个目录可以任意指定),所以chroot 确实可以修改根目录.
3. chroot 机制的意义
- 增强系统的安全行
- 指定程序访问的根目录,防止用攻击者可以通过程序的漏洞获取其他目录的读写权限;比如/etc/passwd 比如/ 下所有的权限
4. chroot 机制在虚拟化中的作用
chroot 机制因为安全问题才被引入的,但是在LXC 中却启动了举足轻重的作用,因为chroot 机制可以指定虚拟根目录,让不同的容器在不同的根目录下工作;
- 不同的容器进程参考的根目录不同,相互直接不影响
- 不同的容器因为共享linux 底层的文件系统,所以容器集成os的功能,实现轻量级!
0 0
- linux 容器(LXC) 第2章 chroot
- linux 容器(LXC) 第1章 LXC 简介
- linux 容器(LXC) 第4章 cgroups
- linux 容器(LXC) 第3章 命名空间(namespace) 简介
- Lxc linux容器工具
- Linux容器LXC-入门
- LXC:Linux 容器工具
- LXC:Linux 容器工具【转】
- LXC容器
- Linux容器虚拟技术LXC简明手册
- Linux容器虚拟化LXC的使用
- Linux容器LXC学习之Namespace
- Linux容器虚拟技术LXC简明手册
- linux容器技术-lxc创建虚拟机的执行过程分析
- linux容器技术-LXC相关技术知识介绍
- Linux Container(LXC容器)基本命令使用简介
- Linux 容器技术史话:从 chroot 到未来
- Linux 容器技术史话:从 chroot 到未来
- 订阅模式(publish-subscribe)
- linux 容器(LXC) 第1章 LXC 简介
- vue 学习记录
- struts form样式怎么修改
- JAVA I/O流
- linux 容器(LXC) 第2章 chroot
- Linux下查看文件和文件夹大小
- 如何给UIView等控件用xib设置圆角属性
- 图像平滑
- C++中关于全局对象的初始化顺序
- layoutSubviews
- iOS 获取键盘的高度
- 在调试中出的错误及解答
- 23 种设计模式