Разрешить группе UNIX доступ только к одному файлу через SSH

Я хотел бы создать группу пользователей UNIX, которая имеет доступ только к одному конкретному файлу Python через SSH. То есть, они не должны иметь возможности запускать другие команды / программы или просматривать любую часть файловой структуры.

Я уже справился с этим, выполнив скрипт при входе в систему и отключив прерывания клавиатуры, но это не идеально, поскольку использование может все еще подключаться через WinSCP и просматривать структуру файла. Я изучил настройку тюрьмы, которая ограничивает пользователей определенным каталогом, но это кажется излишним для моих целей и все равно позволит им получить доступ к оболочке. Какое наиболее эффективное / безопасное решение?

Редактировать с более подробной информацией по запросу: сценарий должен выполняться на сервере, поскольку он часто подключается и обновляет / считывает базу данных, также находящуюся на сервере. Пользователи будут взаимодействовать друг с другом на сервере через скрипт. Я не хочу, чтобы пользователи загружали / устанавливали что-либо, кроме клиента SSH, но я хочу ограничить доступ ко всем частям сервера, кроме сценария.

One Solution collect form web for “Разрешить группе UNIX доступ только к одному файлу через SSH”

Мое решение состояло в том, чтобы следовать комментарию Кеннета и настроить lshell – было довольно легко и быстро сделать.

  1. Запустите sudo apt install lshell чтобы получить lshell
  2. Создайте группу UNIX (например, sudo groupadd testgroup группу sudo groupadd testgroup )
  3. Добавьте необходимых пользователей (ов) в вашу группу (например, sudo usermod -a -G testgroup username )
  4. Также добавьте пользователей (пользователей) в группу lshell (например, sudo usermod -a -G lshell username )
  5. Измените /etc/lshell.conf нужную конфигурацию (см. Ниже)
  6. Установите lshell в качестве оболочки по умолчанию для пользователей (например, chsh -s /usr/bin/lshell username )

В приведенной ниже конфигурации testuser может запускать script.py только после входа в систему через SSH. Они не могут подключаться к SCP / SFTP или просматривать структуру файла через оболочку.

 [grp:testgroup] login_script : "python /some/path/script.py" path : "/some/path/" forbidden : ["ls", "echo", "cd"] scp : 0 sftp : 0 
  • Что произойдет, если я установлю гостевые дополнения VirtualBox на хост?
  • WiFi-карта не была обнаружена Windows впервые после перезапуска с Ubuntu в режиме двойной загрузки
  • Автоматическая установка удаленной папки при загрузке
  • Обновление Ubuntu до 9.04 прерывает драйвер видеокарты ATI, драйверы VESA и ati / radeon
  • «Сгоревшие» пиксели на TFT-мониторе
  • Могу ли я создать пользователя SSH, который может получить доступ только к определенному каталогу?
  • Переустановите Windows 8 в раздел на OEM-машине для двойной загрузки (ubuntu)
  • Может ли 64-разрядное программное обеспечение работать на 32-битной ОС?
  • Ubuntu Maverick не будет работать с моими внешними громкоговорителями
  • Является ли (Ubuntu) Linux алгоритмом копирования файлов лучше, чем Windows 7?
  • Какую версию Windows 7 купить для юридического использования в Ubuntu VirtualBox?
  • Debian: обновление списков пакетов с помощью apt-offline, --simulate непонятно для apt-get update
  • Interesting Posts

    Удаленный рабочий стол для нескольких оконных компьютеров в локальной сети с динамическим IP-адресом

    Нечетные хром-шрифты (связанные с Helvetica)

    Запуск chkdsk на раздел диска без буквы диска

    Что означает пробел в селекторе CSS? т.е. в чем разница между .classA.classB и .classA .classB?

    Visual Studio 2012/2013 Экспресс автономная установка / активация

    Пульт дистанционного управления Linux-клавиатура / мышь

    Назначение звездочки перед свойством CSS

    Почему мой жесткий диск создает странные звуки после того, как власть отключилась?

    Как установить привязки клавиш для элементов меню в Sublime Text 2?

    Сколько стоит стоимость гигабайта данных на жестком диске?

    Как отключить нерелевантные обновления Windows

    Мой tcpdump всегда фильтрует пакеты?

    Зафиксировать верхнюю строку и несколько столбцов в Excel

    Восстановить пул ZFS после создания над ним

    В чем разница между ярлыками «Win-D» и «Win-M»?

    Давайте будем гением компьютера.