Сайт | Скачать | Видео | Wiki

Автор Тема: doas и прочие альтернативы sudo  (Прочитано 2126 раз)

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

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
doas и прочие альтернативы sudo
« : 01 Февраль 2021, 16:30:44 »
Зачем? По нашим меркам sudo жирноват и, главное, юзается с минимумом функционала
Альтернативы:
1. busubox
2. su - пароль придется костильно подсовывать
3. opendoas - Есть в арчрепе. Конфигурится не хуже sudo, но сложные варианты  не вывозит : 
sudo -s /bin/sh -c 'iptables -L' - так работает. С doas только без -s
4. https://aur.archlinux.org/packages/asroot/ - пароль только руками в консоле. Только root
5. на rust - соответственно жирные. Мало что заработало

Можно из sudo повыкидывать visudo (править руками, надо редко) и т.п.

run-as-nobody у меня заработал только с sudo. Есть идеи как переделать на что-то легче?
Итог
« Последнее редактирование: 07 Февраль 2021, 14:58:22 от sfs »

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #1 : 01 Февраль 2021, 18:30:11 »
По нашим меркам жирноват и юзается с минимумом функционала
1. busubox
??? Жирноват? А NM и прочее нет? ??? Функционал не минимум, а оптимум.
Sudo выкинуть, сколько лет без него обходились и дальше обойдёмся. Я уже давно выкинул.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: doas и прочие альтернативы sudo
« Ответ #2 : 02 Февраль 2021, 09:07:44 »
Жирноват?
Возможно вы меня не поняли - подправил шапку темы
Sudo выкинуть
ок. В подкрепление своих слов выкладываем сюда
run-as-nobody у меня заработал только с sudo. Есть идеи как переделать на что-то легче?

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #3 : 02 Февраль 2021, 09:21:50 »
В подкрепление своих слов выкладываем сюда
Утилиты busybox прописываются в /etc/busybox.conf. У меня так:
Код
[SUID]
poweroff = ssx root.root
reboot = ssx root.root
umount = ssx root.root
mkdir = ssx root.root
rmdir = ssx root.root
losetup = ssx root.root
blkid = ssx root.root
eject = ssx root.root
udhcpc = ssx root.root
rdate = ssx root.root
Остальные утилиты запускаем через группы.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #4 : 02 Февраль 2021, 14:12:54 »
С run-as-nobody как без sudo?
Не знаю, у меня такого нет.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #5 : 02 Февраль 2021, 14:46:48 »
Опять слив?  :'(
Не считаю это нужным.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #6 : 07 Февраль 2021, 08:54:37 »
/etc/passvd:
Код
..........
nobody::99:99:nobody:/:/bin/bash
.........
Код
bash-4.4$ su nobody
bash-4.4$ echo $USER
nobody
Дальше сам думай
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: doas и прочие альтернативы sudo
« Ответ #7 : 07 Февраль 2021, 09:30:14 »
/etc/passvd:
Сменить nologin на bas? Чем это поможет?
Как это без sudo?
Код
 exec sudo -u $spot -s  /bin/sh -c "\
 export XAUTHORITY=$HOME/$spot/.Xauthority &&
 export XDG_CONFIG_HOME=$HOME/$spot/.config &&
 export XDG_CACHE_HOME=$HOME/$spot/.cache &&
 export XDG_DATA_HOME=$HOME/$spot/.local/share &&
 export HOME="$HOME/$spot" &&
 \"$APP\" $ARGS"


Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #8 : 07 Февраль 2021, 12:30:42 »
Код
 exec sudo -u $spot -s  /bin/sh -c "\
 export XAUTHORITY=$HOME/$spot/.Xauthority &&
 export XDG_CONFIG_HOME=$HOME/$spot/.config &&
 export XDG_CACHE_HOME=$HOME/$spot/.cache &&
 export XDG_DATA_HOME=$HOME/$spot/.local/share &&
 export HOME="$HOME/$spot" &&
 \"$APP\" $ARGS"
Вот это всё не нужно.
nobody::99:99:nobody:/home/live/nobody:/bin/bash
1 поле - имя пользователя, можно любое
2 поле пустое, без пароля
3 и 4 поля - uid и gid пользователя
5 - комментарий
6 - $HOME
7 - оболочка
После правки можно запускать например "su nobody -c seamonkey" и оно работает.
Код
3265  3264 live     S    1782m 89.4   2  2.8 /usr/lib64/seamonkey
 7219  7218 nobody   S    1721m 86.4   3  0.1 /usr/lib64/seamonkey/seamonkey
Запущено два экземпляра seamonkey от разных пользователей, что и требовалось.

« Последнее редактирование: 07 Февраль 2021, 12:34:54 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: doas и прочие альтернативы sudo
« Ответ #9 : 07 Февраль 2021, 14:53:38 »
А от пароля избавиться так
Разрешаем su авторизацию пользователя nobody к пользователю live без запроса пароля.
Добавим следующие строки в файл /etc/pam.d/su под модулем pam_rootok.so:

Код
auth       [success=ignore default=1] pam_succeed_if.so user = nobody
auth       sufficient   pam_succeed_if.so use_uid user = live

Где nobody пользователь в которого разрешен доступ без запроса пароля, а live пользователь, которому разрешено использовать данную привилегию.
Также возможно добавить группу, для этого используем ingroup allowedusersgroup вместо user = live

У меня тоже получилось.
Спасибо+
Адский рецепт был взят в пупи. Как всегда у них заморочено
« Последнее редактирование: 07 Февраль 2021, 14:55:34 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: doas и прочие альтернативы sudo
« Ответ #10 : 07 Февраль 2021, 15:01:37 »
А с другими прогами не работает
Код
live@pra-roll:~$ su nobody -c galculator 
No protocol specified
Unable to init server: Не удалось подключиться к: В соединении отказано
(galculator:850526): Gtk-WARNING **: 15:00:57.553: cannot open display: :0
C хромом - тоже нет
Получается работает только с клонами ффокс  :'(
« Последнее редактирование: 07 Февраль 2021, 15:09:12 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: doas и прочие альтернативы sudo
« Ответ #11 : 07 Февраль 2021, 15:22:49 »
Если в моем run-as-nobody заменить в конце
Код
# exec sudo -u $spot -s  /bin/sh -c "\
 exec su  $spot -c  "\
А остальные sudo на doas - все работает

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: doas и прочие альтернативы sudo
« Ответ #12 : 07 Февраль 2021, 16:47:43 »
Код
live@pra-roll:~$ su nobody -c galculator 
У меня работает
Код
bash-4.4$ su nobody -c galculator
[galculator] файл конфигурации: не удалось открыть файл конфигурации /home/live/nobody/.config/galculator/galculator.conf для чтения. Беспокоиться не о чем, если вы запускаете galculator в первый раз. Используются настройки по умолчанию.
chrobium-browser тоже запустился
« Последнее редактирование: 07 Февраль 2021, 16:55:50 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64