Автор Тема: sudo и Athlon XP Barton  (Прочитано 978 раз)

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #45 : 23.11.2021 18:51:33 »
Решил я с помощью великого и ужасного Гугла посмотреть, что пишут в сети на тему sudo. Святое дело, зайти первым делом на Википедию
https://ru.m.wikipedia.org/wiki/Sudo
Да, статья конечно шедевральная, особенно мне понравился такой перл
В большинстве случаев грамотная настройка sudo делает небезопасную работу от имени суперпользователя ненужной.[/b
А что, если система настроена так, что sudo требует пароля root, то это опасно?
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #46 : 23.11.2021 19:00:25 »
А что под этой фразой понимаете вы? По какому признаку вы определяете, что такой-то пользователь линукс является привилегированным?
Я понимаю под привилегированным пользователем (если говорить о корпоративном использовании) любого телесного человека, например Васю Пупкина, который назначен на соответствующую должность с должностными обязанностями по конфигурированию операционных систем, локальных сетей, баз данных и прочих ИТ-сущностей, в связи с чем до него официально доведен пароль root.
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн gosts 87

  • Завсегдатай
  • *
  • Сообщений: 2 636
  • Дмитрий/Dmitry/德米特里/दिमित्री
Re: sudo и Athlon XP Barton
« Ответ #47 : 23.11.2021 19:03:47 »
Святое дело, зайти первым делом на Википедию
https://ru.m.wikipedia.org/wiki/Sudo
:-) Википедию может отредактировать любой желающий.

В большинстве случаев грамотная настройка sudo делает небезопасную работу от имени суперпользователя ненужной.[/b
А что, если система настроена так, что sudo требует пароля root, то это опасно?
Если человек сидящий за клавиатурой и перед монитором не понимает, что делает, то равнозначно опасно использование и su и sudo.

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #48 : 23.11.2021 19:06:15 »
Сразу после инсталляции альтов, таких пользователей в системе ещё нет. Две учётных записи которые создаются в альтах на инсталляции (root и пользователь группы wheel), принадлежат одному физическому лицу (человеку): root. (Не сиди под root-ом!).
Это с какого бодуна? Я за две недели 4 раза переустанавливал Альт Рабочая станция К 9.2, чтобы гарантированно исключить эффект "кривых рук". Докладываю вам, что созданный при инсталляции непривилегированный пользователь не входит в группу wheel.
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: sudo и Athlon XP Barton
« Ответ #49 : 23.11.2021 19:33:14 »
Сразу после инсталляции альтов, таких пользователей в системе ещё нет. Две учётных записи которые создаются в альтах на инсталляции (root и пользователь группы wheel), принадлежат одному физическому лицу (человеку): root. (Не сиди под root-ом!).
Это с какого бодуна? Я за две недели 4 раза переустанавливал Альт Рабочая станция К 9.2, чтобы гарантированно исключить эффект "кривых рук". Докладываю вам, что созданный при инсталляции непривилегированный пользователь не входит в группу wheel.

С такого (!!!):
Если в выводе команды
grep 'wheel' /etc/group
нет пользователя с uid=500
значит в кедах это выкручено кастомно для кедов.
И пользователь с uid=500 в альтах не может выполнять sudo-команды по причине:
# control | grep 'sudo '
sudo            wheelonly       (public wheelonly restricted)
И в альтах, это умолчание.

Также смотреть комментарий Skull:
https://forum.altlinux.org/index.php?topic=43242.msg364440#msg364440

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: sudo и Athlon XP Barton
« Ответ #50 : 23.11.2021 20:13:15 »
Когда я слышу про всякие тайм-ауты между требованием ввода пароля sudo, то на ум приходит другая всем известная ОС (название лишний раз повторять не будем), в которой большинство пользователей одновременно являются и администраторами и, в терминологии Linux - Root (Суперпользователями)...
И после такого эти пользователи (они же - Администраторы, они же - суперпользователи) удивляются, почему у них в системы всякая зараза сидит.

Сброс timestamp_timeout, весьма полезная вещь в sudo.

В sudo есть зап*ло (даже с rootpw):
$ sudo --help | grep '\-i,' -A1
  -i, --login                   запустить оболочку входа в систему от имени указанного
                                пользователя; также можно задать команду

Допустим вы запустили на выполнение комаду, - она отработает меньше чем за минуту:
$ sudo sh -c "time -f %E apt-get update"
[sudo] password for user1:
...
Получено 41,6MB за 11s (3704kB/s).                                                       
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
0:12.59

Но например на выполнении команды, вам срочно припекло отлучиться. У того кто сидит рядом с вашим столом, ещё четыре минуты на выполнение 'sudo -i', по причине не сброшенного timestamp:
$ man sudoers | grep timestamp_timeout -A8
       "timestamp_timeout"
              Количество минут, которое должно пройти  перед  тем,  как  sudo  запросит
              пароль  снова.  По умолчанию это 5. Установка этого значения в 0 заставит
              программу запрашивать пароль всегда. Установка значения меньшего,  чем  0
              будет  означать,  что  временные  метки пользователя бессрочны. Это может
              быть использовано для того, чтобы позволить пользователям самим управлять
              созданием  и удалением своих временных меток при помощи sudo -v и sudo -k
              соответственно.


И даже с rootpw без сброшенного умолчанием timestamp, локально, при определённом стечении обстоятельств, кто-то может беспарольно получить root-шелл.
Использовать сброс timestamp как завершение sudo-команды, а не через конфиг, не вариант:
Предыдущая команда выполняемая до сброса timestamp, может быть прервана, а результатом получим возможность беспарольного --login в root-шелл.
Конец истории. Хана системе.

С su совсем другая история. Он просто нафик пошлёт.
И в xfce-sysv например, sudo есть. Но он не настроен. Что как бы намекает, что root должен оторвать седалище от дивана и нормально настроить sudoers, в конфигурации, применительно для выполняемых задач и условий использования. А не всё для всех, с беспарольным таймаут и прочей сранью.
« Последнее редактирование: 23.11.2021 20:35:04 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: sudo и Athlon XP Barton
« Ответ #51 : 24.11.2021 03:19:07 »
Так это в Alt ах. Я же говорю обо всех Линукс дистрибутивах.
 :-)

В каждом линукс это индивидуально.
:-) Другие линукс:

Дефолты opensuse:
$ grep -v '^#\|^$' ./etc/sudoers
Defaults always_set_home
Defaults secure_path="/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin:/usr/local/sbin"
Defaults env_reset
Defaults env_keep = "LANG LC_ADDRESS LC_CTYPE LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE LINGUAS XDG_SESSION_COOKIE"
Defaults !insults
Defaults targetpw   # ask for the password of the target user i.e. root
ALL   ALL=(ALL) ALL   # WARNING! Only use this together with 'Defaults targetpw'!
root ALL=(ALL) ALL
@includedir /etc/sudoers.d

В xfce-sysv, я бы не рискнул засунуть 'ALL   ALL=(ALL) ALL', когда нет распределения прав доступа на выполнение. Это подойдёт для домашнего использования и малых офисов. Где один админ, он же root, по-определению. Но в больших организациях и больших корпоративах, которым нужен админ больше одного, такая конфигурация требует "раззвенеть" пароль root всем соадминистраторам. Со всеми отсюда вытекающими.

В opensuse, timestamp_timeout дефолтом в 5 минут. Такой же как и в альтах.
Но в debian/ubuntu, он неприлично высок,
$ man ./hlam-sudo-debian/usr/share/man/man5/sudoers_timestamp.5.gz | grep DESCRIPTION -A3
DESCRIPTION
     The sudoers plugin uses per-user time stamp files for credential caching.  Once a
     user has been authenticated, they may use sudo without a password for a short
     period of time (15 minutes unless overridden by the timestamp_timeout option).  By

хоть досуп и ограничен группой sudo
$ grep -v '^#\|^$' ./hlam-sudo-debian/etc/sudoers
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
root ALL=(ALL:ALL) ALL
%sudo ALL=(ALL:ALL) ALL
@includedir /etc/sudoers.d

А высокий timestamp_timeout, повышает шанс локального получения root-шелл окружения по беспарольному 'sudo -i'. Поэтому при дефолтном ненулевом timestamp_timeout и желании отойти от компьютера после выполнения sudo-команды, выполнение 'sudo -k' обязательно.

Иначе хрена толку от распределения прав доступа на выполнение, если любой дурак сможет получить root-шелл по неистёкшему timestamp_timeout.
« Последнее редактирование: 24.11.2021 03:31:19 от Speccyfighter »

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #52 : 24.11.2021 18:35:31 »
Дефолты opensuse:
Я показываю вам дефолты в Рабочей станции К

[root@host-11 ~]# grep -v '^#\|^$' ./sudoers
User_Alias      WHEEL_USERS = %wheel
User_Alias      XGRP_USERS = %xgrp
Defaults:XGRP_USERS env_keep += "DISPLAY XAUTHORITY"
@includedir /etc/sudoers.d
[root@host-11 ~]#

Прошу прокомментировать.
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #53 : 24.11.2021 18:40:39 »
Прикладываю файл /etc/sudoers по умолчанию в Рабочей станции К (пришлось переименовать).
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: sudo и Athlon XP Barton
« Ответ #54 : 24.11.2021 19:26:39 »
Дефолты opensuse:
Я показываю вам дефолты в Рабочей станции К

[root@host-11 ~]# grep -v '^#\|^$' ./sudoers
User_Alias      WHEEL_USERS = %wheel
User_Alias      XGRP_USERS = %xgrp
Defaults:XGRP_USERS env_keep += "DISPLAY XAUTHORITY"
@includedir /etc/sudoers.d
[root@host-11 ~]#

Прошу прокомментировать.
Прикладываю файл /etc/sudoers по умолчанию в Рабочей станции К (пришлось переименовать).

Закомментированы строки правил запуска sudo-команд:
Строки с
WHEEL_USERS ...
SUDO_USERS ...
ALL ...
# WHEEL_USERS ALL=(ALL) ALL

...

## Uncomment to allow members of group sudo to execute any command
# SUDO_USERS ALL=(ALL) ALL

## Uncomment to allow any user to run sudo if they know the password
## of the user they are running the command as (root by default).
# Defaults targetpw  # Ask for the password of the target user
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

Если раскомментировать одну из строк
# WHEEL_USERS ALL=(ALL) ALL
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

и раскомметировать строку
# Defaults targetpw  # Ask for the password of the target user

то sudo в альте будет работать аналогично sudo в opensuse.
Т.е. на выполнении sudo-команд, будет запрашиваться пароль root.
Поскольку явно не указанный пользователь, по-умолчанию, это всегда root.

Для режима paranoid, я бы рекомендовал в секцию с Defaults добавить строку:
Defaults timestamp_timeout=0

Тогда таймаут станет нулевым и пароль будет запрашиваться на каждой sudo-команде. Аналогично тому, как это делает su. Это исключит возможность получения root-шелл по неистёкшему таймаут. А также исключит возможность беспарольного выполнения sudo-команд.

И в альте и в opensuse, таймаут равен 5 минут.
И таймаут можно сделать не нулевым, а скажем 2 минуты.
Тогда строка с timestamp должна выглядеть так:
Defaults timestamp_timeout=2

Дискретность таймаута, одна минута.
Т.е. после ввода пароля на sudo-команде, пароль в следующий раз будет запрошен по истечении двух минут. Этого достаточно, для выполнения root-команд через sudo.


Но опять же:
Такая конфигурация sudoers, пригодна только для домашнего компьютера и компьютера малого офиса. Когда в офисе или малой организации, админ один и он и есть root.


И ещё момент:
этот варнинг
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

в основном критичен для каких-то других линукс, но не для альтов.
По-причине:
В альтах, использовать sudo, по-умолчанию имеют право только пользователи группы wheel,
# control | grep 'sudo '
sudo            wheelonly       (public wheelonly restricted)

в которую после инсталляции альта, входит первый созданный пользователь с UID=500.
Правда без targetpw, на выполнении root-команд через sudo, будет запрашиваться не пароль root, а пароль wheel-пользователя выполняющего sudo-команду.
« Последнее редактирование: 24.11.2021 19:57:53 от Speccyfighter »

Оффлайн Aleksey Shimanov

  • Давно тут
  • **
  • Сообщений: 65
    • Email
Re: sudo и Athlon XP Barton
« Ответ #55 : 25.11.2021 10:23:20 »
в связи с чем до него официально доведен пароль root.
В нормальной организации никто не должен знать пароль root'а, за исключением 1-го человека, и должен быть конверт с паролем в сейфе директора или службы безопасности. Так же должен быть другой конверт с инструкцией как сменить пароль root в случае утери его пароля.
Причина банальна - все что знает больше 1-го человека - знают все.

Тут я со Speccyfighter соглашусь. Но видимо еще до конца линуксовую безопасность не понимаю... :)

P.S. А если админу нужно отойти хоть на 1 секунду, он должен заблокировать консоль, ssh, и прочие подобные вещи, и только после этого отходить.

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #56 : 25.11.2021 13:50:13 »
$ grep -v '^#\|^$' ./etc/sudoers

Уважаемый Speccyfighter!
В этой команде у вас стоит знак $. Правильно ли я понимаю, что вы запускали эту команду от обычного пользователя?
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: sudo и Athlon XP Barton
« Ответ #57 : 25.11.2021 16:52:20 »
$ grep -v '^#\|^$' ./etc/sudoers

Уважаемый Speccyfighter!
В этой команде у вас стоит знак $. Правильно ли я понимаю, что вы запускали эту команду от обычного пользователя?

Правильно.
Но обратите внимание на путь к файлу: он начинается с точки.
Точка в начале пути означает текущий каталог. Всё последующее в пути, идёт от текущего каталога. И это не /etc/sudoers.

Эту команду вы взяли из этого комментария:
https://forum.altlinux.org/index.php?topic=43242.msg364535#msg364535

Почему grep-пинг от пользователя, а не от root, секрет прост:
У меня не было и нет желания, за неимением и времени и дискового под сузёвый iso, чтобы посмотреть как выкручены в нём дефолты.
Поэтому делал проще:
- Создал каталог $HOME/hlam-sudo-opensuse
- Перешёл в этот каталог
- Разыскал зеркала сузи
- Скачал пакет sudo из последнего сузёвого репозитория
- Распаковал его через rpm2cpio <пакет> | cpio -idmv

И чтобы посмотреть сузёвый sudoers, осталось его grep-нуть, исключив комментарии и пустіе строки.
Т.е. для просмотра сузёвого /etc/sudoers, сам сузёвый iso не выкачивался, - в этом нет необходимости. Достаточно было заглянуть пользователем в сузёвый rpm. И комментарий по ссылке, приводит его содержимое, с исключением комментариев и пустых строк. Стало очевидным, что в сузе, root-овый пароль на sudo запрашивается не на rootpw, как предполагая думал ранее. В сузе, root-овый пароль запрашивается на targetpw в сузёвом /etc/sudoers.

Вот и весь секрет того доллара в начале команды с sudoers. :-)

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #58 : 25.11.2021 19:26:47 »
Я спросил потому, что на машине с Альт Рабочая станция К 9.2 при попытке выполнить эту команду от простого пользователя меня послали сами знаете куда.
Lenovo Z 50-70 openSUSE Tumbleewed

Оффлайн Арбичев

  • Завсегдатай
  • *
  • Сообщений: 502
    • Email
Re: sudo и Athlon XP Barton
« Ответ #59 : 25.11.2021 19:28:55 »
Да, я видел точку в начале пути, и я знаю, что точка - это от текущего каталога.
Lenovo Z 50-70 openSUSE Tumbleewed