Описание задачи:
В нулевой сессии пользователя запустить web-браузер firefox под уровнем отличным от нулевого.
Для решения будем использовать механизм sumac.
Решение:
Необходимо зайти в сессию под пользователем с правами sudo. Перейти в Пуск — Системные — Политика безопасности. Далее:
- открыть вкладку ALD домена,
- ввести пароль администратора ALD домена,
- выбрать доменного пользователя, под которым будет осуществляться в дальнейшем вход в несекретную сессию,
- в разделе «Привилегии» разрешить parsec_cap_sumac и сохранить настройки.
Создать файл в каталоге /usr/sbin/firefox_lvl.sh с следующим содержимым:
#!/bin/bash
profile_temp="/tmp/profile_$(tr -dc A-Za-z0-9 < /dev/urandom | head -c 5 ; echo '')"
sumac -l$1 "cp $(echo $KRB5CCNAME | cut -c 6-) /tmp/krb5cc_$(id -u); rm -r ~/.xauth*; mkdir -p $profile_temp"
sumac -l$1 "/usr/bin/firefox --profile $profile_temp http://srv-web.domain.ru; rm -rf $profile_temp"
Сделать данный скрипт исполняемым командой chmod +x /usr/sbin/firefox_lvl.sh
Далее при
использовании стандартной
kerberos-авторизации
в домене ALD
необходимо войти доменным
пользователем с уровнем сессии
«Несекретно». Создать на рабочем столе,
через меню правой кнопки мыши, ярлык
для запуска Firefox с уровнем «Сов.Секретно».
В Редакторе ярлыков заполнить
строки следующим образом:
Тип:
Приложение
Имя: Firefox_lvl3
Имя[ru]: Сов. Секретный Firefox
Значок: firefox
Значок[ru]: firefox
Команда: /usr/sbin/firefox_lvl.sh 2
И нажать кнопку «Да»
Для изменения уровня сессии firefox необходимо при создании ярлыка изменить строку «Команда» указав цифру, соответствующую необходимому уровню.
Пример, для запуска под секретным уровнем:
Команда: /usr/sbin/firefox_lvl.sh 1
Принцип работы:
В случае успешной авторизации пользователя в системе, создается кеш-файл KERBEROS с правами. Путь до данного файла хранится в переменной окружения KRB5CCNAME. После активации созданного ярлыка, запускается скрипт, в котором, в первую очередь, выполняется команда sumac -l2 "cp $(echo $KRB5CCNAME | cut -c 6-) /tmp/krb5cc_$(id -u)". Данная команда копирует кеш пользователя, с указанным уровнем безопасности, во временный каталог /tmp, что позволит проходить сквозную авторизацию в дальнейшей работе. После копирования файла, через точку с запятой, выполняется удаление временных файлов и каталогов, которые использовались при прошлом запуске. Так же создается каталог с временным профилем firefox, который будет использоваться для работы под заданным уровнем сессии. Командой sumac -l2 "/usr/lib/firefox/firefox --profile $profile_temp http://srv-web.domain.ru", происходит запуск приложения Firefox, с использованием временного профиля, и переход на указанный URL.
Комментариев нет:
Отправить комментарий