Bug 52182 - Переключение между группами контроля доступа OpenSSH блокирует доступ по ssh
Summary: Переключение между группами контроля доступа OpenSSH блокирует доступ по ssh
Status: REOPENED
Alias: None
Product: Sisyphus
Classification: Development
Component: gpupdate (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Valery Sinelnikov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-25 15:56 MSK by Белая Алёна
Modified: 2024-11-25 17:32 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Белая Алёна 2024-11-25 15:56:44 MSK
Версии:
gpui-0.2.55-alt1
gpupdate-0.11.4-alt1
admx-basealt-0.1.13.6-alt1

Стенды:
ALT Education 10.2 XFCE / KDE
ALT KWorkstation 10.4
ALT Workstation 10.2
ALT Server 10.2

Шаги воспроизведения:
1. Открыть GPUI, перейти в раздел Компьютер - Административные шаблоны - Система ALT - Службы - SSHD опции
Выбрать политику Группы для контроля доступа к серверу OpenSSH, переключить политику в состояние "Включено", выбрать "Режим работы":Только remote и нажать OK
2. Перезагрузить клиентскую систему и зайти на нее по ssh (например рутом)
3. Выбрать режим работы "Все пользователи" и нажать "ОК"
4. Перезагрузить клиентскую систему и зайти на нее по ssh (например рутом)

Результат: вход по ssh после 4 шага оказывается блокирован, в логах сервиса sshd:
"User root from <IP> not allowed because none of user's groups are listed in AllowGroups."

Ожидаемый результат: вход по ssh не блокируется при политике "Все пользователи". 

Проблема не воспроизводится, если переключиться на политику напрямую.
Comment 1 Evgeny Sinelnikov 2024-11-25 16:03:43 MSK
Очень странные ожидания. Работает ровно так, как и должно.
Смысл предложения: "Проблема не воспроизводится, если переключиться на политику напрямую.", - непонятен. Необходимы пояснения.

У нас, вообще, логин по ssh под рутом, по умолчанию, отключен. А так... "Все пользователи" - это члены группы users. Можно рута добавить в нужную группу, при такой политике, например.

Можно уточнить в документации, что "Все пользователи" - это члены группы users.
Comment 2 Белая Алёна 2024-11-25 16:12:50 MSK
(Ответ для Evgeny Sinelnikov на комментарий #1)
> Очень странные ожидания. Работает ровно так, как и должно.
> Смысл предложения: "Проблема не воспроизводится, если переключиться на
> политику напрямую.", - непонятен. Необходимы пояснения.
Т.к. переключение происходит с более строгой политики "remoteonly", при которой у рута не должно быть доступа (но он есть), на менее строгую "users", при которой доступ ожидается (предоставляется доступ группе wheel), вероятно есть проблема с применением политики. 

> У нас, вообще, логин по ssh под рутом, по умолчанию, отключен. А так... "Все
> пользователи" - это члены группы users. Можно рута добавить в нужную группу,
> при такой политике, например.
> 
> Можно уточнить в документации, что "Все пользователи" - это члены группы
> users.
В gpui указано следующее:
"Все пользователи — разрешить доступ к серверу OpenSSH для групп «wheel» и «users»"
Т.е. рут уже по умолчанию в группе "Все пользователи". Но доступ ему ограничивается. Также доступ ограничивается и обычному пользователю, который есть в группах users и wheel, ошибка та же.
Comment 3 Evgeny Sinelnikov 2024-11-25 17:25:10 MSK
Для более точной проверки необходимо указать состояние в каждом из рассматриваемых случаев:

# control sshd-allow-groups-list 
users
# grep -R AllowGroup /etc/openssh/sshd_config
AllowGroups wheel users

Ну, и id root проверить стоит разок:
$ id root
uid=0(root) gid=0(root) группы=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),19(proc)
Comment 4 Белая Алёна 2024-11-25 17:32:15 MSK
(Ответ для Evgeny Sinelnikov на комментарий #3)
> Для более точной проверки необходимо указать состояние в каждом из
> рассматриваемых случаев:
> 
> # control sshd-allow-groups-list 
> users
> # grep -R AllowGroup /etc/openssh/sshd_config
> AllowGroups wheel users
> 
> Ну, и id root проверить стоит разок:
> $ id root
> uid=0(root) gid=0(root)
> группы=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),19(proc)

# id root
uid=0(root) gid=0(root) группы=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),19(proc),434(ruby)

# control sshd-allow-groups-list 
remoteonly
# grep -R AllowGroup /etc/openssh/sshd_config
AllowGroups remote

Рута нет в группе remote, но доступ есть

# control sshd-allow-groups-list 
users
# grep -R AllowGroup /etc/openssh/sshd_config
AllowGroups wheel users

Рут есть в группе wheel, но доступ блокируется. 

Сами группы выставляются корректно.