
Есть несколько похожих вопросов, но не одинаковых. Я не хочу менять папку по умолчанию. поэтому я хочу установить КОРНЕВУЮ ПАПКУ для подключения по ssh. Я имею в виду, что единственная папка, к которой клиент имеет доступ, это та, которую я установил. Я хочу установить путь, к которому мой клиент будет иметь доступ только к нему и не сможет использовать cd ..
.
Они не могут перейти в папки более высокого уровня, поскольку у них нет доступа и разрешения.
Редактировать: самое главное, что я хочу сделать, это иметь локальный сервер с некоторыми другими устройствами для записи на него, но не для доступа ко всем файлам. Если есть способ лучше, чем ssh, извините за мой плохой вопрос.
Спасибо
решение1
Вам нужно настроить ChrootDirectory
конфигурацию sshd для указанного пользователя, или для какой-то группы, или для всех пользователей, но это ужасно.
Например, вы создаете новый файл /etc/ssh/sshd_config.d/chroot_some_users.conf
и помещаете в него следующее:
Match User myuser
ChrootDirectory %h
Если вы хотите, чтобы это было доступно нескольким пользователям, используйте Match Group groupname
и добавьте всех необходимых пользователей в эту группу.
В современных дистрибутивах Linux есть Include /etc/ssh/sshd_config.d/*.conf
в /etc/ssh/sshd_config
. В старых дистрибутивах вам может потребоваться добавить эту строку туда самостоятельно; просто добавьте ее в конец. Когда вы все сделали, проверьте с помощью sshd -t
, и если он не сообщает об ошибках, можно безопасно перезагрузить конфигурацию с помощью systemctl reload sshd.service
.
Пользователь myuser
в конечном итоге увидит свой домашний каталог как корневой каталог файловой системы через SSH. Обратите внимание, что он не сможет войти через SSH, поскольку этот chroot не позволит ему увидеть двоичный файл оболочки и требуемые библиотеки, если только вы не сделаете их доступными в его домашнем каталоге. Но он по-прежнему сможет использовать SFTP для передачи файлов и переадресации портов TCP.
Прочитайте man sshd_config
(полностью!) и man sshd
узнайте много важной и полезной информации.