При управлении сервером Linux предоставление ограниченного доступа пользователям для передачи файлов без предоставления полного доступа к оболочке является распространенной проблемой безопасности. Два инструмента, которые помогают достичь этого, – rssh и scponly. Эти ограниченные оболочки позволяют пользователям выполнять определенные операции передачи файлов через SCP, SFTP и rsync, не допуская при этом выполнения команд.
В этом руководстве мы рассмотрим установку и настройку rssh и scponly в системе Linux.
Большинство дистрибутивов Linux содержат rssh в своих репозиториях пакетов. Вы можете установить его с помощью следующих команд:
Для Debian/Ubuntu:
sudo apt update && sudo apt install rssh -y
Для CentOS/RHEL:
sudo yum install rssh -y
Для Arch Linux:
sudo pacman -S rssh
После установки настройте rssh, отредактировав его конфигурационный файл:
sudo nano /etc/rssh.conf
Отметьте необходимые опции, чтобы разрешить SCP, SFTP или rsync. Пример:
allowcp
allowsftp
allowrsync
Сохраните и выйдите из файла.
Чтобы назначить rssh оболочкой для определенного пользователя, выполните команду:
sudo usermod -s /usr/bin/rssh username
Теперь пользователь сможет выполнять разрешенные операции только через SCP, SFTP или rsync.
Для систем на базе Debian:
sudo apt update && sudo apt install scponly -y
Для CentOS/RHEL:
sudo yum install scponly -y
Для Arch Linux:
sudo pacman -S scponly
Чтобы ограничить доступ пользователя к scponly, измените его оболочку:
sudo usermod -s /usr/bin/scponly username
Чтобы убедиться, что пользователь правильно ограничен, выполните проверку:
ssh username@server
Это должно запретить доступ к оболочке, но разрешить передачу файлов по SCP/SFTP.
Чтобы проверить настройку, попробуйте передать файлы, используя:
Для SCP:
scp file.txt username@server:/home/username/
Для SFTP:
sftp username@server
Если все настроено правильно, пользователи должны иметь возможность передавать файлы, но не выполнять команды.
Используя rssh и scponly, администраторы могут повысить уровень безопасности, ограничив доступ пользователей только передачей файлов. Это предотвращает несанкционированный доступ к оболочке, позволяя выполнять необходимые операции обмена файлами. Убедитесь, что конфигурации регулярно обновляются в соответствии с политикой безопасности.