使用chroot和supermin5建立安全隔离的环境

使用chroot和supermin5建立安全隔离的环境

2018年06月06日 08:43:25python

阅读数:181linux

chroot

chroot 顾名思义就是 change root directory。在 linux 系统中,系统默认的根路径是 “/”。而在使用 chroot 以后,系统的目录结构将以指定的目录做为 “/”。git

使用chroot后能够建立一个彻底隔离的环境,方便用户在彻底隔离的环境下的开发运行。docker

在运行 chroot 以后,用户就进入了新的根目录下,而且全部的操做都是基于新的根目录来操做,用户根本访问不到原来的系统根目录。vim

所以,咱们能够设置用户登陆前使用chroot,这样就能够限制用户只能在必定的目录下操做,避免用户访问一些系统的文件。centos

supermin5

Supermin 是一个用来建立迷你虚拟环境的工具,有点相似建立的迷你虚拟机环境。安全

若是机器上没有 supermin5 命令,能够使用下面的命令安装bash

sudo yum install -y supermin*
  • 1

使用supermin5建立虚拟环境

注:如下命令须要使用root用户来执行app

# mkdir myenv
# cd myenv

# 下面命令是准备要安装的软件包并保存在supermin.d目录下
# supermin5 -v --prepare bash coreutils iputils tar wget git vim yum python python2-pip -o supermin.d

# 下面命令是根据上一步准备的安装包目录制做隔离的环境,并保存在appliance.d目录下
# supermin5 -v --build --format chroot supermin.d -o appliance.d

# 若是要上网执行下面命令
# cp /etc/resolv.conf appliance.d/etc/

# 若是要使用yum安装软件包
# echo 7 > appliance.d/etc/yum/vars/releasever
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

使用chroot切换根目录

注:如下命令须要使用root用户来执行工具

tar --numeric-owner -cpf centos-7.tar -C appliance.d .

导入tar文件到docker

cat centos-7-2.tar | docker import - oliver/centos:v7.2
# cd appliance.d/
# chroot .      <<< 切换根目录

# 如下操做均是在新的根目录下执行了

bash-4.2# ls    <<<
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
bash-4.2# python
Python 2.7.5 (default, Apr 11 2018, 07:36:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
...
相关文章
相关标签/搜索