Chrooted下降熊如何

Chroote滴熊HowTo

本教程正在编写,以帮助您将Drop Bear安装到chroot环境中。 它涵盖以下部分:

*安装滴熊
*设置滴熊
*设置Chroot环境
* Debug Chroote Drop Bear

掉熊

Dropbear是一个相对较小的SSH 2服务器和客户端。 它是用于openssh的替代轻量级程序,它专为具有低内存和处理器资源(例如嵌入式系统)的环境而设计。

http://matt.ucc.asn.au/dropbear/dropbear.html

安装

下载

wget -c http://matt.ucc.asn.au/dropbear/releases/dropbear-0.52.tar.bz2

提取

tar jxf dropbear-0.52.tar.bz2

组态

在我们的安装中,我们选择: / chroot / dropbear作为我们的chroot环境的根路径。 仅为了教育目的,我们将ssh的默认TCP端口更改为2222:

cd dropbear-0.52
./configure --prefix=/chroot/dropbear
sed -i 's/22/2222/g' options.h

汇编

就那么简单:

make

安装

默认安装过程:

make install

钥匙

下一步是为dropbear ssh服务器创建dss&rsa密钥。

我们必须先创建dropbear的密钥文件夹:

mkdir -pv /chroot/dropbear/etc/dropbear

接着:

/chroot/dropbear/bin/dropbearkey -t dss -f /chroot/dropbear/etc/dropbear/dropbear.dss
/chroot/dropbear/bin/dropbearkey -t rsa -s 4096 -f /chroot/dropbear/etc/dropbear/dropbear.rsa

如您所见,我们使用chroot环境路径,而不需要我们的分发路径层次结构。 Drop Bear的钥匙已经一次安装到我们的chroot环境中。

共享库

我们现在必须检查所有必需的共享库,这些库需要在chroot环境中运行:

ldd /chroot/dropbear/sbin/dropbear

Chroot环境

结构体

cd /chroot/dropbear/
mkdir -pv dev/pts proc etc lib usr/lib var/run var/log

图书馆

cp /lib/libutil.so.1 lib/
cp /usr/lib/libz.so.1 usr/lib/
cp /lib/libcrypt.so.1 lib
cp /lib/libc.so.6 lib/
cp /lib/ld-linux.so.2 lib/

额外的图书馆

这些库主要用于身份验证过程。

cp /lib/libnss_dns.so.2 lib/
cp /lib/libnss_files.so.2 lib/

文件

将必需文件从根复制到chroot:

cp /etc/localtime etc/
cp /etc/nsswitch.conf etc/
cp /etc/resolv.conf etc/
cp /etc/host.conf etc/
cp /etc/hosts etc/
touch var/log/lastlog
touch var/run/utmp
touch var/log/wtmp

设备

我们现在必须非常小心我们的进程的下一步。 我们必须为dropbear创建所有必要的设备来运行。

(记住,我们总是在chroot路径 - 例如/ chroot / dropbear 。)

mknod dev/urandom c 1 9
chmod 0666 dev/urandom
mknod dev/ptmx c 5 2
chmod 0666 dev/ptmx
mknod dev/tty c 5 0
chmod 0666 dev/tty

用户

当然,我们需要添加用户到我们的chroot dropbear设置。 您可以选择添加现有用户,也可以创建新用户。 我更喜欢添加一个现有的用户(例如ebal ):

grep ^ebal /etc/passwd > etc/passwd
grep ^ebal /etc/group > etc/group
grep ^ebal /etc/shadow > etc/shadow
mkdir home/ebal
chown ebal.ebal !$

Shell

每个用户都需要一个shell! 但是我们不需要安装bash,我们可以简单的使用busybox。 Busybox是一个轻量级的外壳,将很多常见的unix工具集合到一个小的可执行文件中。

cp /etc/shells etc/
sed -i 's/bash/sh/' etc/passwd
cd bin
wget -c http://busybox.net/downloads/binaries/1.16.0/busybox-i686
mv busybox-i686 busybox
chmod 0755 busybox
ln -s busybox sh
cd ../

装载点

这是我们(你)必须做的最重要的事情。 新环境需要访问终端(这是用户登录所必需的)和处理文件系统。

mount -o bind /dev/pts dev/pts/
mount -o bind /proc proc/

最后,我们准备从一个chroot环境中运行Drop Bear:

chroot /chroot/dropbear/ \
/sbin/dropbear \
-b /etc/dropbear/dropbear.banner \
-d /etc/dropbear/dropbear.dss \
-r /etc/dropbear/dropbear.rsa \
-m -w -g

调试

但是如果出现问题,我们可以随时使用strace调试正在运行的进程:

strace -f chroot /chroot/dropbear/ \
/sbin/dropbear \
-b /etc/dropbear/dropbear.banner \
-d /etc/dropbear/dropbear.dss \
-r /etc/dropbear/dropbear.rsa \
-F -E -m -w -g
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏