Введение

При управлении сервером Linux предоставление ограниченного доступа пользователям для передачи файлов без предоставления полного доступа к оболочке является распространенной проблемой безопасности. Два инструмента, которые помогают достичь этого, – rssh и scponly. Эти ограниченные оболочки позволяют пользователям выполнять определенные операции передачи файлов через SCP, SFTP и rsync, не допуская при этом выполнения команд.

В этом руководстве мы рассмотрим установку и настройку rssh и scponly в системе Linux.

Установка rssh

Установите rssh

Большинство дистрибутивов 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

После установки настройте rssh, отредактировав его конфигурационный файл:

sudo nano /etc/rssh.conf

Отметьте необходимые опции, чтобы разрешить SCP, SFTP или rsync. Пример:

allowcp
allowsftp
allowrsync

Сохраните и выйдите из файла.

Настройка пользователя с помощью rssh

Чтобы назначить rssh оболочкой для определенного пользователя, выполните команду:

sudo usermod -s /usr/bin/rssh username

Теперь пользователь сможет выполнять разрешенные операции только через SCP, SFTP или rsync.

Установка scponly

Установите scponly

Для систем на базе Debian:

sudo apt update && sudo apt install scponly -y

Для CentOS/RHEL:

sudo yum install scponly -y

Для Arch Linux:

sudo pacman -S scponly

Настройка 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, администраторы могут повысить уровень безопасности, ограничив доступ пользователей только передачей файлов. Это предотвращает несанкционированный доступ к оболочке, позволяя выполнять необходимые операции обмена файлами. Убедитесь, что конфигурации регулярно обновляются в соответствии с политикой безопасности.