Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Как отключить запрос пароля на административные действия?  (Прочитано 24375 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6849
    • Просмотр профиля
Вот коллега задал такой вопрос, а я на него ответить не смог. Как-то никогда об этом не думал, ибо мне не нужно. Но вот стало интересно.

Сразу напишу, что не нужно предлагать работать под рутом. Также я не спрашиваю как зайти на рабочий стол без пароля. Вопрос именно в запросе пароля например при установке программ или изменении настроек сети при работе от пользователя с правами на повышение привилегий (sudo).

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12132
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Сразу напишу, что не нужно предлагать работать под рутом. Также я не спрашиваю как зайти на рабочий стол без пароля. Вопрос именно в запросе пароля например при установке программ или изменении настроек сети при работе от пользователя с правами на повышение привилегий (sudo).
Т.е. вас интересует как сделать sudo без пароля, я правильно понял?

п.1. Это сильно опасно ... по крайней мере я предупредил.

п.2. лезете в файл /etc/sudoers - всё там.
Пишете или раскомментируете там строчку (естественно это только root):
%users        ALL=(ALL)       NOPASSWD: ALL
Что читается: разрешить всем пользователям группы users (естественно, может быть любая другая группа) выполнять все (можно указать выборочно) административные действия, не указывая пароля в sudo.
Естественно, можно не редактировать /etc/sudoers, а создать любой файл с таким текстом в /etc//sudoers.d ... ну это обычные штучки с конфигурированием.

п.3. я вас предупредил :2funny:

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12132
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
... лучше все-таки не группу разрешать а одного пользователя. Это не силно безопаснее - но все же.... группу это как-то круто  :idiot2:
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
... лучше все-таки не группу разрешать а одного пользователя. Это не силно безопаснее - но все же.... группу это как-то круто  :idiot2:
Можно сделать на отдельную целевую группу - себя любимого (которая создаётся при дефаултном создании нового пользователя).
Это будет то же самое, что и индивидуального пользователя.

Если не изменяет память, отдельного пользователя можно указать без %:
xxx        ALL=(ALL)       NOPASSWD: ALL

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6849
    • Просмотр профиля
1. Я понимаю, что это потенциально опасно. Меня интересует техническая возможность.
2. Я знаю как сделать sudo без пароля. Я хочу сделать так, чтобы открытие, например, synaptic происходило без запроса пароля.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12132
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
thunderamur, так вроде приложения тоже можно разрешать через sudoers....
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
2. Я знаю как сделать sudo без пароля. Я хочу сделать так, чтобы открытие, например, synaptic происходило без запроса пароля.
А GUI программы запрашивают того же sudo, только в другой, графической форме:
olej@nvidia ~ $ gksudo --help
GKsu version 2.0.2

Usage: gksudo [-u <user>] [options] <command>
...
Это только графическая обёртка sudo.
В разное время их, как помнится, вроде, и в зависимости от вида DE, было несколько разных.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12132
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Olej, gksu как раз пароль и спрашивает. А тут то речь про "без пароля"!
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Olej, gksu как раз пароль и спрашивает. А тут то речь про "без пароля"!
Вот если gksu научить "без пароля", то он и спрашивать не станет.
Точно так как и sudo.

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6849
    • Просмотр профиля
Olej,
Хорошо, а теперь попробуй сделать запуск, например, synaptic без пароля.

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Хорошо, а теперь попробуй сделать запуск, например, synaptic без пароля.
Так например или synaptic?

Вы спрашиваете в теме "Как отключить запрос пароля на административные действия?"
Консольные программы получают права root через sudo, как его отучить спрашивать пароль - рассмотрели.
Большинство GUI программ запрашивают права root через gksu или gksudo, которые есть только обёртки к sudo, и должны использовать /etc/sudoer.conf и перестать спрашивать пароль.
В зависимости от вида используемого DE имя программы-обёртки может меняться: kdesu, ...
Что там в Unity я не могу сказать - я органически не переношу современную Ubuntu - но вы легко определитесь сами.
Все GUI пограммы, запускающиеся через gksudo также перестанут спрашивать пароль, еслиэто перестат делать sudo.

Теперь про synaptic (а не про "например").
Не исключено, что именно synaptic использует запрос root привилегий из API C-кода. И тогда ему "закон не писан" что бы вы там не накрутили в конфгурациях системы. В том, что synaptic иенно бинарный компилированный код (а не скрипт, который мог бы там кого по цепочке вызывать) вы можете убедиться:
olej@nvidia ~ $ file `which synaptic`
/usr/sbin/synaptic: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=b65542c50bb15ca8375327537a4ee0d833a7fc80, stripped

Но если вам хочется именно synaptic запускать без указания пароля, так вы и тему разговора так называйте: "хочу synaptic-у без пароля".
« Последнее редактирование: 14 Августа 2015, 19:29:25 от Olej »

Оффлайн agoomboom

  • Участник
  • *
  • Сообщений: 172
    • Просмотр профиля
man sudoers:

     NOPASSWD and PASSWD

       By default, sudo requires that a user authenticate him or herself before running a command.
       This behavior can be modified via the NOPASSWD tag.  Like a Runas_Spec, the NOPASSWD tag sets a
       default for the commands that follow it in the Cmnd_Spec_List.  Conversely, the PASSWD tag can
       be used to reverse things.  For example:

       ray     rushmore = NOPASSWD: /bin/kill, /bin/ls, /usr/bin/lprm

       would allow the user ray to run /bin/kill, /bin/ls, and /usr/bin/lprm as root on the machine
       rushmore without authenticating himself.  If we only want ray to be able to run /bin/kill with‐
       out a password the entry would be:

       ray     rushmore = NOPASSWD: /bin/kill, PASSWD: /bin/ls, /usr/bin/lprm

       Note, however, that the PASSWD tag has no effect on users who are in the group specified by the
       exempt_group option.

       By default, if the NOPASSWD tag is applied to any of the entries for a user on the current host,
       he or she will be able to run “sudo -l” without a password.  Additionally, a user may only run
       “sudo -v” without a password if the NOPASSWD tag is present for all a user's entries that per‐
       tain to the current host.  This behavior may be overridden via the verifypw and listpw options.

Что тут непонятно?

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Что тут непонятно?
Тут непонятно то, что на synaptic (и ряд других GUI программ) это не распространяется.

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6849
    • Просмотр профиля
Olej,
Согласен, надо было подробнее написать, что хочу. А то так и получилось, как думал, что начнут NOPASSWD учить... А некоторые товарищи ещё и в ман тыкать.

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

Всем спасибо за участие.

 

Страница сгенерирована за 0.097 секунд. Запросов: 25.