PDA

View Full Version : Chrooted SSH apps


bkrausz
17th July 2006, 20:53
I'm trying to provide Nano and a couple of other apps for my users (I just upgraded to the latest ispconfig). I edited /root/ispconfig/scripts/shell/creat_chrooted_env.sh and added /bin/nano and /usr/bin/nano to APPS, and reran it, but whenever I try to run nano I get an "Error opening terminal: xterm." error. Any way I can include xterm in the chroot?

Thanks!!

till
17th July 2006, 21:48
Maybe you can find the dependencys with strace as described here:

http://olivier.sessink.nl/jailkit/howtos_debug_jails.html

bkrausz
18th July 2006, 03:54
I spent a few hours hunting and I can't find exactly what you need to do to run xterm. I'm gonna try copying some more libs tomorrow...if anybody else is looking into this, please post, otherwise thanks for the recommendation till, I'll post if I find something.

falko
18th July 2006, 14:08
Did you have a look at this tutorial? http://www.howtoforge.com/chrooted_ssh_howto_debian

bkrausz
18th July 2006, 18:35
I did follow that howto...I found my problem.

There needs to be a couple of xterm files from the etc dir in the folder. Here's how to add nano:

EDIT /root/ispconfig/scripts/shell/create_chroot_env.sh
ADD /bin/nano to the end of the APPS= line (before the last ")
ADD at the bottom:
#Allow nano to work
mkdir ./etc/terminfo/x/
cp /etc/terminfo/x/* ./etc/terminfo/x/

And viola!

Tenaka
30th July 2006, 02:35
ok, but how would I add more apps (i.e. nano ) after having done all that, shall I simply rerun the whole how-to with the changed settings including more libbs and apps?

till
30th July 2006, 12:25
ok, but how would I add more apps (i.e. nano ) after having done all that, shall I simply rerun the whole how-to with the changed settings including more libbs and apps?

There is no need of rerunning the howto.

Just add the additional applications in the line APPS="....." in the file /root/ispconfig/scripts/shell/create_chroot_env.sh

When you update or create a new user in ISPConfig, the chroot enviroment will be rebuild with all the applications listed in that line.

Tenaka
31st July 2006, 23:37
I updated my user and nothing happened...

I just tried to run the script manually:

h898552:~/ispconfig/scripts/shell# ./create_chroot_env.sh
Usage: ./create_chroot_env username
h898552:~/ispconfig/scripts/shell# ./create_chroot_env.sh web1_postmaster
mkdir: cannot create directory `etc': File exists
mkdir: cannot create directory `bin': File exists
mkdir: cannot create directory `usr': File exists
mkdir: cannot create directory `usr/bin': File exists
cp: cannot create regular file `.//bin/bash': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//usr/lib/i686/cmov/libcrypto.so.0.9.7': No such file or directory
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
cp: cannot create regular file `.//lib/ld-linux.so.2': Text file busy
mkdir: cannot create directory `./etc/terminfo/x/': No such file or directory
cp: `./etc/terminfo/x/': specified destination directory does not exist
Try `cp --help' for more information.
h898552:~/ispconfig/scripts/shell# ls


anything wrong doing this like this? I am root and trying to use the script for the user web1_postmaster

till
1st August 2006, 08:46
Have you been logged in as web1_postmaster with a second console as you run the chroot script?

Tenaka
1st August 2006, 09:19
no I did not.

anyway this psot should be obsolte by now as my question has (almost) been answered in this post here: http://www.howtoforge.com/forums/showthread.php?t=1739&page=2

it seems the script still has some error like it should say mkdir - p instead of just mkdir and severall other problems pointed out in that post.

Tenaka
27th August 2006, 21:57
I want to include the sa-learn command into the shell so I can learn spams but I am not sure which sa-learn to include???

h898552:/var# locate sa-learn
/home/admispconfig/ispconfig/tools/spamassassin/usr/bin/sa-learn
/usr/bin/sa-learn
h898552:/var#

till
28th August 2006, 11:38
/home/admispconfig/ispconfig/tools/spamassassin/usr/bin/sa-learn

Tenaka
28th August 2006, 11:52
it needs perl:

-bash-2.05b$ ./sa-learn
-bash: ./sa-learn: /usr/bin/perl: bad interpreter: No such file or directory
-bash-2.05b$


can you give me soem tipps how to include perl into the jail? Is it a security hole? I really need sa-learn... available to users or an automated version of it but as I am no programmer...

falko
29th August 2006, 20:11
I think you can do it with the script on http://www.howtoforge.com/chrooted_ssh_howto_debian_p2 . Just add /usr/bin/perl to the APPS line.

Tenaka
30th August 2006, 00:32
works wonderful