from small one page howto to huge articles all in one place

search text in:




Other .linuxhowtos.org sites: www.linuxhowtos.org
toolsntoys.linuxhowtos.org



Last additions:
How to make X listen on port 6000

How to make X listen on port 6000

words:

34

views:

82622

userrating:

average rating: 1.2 (52 votes) (1=very good 6=terrible)


May, 25th 2007:
April, 26th 2007:
Apr, 10th. 2007:
Druckversion . pdf icon
You are here: Tutorials per portage category->net-misc->openssh

Create a chrooted ssh user

This tutorial explains how to install and configure a chroot enviroment for an ssh user. This setup enables you to give out ssh accounts without having to fear that this user can see all files on the system.

Installing ssh

First you need to have a patched version of the sshd server. Luckily these patches can be enabled with the use flag "chroot" in the sshd use flags.
#echo "net-misc/openssh chroot" >> /etc/portage/package.use
#emerge openssh

creating the chroot enviroment

We will create our chroot enviroment in /home/chroot.
To make the chroot work, run the following commands to make the needed directories and devices for the chrooted user.
mkdir /home/chroot/
mkdir /home/chroot/home/
cd /home/chroot
mkdir etc
mkdir bin
mkdir lib
mkdir usr
mkdir usr/bin
mkdir dev
mknod dev/null c 1 3
mknod dev/zero c 1 5

Now we need to populate the directories with some binaries.
copy the following script into a file. If you need more apps, add them
to the APPS line.

APPS="/bin/bash /bin/ls /bin/mkdir /bin/mv /bin/pwd /bin/rm /usr/bin/id /usr/bin/ssh /bin/ping /usr/bin/dircolors"
for prog in $APPS; do
cp $prog ./$prog

# obtain a list of related libraries
ldd $prog > /dev/null
if [ "$?" = 0 ] ; then
LIBS=`ldd $prog | awk '{ print $3 }'`
for l in $LIBS; do
mkdir ./`dirname $l` > /dev/null 2>&1
cp $l ./$l
done
fi
done

After you have run the script, your chroot enviroment is almost done.
run

cp /lib/libnss_compat.so.2 /lib/libnsl.so.1 /lib/libnss_files.so.2 ./lib/
echo '#!/bin/bash' > usr/bin/groups
echo "id -Gn" >> usr/bin/groups
touch etc/passwd
grep /etc/passwd -e "^root" > etc/passwd
to copy some libraries and user information into the chroot.
You should also copy the line of the group in which you will create new users from /etc/group to /home/chroot/etc/group. In this tutorial we will create users in the group users, so we do this:
grep /etc/group -e "^root" -e "^users" > etc/group

and restart SSH:
/etc/init.d/ssh restart

Creating chrooted users

ssh decides which user should be chrooted and which not by the "home directory" entry in the /etc/passwd.
Example for a non-chrooted user:
user_a:x:2002:100:User A:/home/user_a:/bin/bash
This user will be chrooted:
user_b:x:2003:100:User B:/home/chroot/./home/user_b:/bin/bash
Now lets add a testuser to the chrooted user list:
useradd -s /bin/bash -m -d /home/chroot/./home/testuser -c "testuser" -g users testuser

Then we give testuser a password:
passwd testuser

Finally, we have to copy the line for testuser in /etc/passwd to /home/chroot/etc/passwd:
grep /etc/passwd -e "^testuser" >> /home/chroot/etc/passwd


Now log in as testuser and see if everything worked.

Have fun
back



Support us on Content Nation

New Packages

- as rdf newsfeed
- as rss newsfeed
- as Atom newsfeed
2025-12-27
execline - 2.9.8.0
Ebuild name:

dev-lang/execline-2.9.8.0

Description

A non-interactive scripting language

Added to portage

2025-12-27

gcc - 13.4.1_p20251225
Ebuild name:

sys-devel/gcc-13.4.1_p20251225

Description

The GNU Compiler Collection

Added to portage

2025-12-27

gcc - 14.3.1_p20251226
Ebuild name:

sys-devel/gcc-14.3.1_p20251226

Description

The GNU Compiler Collection

Added to portage

2025-12-27

gloo - 2025.12.02
Ebuild name:

sci-ml/gloo-2025.12.02

Description

library of floating-point neural network inference operators

Added to portage

2025-12-27

libslirp - 4.9.1
Ebuild name:

net-libs/libslirp-4.9.1

Description

A TCP-IP emulator used to provide virtual networking services

Added to portage

2025-12-27

minitest - 6.0.1
Ebuild name:

dev-ruby/minitest-6.0.1

Description

minitest/unit is a small and fast replacement for ruby's huge and slow test

Added to portage

2025-12-27

ostree - 2025.7
Ebuild name:

dev-util/ostree-2025.7

Description

Operating system and container binary deployment and upgrades

Added to portage

2025-12-27

rake-compiler-dock - 1.11.0
Ebuild name:

dev-ruby/rake-compiler-dock-1.11.0

Description

Easy to use and reliable cross compiler environment for building

Added to portage

2025-12-27

rdoc - 7.0.3
Ebuild name:

dev-ruby/rdoc-7.0.3

Description

An extended version of the RDoc library from Ruby 1.8

Added to portage

2025-12-27

rmagick - 6.1.5
Ebuild name:

dev-ruby/rmagick-6.1.5

Description

An interface between Ruby and the ImageMagick(TM) image processing library

Added to portage

2025-12-27

s6 - 2.14.0.0
Ebuild name:

sys-apps/s6-2.14.0.0

Description

skarnet.org's small and secure supervision software suite

Added to portage

2025-12-27

s6-linux-init - 1.2.0.0
Ebuild name:

sys-apps/s6-linux-init-1.2.0.0

Description

Generates an init binary for s6-based init systems

Added to portage

2025-12-27

s6-linux-utils - 2.6.4.0
Ebuild name:

sys-apps/s6-linux-utils-2.6.4.0

Description

Set of tiny linux utilities

Added to portage

2025-12-27

s6-portable-utils - 2.3.1.1
Ebuild name:

sys-apps/s6-portable-utils-2.3.1.1

Description

Set of tiny portable unix utilities

Added to portage

2025-12-27

skalibs - 2.14.5.0
Ebuild name:

dev-libs/skalibs-2.14.5.0

Description

General-purpose libraries from skarnet.org

Added to portage

2025-12-27

slirp4netns - 1.3.3
Ebuild name:

app-containers/slirp4netns-1.3.3

Description

User-mode networking for unprivileged network namespaces

Added to portage

2025-12-27

zstd-ruby - 2.0.4
Ebuild name:

dev-ruby/zstd-ruby-2.0.4

Description

Ruby binding for zstd (Zstandard - Fast real-time compression algorithm).

Added to portage

2025-12-27

2025-12-26
android-studio - 2025.2.2.8
Ebuild name:

dev-util/android-studio-2025.2.2.8

Description

Android development environment based on IntelliJ IDEA

Added to portage

2025-12-26

cargo-c - 0.10.19
Ebuild name:

dev-util/cargo-c-0.10.19

Description

Helper program to build and install c-like libraries

Added to portage

2025-12-26

charliecloud - 0.43
Ebuild name:

sys-cluster/charliecloud-0.43

Description

Lightweight user-defined software stacks for high-performance computi

Added to portage

2025-12-26

cmd2 - 3.1.0
Ebuild name:

dev-python/cmd2-3.1.0

Description

Extra features for standard library's cmd module

Added to portage

2025-12-26

containerd - 2.2.0
Ebuild name:

app-containers/containerd-2.2.0

Description

A daemon to control runC

Added to portage

2025-12-26

docker - 29.1.3
Ebuild name:

app-containers/docker-29.1.3

Description

The core functions you need to create Docker images and run Docker con

Added to portage

2025-12-26

docker-cli - 29.1.3
Ebuild name:

app-containers/docker-cli-29.1.3

Description

the command line binary for docker

Added to portage

2025-12-26

doxygen - 1.15.0-r2
Ebuild name:

app-text/doxygen-1.15.0-r2

Description

Documentation system for most programming languages

Added to portage

2025-12-26

eselect-ruby - 20251225
Ebuild name:

app-eselect/eselect-ruby-20251225

Description

Manages multiple Ruby versions

Added to portage

2025-12-26

gnatformat - 25.0.0-r2
Ebuild name:

dev-ada/gnatformat-25.0.0-r2

Description

Opinionated code formatter for the Ada language

Added to portage

2025-12-26

gpr - 26.0.0
Ebuild name:

dev-ada/gpr-26.0.0

Description

LibGPR2 - Parser for GPR Project files

Added to portage

2025-12-26

granite - 7.7.0
Ebuild name:

dev-libs/granite-7.7.0

Description

Elementary OS library that extends GTK+

Added to portage

2025-12-26

intellij-idea - 2025.3.1
Ebuild name:

dev-util/intellij-idea-2025.3.1

Description

A complete toolset for web, mobile and enterprise development

Added to portage

2025-12-26

langkit - 26.0.0
Ebuild name:

dev-ada/langkit-26.0.0

Description

A Python framework to generate language parsers

Added to portage

2025-12-26

libnpupnp - 6.2.3
Ebuild name:

net-libs/libnpupnp-6.2.3

Description

A C++ base UPnP library, derived from Portable UPnP, a.k.a libupnp

Added to portage

2025-12-26

librt - 0.7.5
Ebuild name:

dev-python/librt-0.7.5

Description

Mypyc runtime library

Added to portage

2025-12-26

multi_json - 1.19.0
Ebuild name:

dev-ruby/multi_json-1.19.0

Description

A gem to provide swappable JSON backends

Added to portage

2025-12-26

oneDNN - 3.10.2
Ebuild name:

sci-ml/oneDNN-3.10.2

Description

oneAPI Deep Neural Network Library

Added to portage

2025-12-26

openhab - 1
Ebuild name:

acct-user/openhab-1

Description

Added to portage

2025-12-26

openhab-bin - 5.1.0
Ebuild name:

app-misc/openhab-bin-5.1.0

Description

An open-source automation software for your home

Added to portage

2025-12-26

org-static-blog - 9999
Ebuild name:

app-emacs/org-static-blog-9999

Description

Static site generator using Emacs's org-mode

Added to portage

2025-12-26

org-superstar-mode - 1.5.0
Ebuild name:

app-emacs/org-superstar-mode-1.5.0

Description

Prettify headings and plain lists in Org mode (use UTF8 bullets)

Added to portage

2025-12-26

osm - 1.10
Ebuild name:

app-emacs/osm-1.10

Description

OpenStreetMap tile-based viewer for GNU Emacs

Added to portage

2025-12-26

osm - 1.9
Ebuild name:

app-emacs/osm-1.9

Description

OpenStreetMap tile-based viewer for GNU Emacs

Added to portage

2025-12-26

portage - 3.0.69.3-r3
Ebuild name:

sys-apps/portage-3.0.69.3-r3

Description

The package management and distribution system for Gentoo

Added to portage

2025-12-26

primecount - 8.0
Ebuild name:

sci-mathematics/primecount-8.0

Description

Highly optimized CLI and library to count primes

Added to portage

2025-12-26

primecountpy - 0.1.1-r1
Ebuild name:

dev-python/primecountpy-0.1.1-r1

Description

Cython interface to sci-mathematics/primecount

Added to portage

2025-12-26

q4wine - 1.4.2
Ebuild name:

app-emulation/q4wine-1.4.2

Description

Qt GUI configuration tool for Wine

Added to portage

2025-12-26

qemu - 10.1.3-r1
Ebuild name:

app-emulation/qemu-10.1.3-r1

Description

QEMU + Kernel-based Virtual Machine userland tools

Added to portage

2025-12-26

rbs - 3.10.0
Ebuild name:

dev-ruby/rbs-3.10.0

Description

The language for type signatures for Ruby and standard library definitions

Added to portage

2025-12-26

runc - 1.4.0
Ebuild name:

app-containers/runc-1.4.0

Description

runc container cli tools

Added to portage

2025-12-26

typer - 0.21.0
Ebuild name:

dev-python/typer-0.21.0

Description

Build great CLIs. Easy to code. Based on Python type hints

Added to portage

2025-12-26

upmpdcli - 1.9.8
Ebuild name:

media-sound/upmpdcli-1.9.8

Description

UPnP Media Renderer front-end for MPD, the Music Player Daemon

Added to portage

2025-12-26

vdr-femon - 2.4.0_p20240910-r2
Ebuild name:

media-plugins/vdr-femon-2.4.0_p20240910-r2

Description

VDR Plugin DVB Frontend Status Monitor (signal strength/

Added to portage

2025-12-26

vdr-wirbelscan - 2024.09.15-r1
Ebuild name:

media-plugins/vdr-wirbelscan-2024.09.15-r1

Description

VDR Plugin Scan for channels on DVB-? and on PVR*-Cards

Added to portage

2025-12-26

worldofpadman - 1.7.0-r3
Ebuild name:

games-fps/worldofpadman-1.7.0-r3

Description

Cartoon style multiplayer first-person shooter

Added to portage

2025-12-26

rdf newsfeed | rss newsfeed | Atom newsfeed
Copyright 2004-2025 Sascha Nitsch Unternehmensberatung GmbH
- Copyright and legal notices -
Time to create this page: 51.2 ms