Блокировка системы Linux с экрана
Мне нужно заблокировать систему, чтобы группа людей могла войти на сервер через ssh.
Когда они входят в ssh, я бы хотел, чтобы они были представлены на сеансе экрана и были заблокированы для этого единственного приложения. Это значит, что приложение может продолжать работать в фоновом режиме, в то время как больше ничего из командной строки не может быть запущено.
Есть идеи? Может быть, есть лучшее решение, чем экран?
3 ответа
Рассмотрите dtach, если все, что вам нужно, - это способность сохранять процессы в течение сеансов пользователя. dtach - это просто "отрывная" часть инструментов, таких как screen и tmux, сводящаяся к одной маленькой утилите.
Взгляните на настройку опции команды для авторизованных ключей (смотрите страницу руководства sshd в AUTHORIZED_KEYS). Если пользователи входят в систему с ключом, настроенным таким образом, указанная команда будет выполняться вместо оболочки пользователя или всего, что они могли ввести в его или ее командной строке ssh. Вы можете либо настроить его на запуск экрана, как вы хотели, либо просто для рассматриваемого приложения.
Пользователи могут делать практически все что угодно после входа в экран. Ctrl-A :screen /bin/sh
Войдите и у них есть раковина; Вы можете запустить экран как другой пользователь и использовать :umask
чтобы предотвратить это, но пользователи по-прежнему смогут читать и записывать файлы (:readbuf
, :writebuf
), запустить команды (:exec
), и так далее.