Файловая структура относительно sshd jail root

Я устанавливаю sshd jail для некоторых пользователей в моей системе (archlinux). Не вдаваясь в подробности, я бы хотел, чтобы объем вопроса был минимальным.

настройка /etc/ssh/sshd_config:

Match group jaileduser
          ChrootDirectory /var/jailedusers
          X11Forwarding no
          AllowTcpForwarding no

и система /etc/password запись похожа на:

testuser1:x:2001:2000::/home/testuser1:/bin/bash

Итак, вопрос в том, является ли домашний каталог /home/testuser1 относительно sshd_config запись /var/jailedusers т.е. должна быть запись passwd /var/jailedusers/home/testuser1 или же /home/testuser1 с каталогом в /var/jailedusers из /home/testuser1 - И это оболочка в той же лодке - это запись passwd /var/jailedusers/bin/bash или просто /bin/bash,

Наконец при входе в систему /etc/passwd читать или /var/jailedusers/etc/passwd читать согласно sshd_config запись.

1 ответ

На основании справочной страницы:

Specifies the pathname of a directory to chroot(2) to after
authentication.  All components of the pathname must be root-
owned directories that are not writable by any other user or
group.  After the chroot, sshd(8) changes the working directory
to the user's home directory.

Так /etc/passwd должен содержать пути относительно корня системы (т.е. /bin/bash а также /home/testuser1) и корень системы после chroot будет /var/jailedusers (означающий, что /var/jailedusers/home/testuser1 будет фактическим домом и /var/jailedusers/bin/bash фактическая оболочка).

Чтобы ответить на вторую часть вопроса, sshd буду читать /etc/passwdвыполните аутентификацию и затем chroot в /var/jailedusers,

Обратите внимание, что /var/jailedusers также необходимо будет содержать дополнительные файлы, такие как общие библиотеки, необходимые для bash и минимальный набор /dev записи (например, /dev/null).

Другие вопросы по тегам