歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix教程

Openssh的chroot

OpenSSH  1.建立chroot環境,假設在 /data/chroot 開始我們的chroot
mkdir /data/chroot

2.a 建立device,FreeBSD 4.x
mkdir /data/chroot/dev
cd /data/chroot/dev
cp /dev/MAKEDEV .
sh MAKEDEV jail
2.b 建立device,FreeBSD 5.x
mkdir /data/chroot/dev
mount_devfs devfs /data/chroot/dev

3. 復制一些執行程序,創建一些目錄環境
cd /data/chroot
cp -R /bin bin
mkdir -p usr/lib usr/libexec usr/sbin var/run var/log
cp -R /usr/bin usr/bin
cp -R /usr/lib usr/lib/
cp /usr/libexec/ld-elf.so.1 usr/libexec
cp /usr/sbin/pwd_mkdb /usr/sbin/vipw usr/sbin/
touch var/run/utmp var/log/wtmp

mkdir -p etc usr/share/misc/
cp /usr/share/misc/termcap usr/share/misc/
ln -s /usr/share/misc/termcap etc/termcap
cp /etc/pam.conf /etc/shells etc
mkdir -p var/tmp tmp
chmod 777 tmp var/tmp

4. 創建用戶和組
pw -V etc groupadd wheel -g 0
pw -V etc groupadd user -g 10000
touch etc/master.passwd
pw -V etc useradd root -u 0 -d /root -g wheel -s /bin/csh -h 0
pw -V etc useradd user -u 10000 -d /home/user -g user -s /bin/csh -h 0
pwd_mkdb -d etc etc/master.passwd
chmod u+s usr/bin/passwd usr/bin/chfn usr/bin/chpass usr/bin/chsh

5. 復制ssh配置文件和key
cp -R /etc/ssh etc/ssh

6. 編輯sshd配置文件讓sshd不需要使用sshd用戶啟動
找到#UsePrivilegeSeparation yes一行,修改為UsePrivilegeSeparation no
vi etc/ssh/sshd_config

7. 創建用戶homedir
mkdir -p home/user root
chown -R 10000:10000 home/user/

8.下載並且編譯chroot_safe
下載地址 http://chrootsafe.sourceforge.net/ 並且解包
./configure;make;make install
rehash

9. 運行sshd進行chroot
chroot_safe root /data/chroot /usr/sbin/sshd -p 22222

這個將會在22222端口打開這個 chroot 的sshd, 現在可以通過連接22222端口進行登錄
如果僅僅只是chroot一個用戶,可以少復制很多文件
Copyright © Linux教程網 All Rights Reserved