Для начала что мы собираемся сделать:
Мы создадим виртуальное пространство для пользователя который заходит на сервер с помощью SSH.
Что это значит. Значит то что кроме папки /home/user доступа у юзера никуда не будет.
Содаем нового пользователя user:
1 | useradd testuser |
Редактируем файл /etc/ssh/sshd_config
Добавляем в него следующее:
1 2 3 4 5 6 7 | Subsystem sftp internal- sftp UsePAM yes Match user testuser ChrootDirectory /home/testuser ForceCommand internal- sftp X11Forwarding no AllowTcpForwarding no |
Создаем нужные папки:
1 2 3 4 | mkdir /home/testuser/home mkdir /home/testuser/home/testuser chown -R root:root /home/testuser/ chown -R testuser:testuser /home/testuser/home/testuser |
Теперь если testuser зайдет по ssh на сервер он увидит только свои папки и больше ничего.
З.І. В большенстве случеев нужно для того чтобы давать доступ для загрузки файлов пользователю по SFTP