Как создать пользователя с ограниченной оболочкой

Я знаю, что существуют другие вопросы как это, и я уже считал некоторые из них. Но это не решило мою проблему. Я хочу создать пользователя, который имеет sftp доступ к его корневому каталогу только и не разрешен видеть файлы/папки выше этого каталога. Он также должен смочь выполнить команды оболочки в этом каталоге. (запуск узла обрабатывает, например),

sftp доступ работает до сих пор. Пользователь ограничивается своим корневым каталогом и может редактировать/удалять файлы.

Я пытался создать символьную ссылку sudo ln -s /bin/bash /bin/rbash и это говорит file already existing, таким образом, я установил пользовательскую оболочку на sudo usermod -s /bin/rbash user но если пользователь регистрируется на пути shh, это показывает текст приветствия Ubuntu и затем /bin/rbash: No such file or directory. То же происходит, если я установил оболочку для избиения.

Мой sshd_conf похож на это теперь:

#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes

Match group sftp
        ChrootDirectory /home/userdirectory
        AllowTcpForwarding no
#       ForceCommand internal-sftp

Я также пытался создать символьную ссылку из /bin/bash кому: /home/userdirectory/bin/bash но затем когда пользователь регистрируется на пути ssh, это говорит Too many symbolic links.

Я скопировал /bin/bash кому: /home/userdirectory/bin/bash и это говорит no such file or directory.

3
задан 20 August 2018 в 11:03

1 ответ

Я решил это путем копирования /bin/bash кому: /home/userdirectory/bin/bash.

После этого я перечислил требуемые библиотеки с

ldd /bin/bash

и скопированный их всех в их соответствующие каталоги под chroot /home/userdirectory.

Если Вы хотите иметь дальнейшие команды в оболочке, необходимо скопировать их с /bin кому: /home/userdirectory/bin также и добавьте их библиотеки.

2
ответ дан 1 December 2019 в 16:51

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

Похожие вопросы: