Позволить неадминистраторским пользователям устанавливать пакеты через Кв. или об/мин?

Смотрите на это: http://www.kernel.org/doc/menuconfig/drivers-base-Kconfig.html

В особенности:

  • EXTRA_FIRMWARE "позволяет встроенному микропрограммному обеспечению быть встроенным в ядро для случаев, где пользователь или не может или не хотеть обеспечивать его от пространства пользователя во времени выполнения"

  • EXTRA_FIRMWARE_DIR "управляет каталогом, в котором система сборки ядра ищет микропрограммные файлы, перечисленные в опции EXTRA_FIRMWARE. Значение по умолчанию является встроенным микропрограммным обеспечением / каталог в исходном дереве ядра, но путем изменения этой опции можно указать на него в другом месте, такие как/lib/firmware/каталог или другой отдельный каталог, содержащий микропрограммные файлы".

Между прочим, до получения Вашей беспроводной работы карты Вы смотрели на эти страницы?:

13
29.05.2012, 06:51
5 ответов

Можно указать позволенные команды с sudo, Вы не должны предоставлять неограниченный доступ, например.

username ALL = NOPASSWD : /usr/bin/apt-get , /usr/bin/aptitude

Это позволило бы имени пользователя работать sudo apt-get и sudo aptitude без любого пароля, но не позволил бы никакие другие команды.

Можно также использовать packagekit, объединенный с PolicyKit еще для некоторого более прекрасного уровня управления, чем sudo.

Разрешение пользователям установить/удалить пакеты может быть риском. Они могут довольно легко представить систему, нефункциональную только путем удаления необходимого программного обеспечения как libc6, dpkg, об/мин и т.д. Установка произвольного программного обеспечения из определенных архивов может позволить взломщикам устанавливать устаревшее или годное для использования программное обеспечение и получать корневой доступ. Основной вопрос, по-моему, состоит в том, насколько Вы доверяете своим сотрудникам?

Конечно, Ваша администраторская команда могла также начать использовать систему управления конфигурацией как марионетка, шеф-повар или изучить выход в открытый космос для управления системой. Это позволило бы им настраивать и управлять системой от центральной системы.

19
27.01.2020, 19:52
  • 1
    я упустил его из своего вопроса, но у Вас есть какие-либо комментарии по поводу сокращения безопасности подразумеваемыми путем разрешения этого? Я имею в виду, Вы не можете изменить хранилища пакетов, таким образом, Вы, вероятно, не собираетесь получать полный sudo доступ, но можно записать в любой файл с помощью способности (опции> предпочтения> "Файл для входа действий в"), который мог нанести некоторый серьезный ущерб. Я менее уверен в PolicyKit... –  naught101 29.05.2012, 07:41
  • 2
    @naught101 хорошо я добавил некоторые комментарии о безопасности. JFTR как policykit не обеспечит корневой доступ, это было бы менее проблематично, чем использование sudo –  Ulrich Dangel 29.05.2012, 13:31
  • 3
    Существуют способы, которыми можно выполнить оболочку от dpkg или об/мин. Например: dpkg запросит, когда будет изменение файла конфигурации, которое сталкивается, с одной из опций быть запускают оболочку для исследования ситуации. Это запустит оболочку как корень, если выполнено через sudo. Аналогично, если можно выполнить редактора от инструмента, поскольку большинство редакторов позволяет Вам выполнить произвольные команды оболочки из них (например! команда в vi). клиент –  David Gardner 22.09.2016, 16:01
  • 4
    @naught101, который я протестировал бы на расширение полномочий через об/мин, который содержит оболочку SUID как этот блог, описывает: nosedookie.blogspot.com/2011/07 / … В сценарии инжекции оболочки, однако, где учетная запись sudoer поставлена под угрозу, можно было смягчить расширение полномочий через sudo, требуя, чтобы пароль был введен, в противоположность NOPASSWD. –  Matt 19.10.2016, 19:07

aptdcon

Из страниц справочника:

aptdcon: позволяет выполнять задачи управления пакетом, например, устанавливающее или удаляющее программное обеспечение, с помощью aptdaemon. Нет никакой потребности быть корнем для запущения этой программы.

7
27.01.2020, 19:52
  • 1
    Хотя Вам не нужны root/sudo полномочия выполнить aptdcon, он сразу запускает диалог аутентификации для непривилегированных пользователей - я просто протестировал на Ubuntu. Если Вы не привилегированный / авторизованный пользователь, то это не добавляет/удаляет пакеты. –  sage 31.08.2016, 04:21
username ALL = NOPASSWD : /usr/bin/yum, /bin/rpm
4
27.01.2020, 19:52

Я также искал что-то как этот, но ничто не обнаружилось, таким образом, я кодировал это легкое решение "softwarechannels":

https://github.com/alfem/softwarechannels

Это - очень простая система, чтобы позволить распространенный (никакой администратор) пользователи устанавливать пакеты из ограниченных каталогов.

Просто определите 'каналы' (группы пакетов) в простом текстовом файле и дайте свои пользовательские полномочия запустить softwarechannels.

Они будут только видеть пакеты в каналах, соответствующих их группам Unix.

1
27.01.2020, 19:52

Для меня в Debian 10 вариант с visodoтребовал дополнительных шагов:

  1. Добавьте себя в sudousers:

Войдите в систему как пользователь root через su -, откройте редактор sudo с помощью visudoи добавьте следующие строки:

%yourusername% ALL=NOPASSWD: /usr/bin/apt-get install
%yourusername% ALL=NOPASSWD: /var/lib/dpkg/lock-frontend
  1. Выход из сеанса (root и ваш )ввод exit exit

  2. Снова откройте его и введите:

     sudo chown  %yourusername%: /var/lib/dpkg/lock-frontend
     chmod  u+w /var/lib/dpkg/lock-frontend 
     sudo chown  %yourusername%: /var/lib/dpkg/lock
     chmod  u+w /var/lib/dpkg/lock
     sudo chown  %yourusername%: /var/cache/apt/archives/lock
     chmod  u+w /var/cache/apt/archives/lock
     sudo chown  %yourusername%:  /var/lib/apt/lists/lock
     chmod  u+w  /var/lib/apt/lists/lock
    

PS :Я также добавил строки файла visudo, чтобы позволить себе обновлять список репозиториев:

%yourusername% ALL=NOPASSWD: /usr/bin/apt-get update
0
24.04.2021, 20:30

Теги

Похожие вопросы