LINUX.ORG.RU

Не получается запустить в Debian блокировщик экрана xtrlock. Помогите найти замену

 , ,


1

2

Запускаю от простого пользователя команду xtrlock в rxvt-unicode и получаю в ответ: password entry has no pwd.

Участник форума mandala посоветовал подход сделать блокировщик экрана с собственным отдельным паролем. Приложений с таким функционалом под Linux я не встречала. Быть может кто подскажет как сделать такое самостоятельно. С чего начать и что для сборки использовать.

Ещё интересует: есть ли под Linux блокировщики экрана с графическим паролем?



Последнее исправление: Joanna (всего исправлений: 1)

Ответ на: комментарий от Joanna

Вообще ошибка обычно связана с поддержкой теневых паролей. У тебя они используются? Покажи:

ls -l /etc/ | grep shadow

mandala ★★★★★
()
Ответ на: комментарий от mandala

-r-------- 1 65534 65534 0 Jan 28 18:00 gshadow

-r-------- 1 65534 65534 0 Jan 28 18:00 gshadow-

-r-------- 1 65534 65534 0 Jan 28 18:00 shadow

-r-------- 1 65534 65534 0 Jan 28 18:00 shadow-

На багтрекере Дебиана по ссылке https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=52139 нашла вот что по проблеме: Please check the permissions on xtrlock as a start - it should be setgid. Как проверить?

Joanna
() автор топика
Ответ на: комментарий от Joanna

Это очень старый баг :), он не актуален

Теперь всё понятно, у вас права

-r--------
(у пользователя нет доступа к файлу, вы запускаете от пользователя), вы можете попробовать привести права к виду (как у меня):

-rw-r-----  1 root shadow     796 янв 29 00:48 gshadow
-rw-------  1 root root       796 янв 18 20:23 gshadow-
-rw-r-----  1 root shadow    1216 янв 29 00:48 shadow
-rw-------  1 root root      1217 янв 20 03:45 shadow-

Имейте в виду, это снизит безопасность.

Либо попробуйте запустить с повышением привелегий и разблокировать потом ввод паролем суперпользователя (root)

если вы пользуетесь sudo

sudo xtrlock

или так

su -c xtrlock

Все способы потенциально снижают безопасность. Если для вас это критично (навряд ли, раз вы используете xtrlock) — не используйте их и откажитесь от xtrlock.

mandala ★★★★★
()
Ответ на: комментарий от Joanna

Кстати, у вас очень странные права на эти файлы. Вы их сами так выставили? Покажите:

cat /etc/debian_version

Debian у вас Debian GNU/Linux или один из deb-based дистрибутивов?

Ванильные права на эти файлы в buster/sid:

# ls -l /etc/ | grep shadow
-rw-r----- 1 root   shadow   570 янв 23 16:06 gshadow
-rw-r----- 1 root   shadow   560 янв 23 16:03 gshadow-
-rw-r----- 1 root   shadow   816 янв 28 20:11 shadow
-rw-r----- 1 root   shadow   880 янв 23 16:06 shadow-
-rw-r----- 1 root   root     880 янв 28 20:11 shadow.bak

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 1)
Ответ на: комментарий от mandala

Вы правы. Безопасность для меня критична. Поэтому у меня так настроено. Благодарю, что предупредили о рисках расширения прав доступа.

У меня именно Debian. Не Ubuntu.

Решила попробовать xtrlock, потому что он не тянет за собой зависимости GNOME и КDE, а ещё потому что не могу разобраться с настройкой PAM для других блокировщиков экрана.

Как вы и рекомендуете xtrlock хорошо бы заменить.

Затруднение вот в чём: пробовала устанавливать блокировщики экрана i3lock, light-locker и xscreensaver. Запускаю, экран блокируется, пароль не подходит. Т. е. не получается, что установила, запустила и работает.

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

Joanna
() автор топика
Ответ на: комментарий от Joanna

Запускаю, экран блокируется, пароль не подходит.

Они запускаются с понижеными правами и не могут считать shadow.

Как выход я вижу только (хотя возможно что-то еще) блокировщик с кастомным паролем (пароль приложения, не пароль пользователя). Но не знаю есть ли такие.

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 1)
Ответ на: комментарий от ananas

Посмотрел исходники, он дергает glibc для shadow, а больше я не понял — я не программист.

mandala ★★★★★
()
Ответ на: комментарий от mandala

ничего особого он не требует, кроме прав на чтение /etc/shadow. если у бинаря владелец root и навешен бит uid - все работает. даже с правами 0400 на shadow.

причем специально для параноиков - там чтение хэша пароля в самом начале main(), и потом идет сброс привилегий

ananas ★★★★★
()
Ответ на: комментарий от ananas

Да, ты прав, не знаю что там у ТС не получилось:

tux@mx:~$ sudo -i
[sudo] пароль для tux: 
root@mx:~# chmod ug+s /usr/bin/xtrlock 
root@mx:~# chmod 400 /etc/shadow
root@mx:~# chown 65534:65534 /etc/shadow
root@mx:~# exit
выход
tux@mx:~$ xtrlock 
tux@mx:~$
mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 1)
$ dpkg -l | grep xscreensaver
ii  xscreensaver                          5.40-1                       amd64        Screensaver daemon and frontend for X11
ii  xscreensaver-data                     5.40-1                       amd64        Screen saver modules for screensaver frontends
ii  xscreensaver-gl                       5.40-1                       amd64        GL(Mesa) screen saver modules for screensaver frontends
ii  xscreensaver-gl-extra                 5.40-1                       amd64        Extra GL(Mesa) screen saver modules for screensaver frontends

пробовали?

imb ★★
()
Ответ на: комментарий от Joanna

ТС — топик-стартер, англицизм, ни чего такого :)

К сожалению, приведённое вами решение не помогает. xtrlock по-прежнему не запускается.

Ну значет в системе что-то еще сильно изменено. Так на вскидку мне не понятно, вам виднее почему suid не срабатывает. )

mandala ★★★★★
()
Ответ на: комментарий от Deleted

Вот это я понимаю. Всё как и мне и надо. Спасибо вам за полезную гитхаб-находку.

Но тут вот какое дело: не хочется тянуть в систему компиляторы для сборки.

Что нужно сделать, чтобы находясь, к примеру, в LiveDVD это добро с Гитхаба в пакет .deb закатать?

Joanna
() автор топика
Ответ на: комментарий от Joanna

не хочется тянуть в систему компиляторы для сборки.

Без gcc не получится. Да и не понимаю я линя, в котором нельзя ничего скомпилить. Это уже не линь.

С другой стороны, зависимости по минимуму: libc6, libx11. То есть нужен gcc + libc-dev + libx11-dev. Даже на лайве это вполне можно себе позволить.

А коли нужен deb: bash-deb-build.

Deleted
()
Ответ на: комментарий от Joanna

Там те же яйца, только в профиль. По линку выше такой же код, разве что без замка на экране. И проблемы те же могут возникнуть. Вам тут принцип работы и необходимые требования к подобному классу программ стоит понять, а не прыгать от софтины к софтине, в надежде, что заработает

ananas ★★★★★
()
Ответ на: комментарий от ananas

К софтине с Гитхаба вроде пароль можно рандомный прикрутить. Поэтому меня и заинтересовал этот вариант.

Joanna
() автор топика
Ответ на: комментарий от ananas

Там те же яйца, только в профиль

Согласен. Но на сырье можно конкретно дебажить. Не то, что на бинарнике. А в этом плане xl гораздо проще.

Deleted
()
Ответ на: комментарий от mandala

На гитхабе есть и форк xtrlock

Я знаю. Но xtrlock - 324 line, xl - 92 line. Оба используют одно и то же. Что проще отдебажить?

Deleted
()
Ответ на: комментарий от Deleted

You can also override the password by specifying it as the first argument of the command line. A third way is to set the XLPASSWD environment variable.

А в остальном он такой же. Но вот это мне нравится, да.

Но xtrlock - 324 line, xl - 92 line

Линкуется туда же, хотя и не так много.

mandala ★★★★★
()
Ответ на: комментарий от mandala

А в остальном он такой же.

Совершенно верно.

Deleted
()
Ответ на: комментарий от Deleted

Но на сырье можно конкретно дебажить. Не то, что на бинарнике. А в этом плане xl гораздо проще.

Не проще

maloi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.