chroot jail用法指南介绍如何使用chroot jail?chroot jail这个词的历史可以追溯到 1992 年,并且在今天经常使用。但是这个术语是什么意思,这个操作是做什么用的?
在本教程中,我们将介绍使用 chroot jails 的基础知识,并向你展示如何设置它,并且包含相关的chroot jail用法示例。
先决条件
- 运行 Linux 或 Unix 操作系统的系统
- 具有 sudo 级别权限的用户帐户
- 访问终端/命令行
你在 chroot 操作之后运行的任何进程都只能访问新定义的根目录及其子目录。此操作通俗地称为chroot jail,因为这些进程无法在新的根目录之外读取或写入。
chroot jail 用于什么?
Chroot jail用于为进程运行创建一个有限的沙箱。这意味着进程不能恶意更改规定目录树之外的数据。
chroot jails 的另一个用途是作为虚拟机的替代品。这种方法称为内核级虚拟化,需要的资源比虚拟机少。此操作允许用户在同一系统上创建多个隔离的实例。
如何使用chroot jail?【什么是chroot jail以及如何使用它(详细指南)】chroot jail用法指南:此示例将带你创建和设置 chroot jail,以便它可以运行
bash
和ls
命令。按着这些次序:
1. 创建一个名为chroot_jail的新目录:
mkdir chroot_jail
如果我们尝试
chroot
进入新目录,我们会得到以下输出:文章图片
你必须先启用该
bash
命令,然后才能chroot
进入新目录。这需要将命令文件和所有关联的库复制到新的根目录中。2. chroot jail用法示例 - 在chroot_jail 中创建一个新的子目录树:
mkdir -p chroot_jail/bin chroot_jail/lib64/x86_64-linux-gnu chroot_jail/lib/x86_64-linux-gnu
这些子目录将存储
bash
和ls
命令的所有必要元素。3. 将
cp
命令与命令一起使用which
让复制bash
和ls
命令,而无需指定要从中复制的路径。为此,请使用:
cp $(which ls) chroot_jail/bin/
cp $(which bash) chroot_jail/bin/
注意:如果你的
bash
or命令是 aliased,你需要在复制之前取消它们的别名。使用,其中是要取消别名的命令的名称。ls
unalias [command]
[command]
4. 如何使用chroot jail?
bash
并ls
在新的根文件夹的工作,加上所有相关的库chroot_jail /库。使用ldd
命令找出哪些库与哪个命令相关联:ldd $(which bash)
ldd $(which ls)
文章图片
5. 将适当的库复制到chroot_jail子目录lib和lib64。
对于
bash
命令:cp /lib/x86_64-linux-gnu/libtinfo.so.6 chroot_jail/lib/x86_64-linux-gnu/
cp /lib/x86_64-linux-gnu/libdl.so.2 chroot_jail/lib/x86_64-linux-gnu/
cp /lib/x86_64-linux-gnu/libc.so.6 chroot_jail/lib/x86_64-linux-gnu/
cp /lib64/ld-linux-x86-64.so.2 chroot_jail/lib64/
对于
ls
命令:cp /lib/x86_64-linux-gnu/libselinux.so.1 chroot_jail/lib/x86_64-linux-gnu/
cp /lib/x86_64-linux-gnu/libc.so.6 chroot_jail/lib/x86_64-linux-gnu/
cp /lib/x86_64-linux-gnu/libpcre2-8.so.0 chroot_jail/lib/x86_64-linux-gnu/
cp /lib/x86_64-linux-gnu/libdl.so.2 chroot_jail/lib/x86_64-linux-gnu/
cp /lib64/ld-linux-x86-64.so.2 chroot_jail/lib64/
cp /lib/x86_64-linux-gnu/libpthread.so.0 chroot_jail/lib/x86_64-linux-gnu/
6、chroot jail用法示例 - 使用
chroot
命令将root改为chroot_jail目录:sudo chroot chroot_jail
文章图片
注意:将根目录更改为chroot_jail目录会启动一个新的
bash
shell实例。使用
ls
命令列出新根目录树中的所有文件和目录:ls -R
文章图片
7. 使用完新的根文件夹后,退出 shell:
exit
chroot jail用法指南总结如何使用chroot jail?遵循本教程后,你应该能够设置 chroot jail,以及在新根目录中运行进程和命令所需的资源。
有关 Linux 命令的更多信息,请查看我们的Linux 命令备忘单。
推荐阅读
- MySQL如何使用存储过程(创建、列出、更改和删除)
- MySQL事件和事件调度程序指南(设置和使用)
- Tumblr到WordPress的迁移(帮助你移动网站的分步指南)
- 如何选择完美的WordPress主题(需要考虑的10件事)
- 如何将bbPress论坛添加到你的WordPress网站(完整指南)
- 如何使用WP-Optimize插件优化你的WordPress数据库()
- 如何在你的WordPress网站上接受比特币付款(分步指南)
- 如何将播客添加到你的WordPress网站(分步教程)
- w7雨林木风64位音频调试办法