chroot -- 限制其他用户liunx空间

2024-04-17 22:28

本文主要是介绍chroot -- 限制其他用户liunx空间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录- 限制其他用户liunx空间

    • 前言
    • 开始
    • 进入监狱
    • 总结


前言

前提

  1. ecs 服务器,centos系统,乌班图系统
  2. 需要root榕湖

开始

  1. 首先,登录到您的ECS机器。
  2. 创建一个新用户: 使用 adduser 命令创建一个新用户。例如,要创建一个名为 xushouchun 的用户,您需要运行:
sudo adduser xushouchun
sudo passwd xushouchun
  1. 对于通过 SSH 登录的用户,你需要在 /etc/ssh/sshd_config 文件中设置 ChrootDirectory 指令
cat /etc/ssh/sshd_config 
Match User xushouchun
ChrootDirectory /chroot
X11Forwarding no
AllowTcpForwarding no

限制文件上传下载

   #  ForceCommand internal-sftp
  1. 绑定设备和其他必要的目录 (可选):你可能需要把/dev、/proc、/sys等系统目录绑定到chroot环境中以确保某些功能能够正常工作:
mkdir -p /chroot/{dev,proc,sys}
sudo mount --rbind /dev /chroot/dev
sudo mount --rbind /proc /chroot/proc
sudo mount --rbind /sys /chroot/sys
  • . /dev:/dev 目录包含了代表系统中所有设备的特殊文件,包括硬盘、输入设备、随机数生成器等。在 chroot 环境中,如果你需要访问这些设备文件(例如,/dev/null, /dev/random),你需要将其绑定到 chroot 的 /dev 下。
  • . /proc:/proc 是一个虚拟文件系统,包含了内核与进程的信息,许多程序都依赖于此目录来收集系统信息。绑定 /proc 到 chroot 环境中,允许在 chroot 环境中运行的程序访问到这些信息。
  • . /sys:与 /proc 类似,/sys 是另一个虚拟文件系统,提供了内核的设备和硬件信息,它允许用户态程序读取或对设备和驱动进行配置。将其
    绑定到 chroot 环境中可以让这些操作和信息在 chroot 中同样可用。
  1. 配置目录
 sudo mkdir -pv /chroot/{bin,lib64,etc,home,usr/share/terminfo}
  1. 配置环境隔离
cp /home/xushouchun/.bash_profile /chroot/home/xushouchun/.bash_profile
  1. 配置命令
cp -R /usr/share/terminfo/x/* /chroot/usr/share/terminfo/x/
sudo cp  -f /bin/clear /chroot/bin
sudo cp  -f /bin/bash /chroot/bin/
sudo cp  -f /bin/su /chroot/bin/
sudo cp  -f /bin/ls /chroot/bin/
sudo cp /usr/bin/ldd /chroot/usr/bin/
sudo cp /usr/bin/bash /chroot/usr/bin/

其次,你需要找出ls依赖了哪些库,你可以在系统的根环境(不是chroot内)使用 ldd 命令:

sudo ldd /bin/ls
  1. 所有依赖拉进来

cp -rf /lib64/* /chroot/lib64/# 拉取对应的
sudo cp /lib64/libselinux.so.1 /chroot/lib64/
sudo cp /lib64/libcap.so.2 /chroot/lib64/
sudo cp /lib64/libacl.so.1 /chroot/lib64/
sudo cp /lib64/libc.so.6 /chroot/lib64/
sudo cp /lib64/libpcre.so.1 /chroot/lib64/
sudo cp /lib64/libdl.so.2 /chroot/lib64/
sudo cp /lib64/ld-linux-x86-64.so.2 /chroot/lib64/
sudo cp /lib64/libattr.so.1 /chroot/lib64/
sudo cp /lib64/libpthread.so.0 /chroot/lib64/sudo ldd /bin/clear
sudo cp -R /usr/share/terminfo/x /chroot/usr/share/terminfo/

在这里插入图片描述
10. 在chroot环境中为xushouchun创建home目录,并设置相应的权限和归属。

sudo mkdir -p /chroot/home/xushouchun
sudo chown -R xushouchun:xushouchun /chroot/home/xushouchun
  1. 收回权限:(略)
sudo chown -R root:root /chroot

进入监狱

sudo chroot /chroot

总结

ssh 限制了 xushouchun账户在home家目录
在这里插入图片描述
给定了对应的命令
在这里插入图片描述
提供了对应的配置
在这里插入图片描述
关于越狱问题,除非待讨论 除非对方有计算机基础,不然很难越狱

这篇关于chroot -- 限制其他用户liunx空间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/913021

相关文章

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

Mysql中的用户管理实践

《Mysql中的用户管理实践》:本文主要介绍Mysql中的用户管理实践,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录13. 用户管理13.1 用户 13.1.1 用户信息 13.1.2 创建用户 13.1.3 删除用户 13.1.4 修改用户

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

MySQL表空间结构详解表空间到段页操作

《MySQL表空间结构详解表空间到段页操作》在MySQL架构和存储引擎专题中介绍了使用不同存储引擎创建表时生成的表空间数据文件,在本章节主要介绍使用InnoDB存储引擎创建表时生成的表空间数据文件,对... 目录️‍一、什么是表空间结构1.1 表空间与表空间文件的关系是什么?️‍二、用户数据在表空间中是怎么

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1

CentOS7增加Swap空间的两种方法

《CentOS7增加Swap空间的两种方法》当服务器物理内存不足时,增加Swap空间可以作为虚拟内存使用,帮助系统处理内存压力,本文给大家介绍了CentOS7增加Swap空间的两种方法:创建新的Swa... 目录在Centos 7上增加Swap空间的方法方法一:创建新的Swap文件(推荐)方法二:调整Sww

详解如何在SpringBoot控制器中处理用户数据

《详解如何在SpringBoot控制器中处理用户数据》在SpringBoot应用开发中,控制器(Controller)扮演着至关重要的角色,它负责接收用户请求、处理数据并返回响应,本文将深入浅出地讲解... 目录一、获取请求参数1.1 获取查询参数1.2 获取路径参数二、处理表单提交2.1 处理表单数据三、

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设