. У меня есть пользователь, которому нужно подключиться к удаленной машинеM
(через ssh)и запустить ее в фиксированный набор команд (скажем N
всего ).
Эти команды основаны на python, его библиотеках и привилегированном доступе к сети (, которая есть у машины M
).
Существуют ли стратегии по умолчанию, ограничивающие пользовательскую оболочку linux только выполнением этих N
команд, без какой-либо возможности:
Другими словами, каковы стратегии по умолчанию для запроса ограниченной консоли для пользователя после входа в систему, позволяя, например, только числа между 1
и N
в качестве входных данных?
Предположим, что это не крошечный chroot или контейнер только с тем, что им нужно, а многопользовательская операционная система общего назначения.
При достаточной автоматизации вход на хост может не потребоваться. Возможно, предоставить через какую-нибудь систему самообслуживания эти ограниченные возможности, что делает автоматика.
Чтобы позволить им делать то же самое на хосте, попробуйте то, что я бы назвал перехваченным текстовым меню. Какой сценарий вам может понадобиться написать.
Чтобы строго запретить человеку заниматься другими делами, требуется несколько уловок.
ForceCommand
.:shell
Выберите язык сценариев для написания меню. Рассмотрите возможность использования существующей библиотеки текстового меню. Цикл ввода сам по себе не сложен, но сделать его надежным, легко модифицируемым и с хорошим UX — это то, что вам действительно нужно в производственной среде.