https://bugzilla.altlinux.org/show_bug.cgi?id=44144#c8 Предлагаю свести к минимуму разнобой с пакетом installer-feature-samba-usershares, т.к. он давно используется в дистрибутивах.
Ку-ку!
samba-4.16.7-alt2 -> sisyphus: Tue Nov 29 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt2 - Add role-usershares control allow or disallow for group users using of samba usershares as privilege. - Add compatibility support for sambashare group as common privilege assigned to usershares group (Closes: #44379). Tue Nov 22 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt1 - Update to maintenance release of Samba 4.16 (Samba#15203) - Security fixes: + CVE-2022-42898: Samba's Kerberos libraries and AD DC failed to guard against integer overflows when parsing a PAC on a 32-bit system, which allowed an attacker with a forged PAC to corrupt the heap. https://www.samba.org/samba/security/CVE-2022-42898.html Workaround and mitigations: * No workaround on 32-bit systems as an AD DC * file servers are only impacted if in a non-AD domain * 64-bit systems are not exploitable
Спасибо!
Вот только это не работает, если пользователя нет в группе users. А в SL он туда не включается, там за основу брался список default_groups из alterator-users, в котором users нет. В alterator-users в users должен добавлять вот этот коммит: https://git.altlinux.org/gears/a/alterator-users.git?p=alterator-users.git;a=commitdiff;h=edcb7b3c058b0a151252280c7bb812087e5c7731 но он, к счастью, не работает (иначе ломалось бы назначение произвольного списка групп по умолчанию для пользователя в дистрибутиве, на что рассчитывают скрипты в installer-distro-*). А не работает коммит из-за этого: https://bugzilla.altlinux.org/44505
Предлагаю делать наоборот: при наличии группы sambashare добавлять в нее группу usershare.
samba-4.16.7-alt2 -> p10: Tue Nov 29 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt2 - Add role-usershares control allow or disallow for group users using of samba usershares as privilege. - Add compatibility support for sambashare group as common privilege assigned to usershares group (Closes: #44379). Tue Nov 22 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt1 - Update to maintenance release of Samba 4.16 (Samba#15203) - Security fixes: + CVE-2022-42898: Samba's Kerberos libraries and AD DC failed to guard against integer overflows when parsing a PAC on a 32-bit system, which allowed an attacker with a forged PAC to corrupt the heap. https://www.samba.org/samba/security/CVE-2022-42898.html Workaround and mitigations: * No workaround on 32-bit systems as an AD DC * file servers are only impacted if in a non-AD domain * 64-bit systems are not exploitable
Таки нет, не fixed.
Вот такой control: $ sudo control role-sambashare disabled $ sudo control role-sambashare help enabled: Role group "sambashare" given privilege group "usershares" disabled: Privilege group "sambashare" assigned to role group "usershares" default: Group "sambashare" not used as role or privilege $ cat /etc/role.d/samba-usershares.role usershares: sambashare users: usershares $ sudo control role-sambashare enabled $ cat /etc/role.d/samba-usershares.role sambashare: usershares users: usershares совместно с вот таким триггером: # Enable sambashare group as role with usershares priviledge for compatility # during upgrade from previous manual managed installations. %triggerin -n %name-usershares -- %name < 4.16.7-alt1 control role-sambashare enabled должны решить проблему при обновлении: #311076 BUILDING #2 [locked] [test-only] p10 samba.git=4.16.7-alt4 #311075 BUILDING #2 [locked] [test-only] sisyphus samba.git=4.16.7-alt4
(In reply to Evgeny Sinelnikov from comment #8) > совместно с вот таким триггером: > > # Enable sambashare group as role with usershares priviledge for compatility > # during upgrade from previous manual managed installations. > %triggerin -n %name-usershares -- %name < 4.16.7-alt1 > control role-sambashare enabled > > должны решить проблему при обновлении: Но этот триггер будет работать только для тех, кто уже поставил пакет samba-usershares и поимел проблему. Установка же этого пакета все также будет ее создавать, т.к. control role-sambashare будет disabled я так пониимаю. Вообще же это все жуткий оверхед, нафига такие навороты с аж целым control? Группы sambashare больше никогда не будет, я переделаю installer-feature-samba-usershares, это только для уже существующих установок. Можно же просто в %post написать что-то типа if getent group sambashare >/dev/null 2>&1 && [ ! -f /etc/role.d/sambashare.role ]; then echo "sambashare: usershares" >/etc/role.d/sambashare.role fi И все, не надо никакого control, он совершенно бессмысленен.
(In reply to Evgeny Sinelnikov from comment #8) > enabled: Role group "sambashare" given privilege group "usershares" > disabled: Privilege group "sambashare" assigned to role group "usershares" С точки зрения пользователя: С первого взгляда кажется, что это одно и то же. С второго кажется, что ничего не понятно. Полагаю, надо как-то ближе к цели описать, а то похоже на перевод в bash на английский. Например: enabled: Allow <подставить нужное> disabled: Disallow <подставить нужное>
(In reply to Mikhail Efremov from comment #9) > Можно же просто в %post написать Для изменения настройки переустанавливать пакет?
Да, надо переделать. Действительно, вариант: - обновился; - поставил samba-usershares после обновления; этот триггер не обработает.
Только, control убирать не хотелось бы. Умолчания в дистрибутивах могут не совпадать с локальными требованиями. После установки у кого-то надо включить, а у кого-то выключить. Это может быть даже в одной комнате.
(In reply to Sergey V Turchin from comment #13) > Только, control убирать не хотелось бы. Умолчания в дистрибутивах могут не > совпадать с локальными требованиями. После установки у кого-то надо > включить, а у кого-то выключить. Это может быть даже в одной комнате. Это все нужно только для решения проблемы на системах, где ранее отработала installer-feature-samba-usershares при установки туда пакета samba-usershares (причем если его туда не ставить, то и проблемы нет). И все. Группы sambashare в новых дистрибутивах больше не будет, будет просто использоваться samba-usershares, про sambashare там ничего знать не нужно. (In reply to Sergey V Turchin from comment #11) > (In reply to Mikhail Efremov from comment #9) > > Можно же просто в %post написать > Для изменения настройки переустанавливать пакет? Настройки чего? Там ничего не надо настраивать. Надо просто обеспечить, чтобы usershares не сломались у пользователю, входящего в группу sambashare, но не входящего в группу users.
(In reply to Mikhail Efremov from comment #9) > И все, не надо никакого control, он совершенно бессмысленен. Область видимости утверждения не была указана. ;-)
(Ответ для Mikhail Efremov на комментарий #5) > Предлагаю делать наоборот: при наличии группы sambashare добавлять в нее > группу usershare. Это вариант, в итоге, выглядит самым разумным. Оставил control, установил предложенный вариант по умолчанию. #311076 BUILDING #3 [locked] [test-only] p10 samba.git=4.16.7-alt4 #311075 BUILDING #3 [locked] [test-only] sisyphus samba.git=4.16.7-alt4 Текст поправил: $ sudo control role-sambashare help enabled: Allow users in group "sambashare" to use samba usershares disabled: Assign group "sambashare" as privilege to groups "usershares" and "users" default: Privilege group "sambashare" assigned to users explicitly
(In reply to Evgeny Sinelnikov from comment #16) > enabled: Allow users in group "sambashare" to use samba usershares Так уже приятно выглядит. > disabled: Assign group "sambashare" as privilege to groups "usershares" and > "users" Тут опять непонятно, что именно "disabled"? Опция же называется "disabled", а не "changesomething". > default: Privilege group "sambashare" assigned to users explicitly Из описания не понятно, пользователю с этого что?
samba-4.16.7-alt5 -> sisyphus: Mon Dec 12 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt5 - Update text of summary for role-usershares and smb-conf-usershares. - Update default usershare prefix allow and deny lists: + usershare prefix deny list = /etc /dev /sys /proc + usershare prefix allow list = /home /srv /mnt /media /var - Add new controls for samba-usershares: + smb-conf-usershare-allow-list + smb-conf-usershare-deny-list + smb-conf-usershare-owner-only + smb-conf-usershare-allow-guests Thu Dec 08 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt4 - Add role-sambashare control for compatibility during upgrade from previous manual managed settings of usershares. - Trigger sambashare as role with privilege usershares (Closes: #44379). Sat Dec 03 2022 Evgeny Sinelnikov <sin@altlinux> 4.16.7-alt3 - Avoid cycle dependencies on common service files. - Fix cycle dependencies on libRPC and libREG samba4 libraries.
(In reply to Evgeny Sinelnikov from comment #16) > Текст поправил: > $ sudo control role-sambashare help Мне заранее жаль пользователей, пытающихся понять что это за control и зачем он нужен.
(Ответ для Mikhail Efremov на комментарий #19) > (In reply to Evgeny Sinelnikov from comment #16) > > Текст поправил: > > $ sudo control role-sambashare help > > Мне заранее жаль пользователей, пытающихся понять что это за control и зачем > он нужен. Увы, да.
(In reply to Mikhail Efremov from comment #19) > Мне заранее жаль пользователей, пытающихся понять что это за control и зачем > он нужен. +1. Пойду повешу что-нибудь.
(Ответ для AEN на комментарий #20) > (Ответ для Mikhail Efremov на комментарий #19) > > (In reply to Evgeny Sinelnikov from comment #16) > > > Текст поправил: > > > $ sudo control role-sambashare help > > > > Мне заранее жаль пользователей, пытающихся понять что это за control и зачем > > он нужен. > > Увы, да. А чем вас этот вариант не устраивает? enabled: Allow users in group "sambashare" to use samba usershares default: Allow users in group "sambashare" to use samba usershares if they are in the "users" group disabled: Disallow users in group "sambashare" to use samba usershares По моему, всё как просил zerg@ сделано. Ну, и да - две проблемы: - ужасный английский; - нужно уложить текст в минимальный набор слов.
(In reply to Evgeny Sinelnikov from comment #22) > Ну, и да - две проблемы: > - ужасный английский; > - нужно уложить текст в минимальный набор слов. Если надо, есть, кто переведёт в нужную сторону.
(In reply to Evgeny Sinelnikov from comment #22) > По моему, всё как просил zerg@ сделано. Только не в тех местах, где напоминает enabled: Allow disable false disabled: Disallow enable true
Смешанное использование в одном контексте "shareS" и "share" сбивает с толку. P.S. Не хотелось бы иметь необходимость пользоваться подобными настройками.
И просьба иметь ввиду, что до включения в дистрибутивы обновлённой функциональности осталось совсем немного. Это я к тому, что без специального уведомления релиз-менеджеров менять потом не стоит, чтобы незаметно не сломать.