Авторские статьи

Автовыход из сессии после N минут бездействия вместо блокировки в Astra Linux.


Представьте компьютер под управлением Astra Linux для доступа только к ресурсам сети Интернет, в основном в браузере и в почтовой программе. Попеременно на данном компьютере может работать множество пользователей. Гостевой доступ (или одна учётная запись) не вариант, так как пользователи должны работать под своими учётными записями (локальными или доменными) для контроля, в том числе системы Data Leak Prevention (DLP).

Использовать понятие сессии в Астра Linux в нынешнем виде, тоже не вариант. Взгляните на скриншот. Непонятно какая конкретная учётная запись связана с конкретной сессией. Сам не могу понять где залогинен ivanoff, а где petroff!? Куда уж пользователю!

Странные сессии Астры Линукс

Поработав под своей учётной записью, люди ленятся и/или забывают осуществлять выход из сессии. Ситуацию усугубляет неприятный факт, что Astra Linux по умолчанию не пишет на экране блокировки имя пользователя. Это можно исправить через настройку входа в систему, но лучше не становится.

Условный пользователь Петров не будет искать условного Иванова, чтобы он ввёл свой пароль, разблокировал свою сессию и вышел из неё, чтобы поработать самому. А для обычного пользователя экран блокировки выглядит именно так - нужен какой-то пароль! Научить пользователя начинать новую сессию в Астре, та ещё задача. Если пользователь начинает новую сессию, а есть уже существующая, то ему будет предложено переключиться в неё. Данный момент с сессиями в Астре реально не продуман и не информативен.

С коллегами нам нужно было организовать принудительный выход из сессии после N минут бездействия вместо блокировки.

Так же вопрос автоматического выхода из сессии поможет нам решить вопрос с производительностью ПК, так как основным инструментом является браузер со множеством вкладок, то в каждой сессии оставленные браузеры занимают ОЗУ и в целом негативно влияют на общее быстродействие.

Astra Linux 1.7.5

  1. Для установки автовыхода из сессии можете внести изменения в следующие файлы:

    • Для новых пользователей /usr/share/fly-wm/theme/default.themerc
    • Для существующих ~/.fly/theme/current.themerc

    Установите параметр: ScreenSaver="fly-wmfunc FLYWM_LOGOUT"

  2. Для отключения подтверждения о выходе из сессии добавьте запись в файл

    • Для новых пользователей /usr/share/fly-wm/sessrc
    • Для существующих (~/.fly/sessrc)

    UseConfirmDialog=false
    UseSM=false

  3. Далее перейти: Пуск - Панель Управления - Оборудование - Электропитание.
    В разделе "При приостановке сеанса" установить значение времени в параметре "Заблокировать экран" и указать через сколько минут требуется выполнять выход по бездействию.
  4. Если изменения делали для конкретного пользователя, то выйдите из его сеанса и зайдите снова. Если изменения делали для всех пользователей, то лучше перезагрузите ПК.

Astra Linux 1.7.6

В Astra Linux 1.7.6 советы от 1.7.5 стали вызывать проблемы с зависанием Fly при частом автовыходе. Разработчики дали другие советы.

Для выполнения выхода из сессии после блокировки экрана по истечению времени на ALSE 1.7.6 были добавлены параметры LockerInCallback и LockerOutCallback.

  • В конфигурационный файл:
    /usr/share/fly-wm/theme/current.themerc - для новых пользователей
    /home/username/.fly/theme/current.themerc - для существующего пользователя

    Где username - имя пользователя, добавить следующие параметры:

    LockerInCallback="/usr/bin/fly-exit.sh"
    LockerOutCallback="/usr/bin/fly-kill.sh"

  • Создать скрипт /usr/bin/fly-exit.sh со следующим содержимым:

    #!/bin/bash
    sleep 10
    fly-wmfunc FLYWM_UPDATE_VAL UseExitDialog false
    fly-wmfunc FLYWM_UPDATE_VAL UseConfirmDialog false
    fly-wmfunc FLYWM_LOGOUT
    

    Где sleep 10 - время ожидания в секундах между замены скринсейвера на выход из сессии на экран входа в систему.

  • Создать скрипт /usr/bin/fly-kill.sh со следующим содержимым:

    #!/bin/bash
    pkill fly-exit
    
  • Задать права на скрипты:
    sudo chmod 755 /usr/bin/fly-exit.sh
    sudo chmod 755 /usr/bin/fly-kill.sh

Советы выше даны для Астра 1.7.6, установленной с нуля. Если вы обновляли её с ранних версий, то не забудьте вернуть дефолтные значения:

  1. Верните параметр: ScreenSaver=internal

    • Для новых пользователей /usr/share/fly-wm/theme/default.themerc
    • Для существующих ~/.fly/theme/current.themerc
  2. Удалите
    UseConfirmDialog=false
    UseSM=false
    так как это теперь выполняется в /usr/bin/fly-exit.sh

    • Для новых пользователей /usr/share/fly-wm/sessrc
    • Для существующих (~/.fly/sessrc)

Дополнительная документация
Заметки о новом Astra Linux Орёл
Специфичные для Astra Linux решения задач. Часть 1.
Специфичные для Astra Linux решения задач. Часть 2.

Дата последней правки: 2024-10-31 16:43:19

RSS vasilisc.com   


Разделы

Главная
Новости
Ворох бумаг
Видео Linux
Игры в Linux
Безопасность
Статьи об Astra Linux
Статьи о FreeBSD
Статьи об Ubuntu
Статьи о Snappy
Статьи об Ubuntu Phone
Статьи о Kubuntu
Статьи о Xubuntu
Статьи о Lubuntu
Статьи об Open Source
Карта сайта