Тихо и незаметно Google опубликовал исходный код нового хранителя экрана xsecurelock под лицензией Apache 2.0. xsecurelock - хранитель экрана для X-сервера, ориентированный на безопасность. Последняя достигается путем использования модульной архитектуры, чтобы избежать типичные уловки для обхода стандартных хранителей экрана. Также отличительной особенностью данного проекта является минимальная зависимость от компонентов в системе.
Текущие возможности:
- Использование в качестве методов авторизации PAM - модуль, основанный на возможностях X11, auth_pam_x11 (рекомендуется разработчиками), и использующий pamtester (auth_pamtester).
- Заставки: пустой экран (saver_blank), проигрывание видео из директории ~/Videos средствами видеоплеера (модули saver_mplayer и saver_mpv), заставка, согласно настройкам XScreenSaver'а (модуль saver_xscreensaver).
- Простота и прозрачность создания собственного метода авторизации и заставки.
Для обеспечения максимальной безопасности хранителя экрана используются ряд методов, например:
- Авторизация и блокировка экрана вынесены в отдельные процессы, поэтому падение одного из процессов не вызовет разблокировку экрана.
- Основной процесс минимален и использует только возможности C, POSIX и X11, что уменьшает зависимость от ошибок в используемых библиотеках а также упрощает аудит кода.
- Вынос основного окна на передний план во избежание попадания, например, уведомлений поверх хранителя экрана. Автоматическое изменение размера основного окна, необходимое, например, при подключении второго монитора при запущенном хранителе экрана.
- Единственным способом завершения является положительный ответ модуля аутентификации (0), при котором xsecurelock также вернет 0. Поэтому хронические параноики могут использовать следующий способ запуска:
sh -c "xsecurelock ... || kill -9 -1"
На текущий момент не существует стабильных релизов xsecurelock, желающим предлагается использовать исходный код, опубликованный на GitHub (для пользователей Archlinux доступен также пакет в AUR) (инструкция). Сейчас проводится стабилизация кода, первый стабильный релиз планируется подготовить в течение месяца.
К стабильному релизу планируется:
- Расширить возможности авторизации (например, для ряда особых случаев с PAM).
- Увеличить количество поддерживаемых заставок «из коробки».
- Добавить *.desktop файлы для ряда «типичных» конфигураций.
- Добавить интерфейс настройки и авторизации, написанный с использованием тулкита Gtk (отдаленное будущее).
>>> Подробности