Есть вот такая задача из области информационной безопасности - ИБ:
- имеем linux компьютер с Debian, где можно запускать: процессы для решения автономных задач; сервисы для предоставления авторизованной информации внешним пользователям с других компьютеров посредством GUI программ через IP sockets
- да, на linux компьютере запущен sshd для защищённого доступа на linux console ЧТО НАДО 1. Организовать для удаленных GUI программ возможность добавление/удаление пользователей, также и групп 2. Организовать генерацию сессионного кода- token для обмена информацией с внешними пользователями
· 08.09.2024
Если ссх есть зачем что то ещё придумывать. Дёрнуть скрип на удаллном хосте, скрипт юзеров создаст.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· 09.09.2024
Там есть тонкое место, все операции с пользователями и группами под linux делаются с root правами, а пользователь на удаленной машине не должен иметь root прав, только права на работу с пользователями, поэтому там будет некий протокол чтобы вызвать скрипт. Я отпишу как это предлагаю сделать при решении задачи в канале "техно лаборатория"
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 09.09.2024
А я думал что не так понял задачу. Ну ок, посмотрим.
Есть setuid и sudo для того чтобы делать обычным пользователем необычные вещи.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 09.09.2024
Эти две вещи наделяют пользователя root правами на действия на Linux машине, а это запрещено в ТЗ, такие требования встречаются на ИБ софта в отраслях, например энергетики, системах промышленной автоматизации
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 09.09.2024
Setuid не наделяет пользователя никакими правами, так что с точки зрения ТЗ все хорошо )
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 09.09.2024
Но есть момент, чтобы выполнить например adduser нужно будет в setuid установить user-id-root и вот наш lunux процесс стал root
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 09.09.2024
Ну так чтобы поменять пассворд файл процессу надо иметь права в любом случае. Но пользователь при это прав не имеет. А в процессе можно гибко ограничивать возможные изменения.
Ну или надо сбоку приделать ещё одну систему аутентификации, керберос там или лдап или ещё что нибудь самописное с персональной базой. Но есть риск что самописное решение будет менее защищено.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён