前言:网上关于ssh登录后限定用户到特定目录的文章很多,但绝大部分都是天下一家抄的局面,果子我实在看不下去了,特意整理了下,希望大家不要再走弯路了。
1、环境准备
CentOS 6.4_X64 ISO安装包一个
在Vmware虚拟机中安装好操作系统
2、创建chroot环境
1)以root用户登录进行环境搭建,这里以test用户为例,创建用户,并设置好密码
useradd test passwd test
说明下,也可以创建一个用户组,以后将你需要chroot的用户加入到这个组中。
2)创建目录并创建基本目录
mkdir /var/chroot cd /var/chroot mkdir bin home/test lib64 etc -p #拷贝/lib64下所有库,我的是64位系统,32位系统可以拷贝/lib cp -fra /lib64/* /var/chroot/lib64 #拷贝密码文件 grep test /etc/passwd > etc/passwd grep test /etc/shadow > etc/shadow grep test /etc/group > etc/group
3)利用centos的安装光盘安装yum服务
把ISO连接到虚拟机中,执行:
mkdir /cdrom mount -o loop /dev/sr0 /cdrom cd /cdrom/Packages rpm -ivh --nodeps --root=/var/chroot centos-release-*
解释下:这里是挂载系统镜像,并给chroot环境安装好yum服务源
4)安装软件包
以安装ls命令所在的软件包为例,可以通过以下命令查询到ls属于哪个软件包:
which ls #ls 命令在/bin/ls路径下 rpm -qf /bin/ls
得到包名为coreutils,使用以下命令安装到chroot环境下:
yum --installroot=/var/chroot -y install coreutils
3、修改ssh配置/etc/ssh/sshd_config
在最后加上以下配置:
Match User test ChrootDirectory /var/chroot
如果是组的话,把Match User改成Match group
重启下ssh服务:
service sshd restart
登录下试试吧
- 微信扫码赞助
- 支付宝赞助
2015/11/29 14:21:45
高