Ограничение доступа пользователя к выполнению команд в оболочке (Shell) можно осуществить с помощью утилиты rbash (restricted bash) или с помощью настройки прав доступа к исполняемым файлам.
1. Ограничение доступа с помощью rbash:
- Создайте пользователя с использованием команды `useradd` с опцией `-s /bin/rbash`, например: `sudo useradd -s /bin/rbash username`.
- Установите ограничения доступа в файле `.bashrc` пользователя. Например, чтобы запретить пользователю использование curl/wget, добавьте следующие строки в `.bashrc`:
```
# .bashrc
# ...
alias curl='echo "curl is not allowed"'
alias wget='echo "wget is not allowed"'
```
2. Ограничение доступа с помощью настройки прав доступа:
- Создайте новую группу для ограниченного доступа, например: `sudo groupadd limited-access`.
- Измените владельца и группу для каталога, в котором пользователь будет хранить свои файлы:
```
sudo chown -R username:limited-access /path/to/userfolder
```
- Установите права доступа на исполняемые файлы:
```
find /path/to/userfolder -type f -exec chmod 700 {} \;
```
Таким образом, пользователь сможет закидывать файлы в свою папку через sFTP или SCP, но не сможет запускать свои бинарники.