Bug 42679

Summary: Подключение по Wifi в Lightdm
Product: Sisyphus Reporter: vitaliy <zabalskiyvp>
Component: lightdm-gtk-greeterAssignee: manowar <manowar>
Status: ASSIGNED --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: aen, antohami, cas, golubevan, manowar, sem, zabalskiyvp
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
Пример конфигурационных файлов для запуска трея в lightdm
none
Пример запуска трея в lightdm none

Description vitaliy 2022-05-05 08:50:35 MSK
При отсутствии LAN подключения (используется только WiFi доменная сеть) после ввода компьютера в домен и последующей перезагрузки отсутствует возможность подключения к WiFi сети на странице приветствия. Без этого невозможно попасть в сеть, что бы авторизоваться доменным пользователем.
Comment 1 manowar@altlinux.org 2022-06-06 17:04:31 MSK
Хм... Наверное, нужно разрешить данную WiFi в NetworkManager для всех пользователей. Причём тут lightdm и вообще DM?
Comment 2 Andrey Cherepanov 2022-06-06 17:09:53 MSK
(Ответ для manowar@altlinux.org на комментарий #1)
> Хм... Наверное, нужно разрешить данную WiFi в NetworkManager для всех
> пользователей. Причём тут lightdm и вообще DM?

Представь ситуацию: доменный пользователь заходит по корпоративному WiFi (пароли отличаются от доменных). Можно, конечно, зайти под локальным и настроить подключение, затем войти доменным. Но это не корпоративная практика. В gdm подобная возможность есть. Не тороплю, если будет желание, лучше это реализовать.

Меняю на enhancement.
Comment 3 vitaliy 2022-06-06 17:17:38 MSK
Если было так просто...
Постараюсь пояснить еще) ЛАНа нет.
Комп включили, админ под СВОИМ логинпассом попал в нужную (доменную) вифи.
Завел комп в домен.
Всё. Его можно отдавать пользователю.
Юзер получил его в руки. Включил. Высветилось приглашение ввода логинпасса. Уже доменного юзера.
Что бы пользователь авторизовался, ему надо подключиться в этой вифи под СВОИМ логинпассом. И потом, при наличии подключения, он может уже авторизоваться в домене.
У каждого пользователя СВОЙ логинпасс. Поэтому заранее "зашить универсальный" нельзя.
Нужен просто механизм подключения к фифи на стартовой странице, где выбор пользователей (авторизация).
Comment 4 Andrey Cherepanov 2022-06-06 18:49:22 MSK
(Ответ для vitaliy на комментарий #3)
> Если было так просто...
> Постараюсь пояснить еще) ЛАНа нет.
> Комп включили, админ под СВОИМ логинпассом попал в нужную (доменную) вифи.
> Завел комп в домен.
> Всё. Его можно отдавать пользователю.
> Юзер получил его в руки. Включил. Высветилось приглашение ввода логинпасса.
> Уже доменного юзера.
> Что бы пользователь авторизовался, ему надо подключиться в этой вифи под
> СВОИМ логинпассом. И потом, при наличии подключения, он может уже
> авторизоваться в домене.
> У каждого пользователя СВОЙ логинпасс. Поэтому заранее "зашить
> универсальный" нельзя.
> Нужен просто механизм подключения к фифи на стартовой странице, где выбор
> пользователей (авторизация).

Как обходной вариант можно войти локальным (без пароля или простым) и настроить wifi. Некрасиво, но работает.
Comment 5 manowar@altlinux.org 2022-06-06 21:38:26 MSK
Как насчёт отдельной сети WiFi, специально выделенной только для входа в домен? Чтобы в неё был только один маршрут — до DC и обратно? Без интернета? Потому в варианте с интерактивным подключением я вижу новую проблему: в домен можно и не войти, а подключение к WiFi под личным логином и паролем останется. Это создаёт потенциальную угрозу.
Comment 6 manowar@altlinux.org 2022-06-06 23:03:35 MSK
GDM я тоже посмотрю. Но пока навскидку есть подозрительный вопрос: а куда сохраняется пароль от WiFi сети, когда пользователь вводит его в GDM? Не будет ли он доступен всем пользователям?
Comment 7 vitaliy 2022-06-07 08:58:30 MSK
Стесняюсь подсказать решение...
Наверняка, у Вас есть стенды с развёрнутыми системами Ваших "конкурентов"..)
Следующую фразу прошу воспринимать не как "преимущество и недостатки", а как "там это решено"..
- Тестировал разные ОСи, в РедОСи есть справа вверху значок "сеть", но только в режиме "уведомления", а в РосеОСи есть сверху справа значок "сеть", и там работает именно в режиме "подключение".
Скажу корректно, не надо "как там", но если получится сделать "нечто похожее", то это будет универсальным решением на любой случай жизни а не только в свете рассматриваемого вопроса..
Comment 8 manowar@altlinux.org 2022-06-07 13:32:02 MSK
Кстати, о конкурентах. В самой доменной-раздоменной Windows такой возможности нет! Это нам о чём-то говорит? Значок сети там есть, но там только вкл./выкл. самолётика.

А вот на маке всё как в GDM. Вернее — это в GDM всё как на маке. Почти. И даже не только WiFi, но и VPN (что важно). Собственно, там те же апплеты, что на рабочем столе GNOME. Однако я навёл справки и выяснил, что в настоящей макоси подключение к сети WiFi до входа в систему не запоминается, пароль не сохраняется. Это тоже нужно учесть.

Само собой понятно, что в Росе работает — так как Роса это GNOME.
Comment 9 vitaliy 2022-06-07 13:43:52 MSK
Боюсь ошибаться, но даже на "обычной 10 про", без всяких домено-раздоменов (она про них ничего не знает еще), на странице приветствия полноценное подключение к вифи.., самолётиков там не вижу, глобус, на него тыкнуть и все сети доступные в списке..,  ноут специально запустил посмотреть..
Если про сохранение данных для входа, на этом этапе они не нужны. Их и не надо сохранять. Потому что за ноут может сесть другой юзер, и если до этого он не заходил (нет кешированного профиля), то ему надо тогда так же под собой подключиться к нужному вифи, что бы пройти авторизацию на сервере домена.
Comment 10 manowar@altlinux.org 2022-06-07 14:05:36 MSK
Ок, возможно, меня дезинформировали.
Comment 11 Andrey Cherepanov 2022-06-07 14:42:12 MSK
(Ответ для manowar@altlinux.org на комментарий #10)
> Ок, возможно, меня дезинформировали.

Скорее, судили по Windows Home Edition.
Comment 12 manowar@altlinux.org 2022-06-07 17:43:57 MSK
Created attachment 10879 [details]
Пример конфигурационных файлов для запуска трея в lightdm

(Ответ для manowar@altlinux.org на комментарий #8)
> Собственно, там те же апплеты, что на рабочем столе GNOME...

Я тут подумал, что сейчас вам хочется WiFi, а завтра захочется чего нибудь ещё, экзотического. :) И поэтому решил подойти к проблеме системно. В первом приближении получился вот такой набор скриптов и конфигов. Чтобы попробовать, нужно их распаковать по соответствующим путям. При этом файл /etc/X11/Xgreeter.lightdm должен быть заменён. Почти все файлы, кроме конфига в /etc/lightdm/ должны быть исполняемыми (проверить и выставить, если при распаковке не поставилось).

Понадобятся программы stalonetray и nm-applet (ну и NetworkManager, конечно).

Известные проблемы.

1. Скрипт работает не очень стабильно и на удачу — там сейчас задержка в 2 сек.

2. Самая большая проблема: nm-applet почему-то появляется в трее далеко не сразу. Буквально несколько минут (!) нужно ждать! Причём, если в скрипт добавить strace и почитать лог, то видно, что он в цикле пытается дождаться чего-то из сокета X11.

3. Проблема поменьше: трей так сразу не видно! :) Но если ткнуть мышой в верхнее меню (выбор сеанса или языка, или крупный шрифт), то трей появляется в левом верхнем углу. Появиться может ещё без nm-applet (см. прблему 2).
Comment 13 manowar@altlinux.org 2022-06-07 17:44:59 MSK
Created attachment 10880 [details]
Пример запуска трея в lightdm

Но если повезёт, то получается вот такой скрин у вас! ;)
Comment 14 manowar@altlinux.org 2022-06-07 17:46:23 MSK
Добавляю sem@. Миша, можешь что-то посоветовать относительно запуска nm-applet?
Comment 15 Mikhail Efremov 2022-06-07 19:11:51 MSK
Это только с nm-applet, с другими gtk-приложениями такого нет?
Comment 16 vitaliy 2022-06-07 19:57:06 MSK
Стесняюсь уточнить по поводу "экзотического" это то, что как бы реализовано, и не "хотелка", а что реально нужно к конкретных условиях?)
Дамы и господа, прошу прощения, что тестирую Альт, и хотел бы его использовать..
Но вот некоторые экзотические нехваталки не позволяют (да и не позволят) использовать сей чудный продукт в большинстве образовательных учреждений города, который нельзя называть.
Достаточно было сказать что то типа "это сделать невозможно", чем глумиться над тупым и неопытным в линуксе техническим специалистом обычной школы))
В таком случае я бы не отрывал бы Ваше драгоценное время, которое, я просто уверен, Вы потратите гораздо более продуктивно, чем обсуждать моё невнятное пожелание, ну и я бы потратил его на что то более полезное, допустим, знакомство с линукс-системами более глубоко на предмет их возможностей.
В таком случае, весь вопрос и ветку можно закрывать, приношу извинения), тогда другие "экзотические" пожелания к продукту с точки зрения юзабельности не имеют смысла)
Было приятно и полезно узнать много нового) 
Проблему можно пометить как "решенную") Спасибо)
Comment 17 AEN 2022-06-07 20:13:00 MSK
Не понял, что плохого в слове "экзотический"
Можете вставать в позу, но мы решаем не Вашу личную проблему, а багу 42679. Более того, она уже принята к рассмотрению.
Comment 18 manowar@altlinux.org 2022-06-07 21:18:34 MSK
Я всего лишь хотел сакцентировать внимание на том, что потенциально таким способом можно запускать на экране гритера всё, что угодно, а не только nm-applet. Так сказать, задел на будущее.
Comment 19 manowar@altlinux.org 2022-06-08 17:15:30 MSK
Главную сложность пока вижу в том, что для использования сторонних программ на экране DM, в том числе и средства настройки сети, уже желательно иметь минимальный WM. И его ещё нужно подружить с DM, который не рассчитан на то, что на экране будет работать WM.

Правда, если для настройки использовать только наш acc, то WM может быть и не нужен, потому что acc — строго однооконная (вроде бы).

Между прочим, если на экране можно будет запустить несколько окон, то это ухудшает безопасность при вводе пароля — могут быть проблемы с фокусом. Это тоже нужно продумать отдельно.
Comment 20 manowar@altlinux.org 2022-06-15 01:35:40 MSK
(Ответ для Mikhail Efremov на комментарий #15)
> Это только с nm-applet, с другими gtk-приложениями такого нет?

Оказалось, что он хотел notification daemon для уведомлений на рабочем столе.
Comment 21 Andrey Cherepanov 2023-06-20 08:17:02 MSK
Вариант из Ubuntu: https://answers.launchpad.net/lightdm-gtk-greeter/+question/259914
Comment 22 Anton Golubev 2023-06-20 16:33:44 MSK
В lightdm-kde-greeter 0.4.11 добавлен функционал настройки сети, правда с теми же ограничениями, что и если использовать nm-applet - можно подключать/отключать общедоступные (настроенные рутом) соединения, и можно создавать wifi-соединение, но только "приватное" для _ldm, и оно отключается после завершения сессии гритера.

см.также https://bugzilla.altlinux.org/46502
Comment 23 manowar@altlinux.org 2023-06-28 13:55:16 MSK
(Ответ для Andrey Cherepanov на комментарий #21)
> Вариант из Ubuntu:
> https://answers.launchpad.net/lightdm-gtk-greeter/+question/259914

Это решение завязано на libappindicator, который у нас был удалён (antohami). Антон, можешь рассказать, пожалуйста, почему это было сделано.
Comment 24 Антон Мидюков 2023-06-28 14:03:27 MSK
(Ответ для manowar@altlinux.org на комментарий #23)
> (Ответ для Andrey Cherepanov на комментарий #21)
> > Вариант из Ubuntu:
> > https://answers.launchpad.net/lightdm-gtk-greeter/+question/259914
> 
> Это решение завязано на libappindicator, который у нас был удалён
> (antohami). Антон, можешь рассказать, пожалуйста, почему это было сделано.

libayatana-appindicator вместо appindicator сейчас.