This is a quick how to on how to make a chrooted shell server on OpenBSD. First create a group named chroot: groupadd chroot Next, add to your /etc/ssh/sshd_config file the following lines: Match Group chroot ChrootDirectory /chroot AuthorizedKeysFile /chroot/home/%u/.ssh/authorized_keys PasswordAuthentication no Create a /chroot directory (it would be safer to put it on a dedicated partition, but don't forget that nodev must not be set on that partition if you do that). This assumes your chroot directory will be /chroot and your users home directories will be /chroot/home/%u Create your users without creating a home directory and do not set a password: useradd user1 in /etc/passwd, it should appear like user1:*:1256:10::/home/user1:/bin/ksh Do _not_ change the home directory, it will be created in the chroot, but /chroot must not be prepended to it Add your users to the chroot group Then download the script http://allard.it/chroot/chroot_setup.sh Edit the script to match the comands you wnat to be available, COMMANDS is supposed to be relatively generic, while LOCALCMDS is for specific commands you wnat to be available Next, run the script, it will create all the needed directories and will try to find the dependencies needed for your applications Then place the ssh keys for your users in /chroot/home/%u/.ssh/authorized_keys permissions should already be correct Note that the script doesn't delete anything in /chroot/home, so you upgrade or change the apps and re-run the script without any harm to the user home directories