Инструменты пользователя

Инструменты сайта


sudo._vypolnenie_komandy_ot_imeni_drugogo_polzovatelja

Различия

Показаны различия между двумя версиями страницы.


Предыдущая версия
sudo._vypolnenie_komandy_ot_imeni_drugogo_polzovatelja [Unknown date] (текущий) – внешнее изменение (Unknown date) 127.0.0.1
Строка 1: Строка 1:
 +====== sudo. Выполнение команды от имени другого пользователя ======
 +
 +----
 +
 +===== Установка sudo =====
 +==== Debian ====
 +
 +По умолчанию в Debian не установлен sudo.
 +Установка:
 +<code bash>
 +apt-get install sudo
 +</code>
 +
 +----
 +
 +===== Параметры =====
 +
 +^ Опция ^ Значение ^
 +| **%%-k [command]%%** | //позволяет сбросить таймаут до момента, когда необходимо будет снова вводить пароль. Если указать команду, которая может потребовать ввода пароля, то таймаут будет сброшен конкретно для этой команды.// |
 +| **%%-h%%** | //будет выведена небольшая подсказка на стандартный выход.// |
 +| **%%-V%%** | //отобразиться версия sudo и плагинов. Если запустить от root, то будут выведены все настройки.// |
 +| **%%-g group%%** | //позволяет задать от какой группы будет запущена команда.// |
 +| **%%-H%%** | //задает директорию, которая будет указана в переменной окружения HOME.// |
 +| **%%-i [command]%%** | //симулирует начальный вход. Если команда не указана, то будет произведен вход в систему, таким образом можно сделаться рутом вместо использования sudo su.// |
 +| **%%-l[l] [command]%%** | //если команда не указана, то будет выведен список доступных команд для вызвавшего пользователя (или пользователя указанного с параметром -U). Если указана команда и она доступна, то будет выведен полный путь до команды и доступные параметры. Если команда не доступна, то sudo закроется со статусом 1. Если использовать параметр -ll или указать -l два раза, то будет использован более подробный формат вывода.// |
 +| **%%-s [command]%%** | //будет запущена оболочка указанная в переменной окружения SHELL. Если указана команда, то она будет передана на исполнения запущенной оболочке.// |
 +| **%%-U user%%** | //совместно с параметром -l позволяет отобразить привилегии определенного пользователя. Доступ спискам привилегий по умолчанию есть у root и пользователей со всеми привилегиями (ALL).// |
 +| **%%-u user%%** | //указанная команда будет запущена от имени указанного пользователя, а не от root.// |
 +| **%%-v%%** | //позволяет продлить таймаут на 15 минут или на тот, который указан в sudoers), но не выполнять каких-либо команд.// |
 +
 +
 +----
 +
 +===== Добавление пользователя в sudo =====
 +Управлять привилегиями пользователя в sudo можно путём редактирования конфигурационного файла **''/etc/sudoers''** или добавления нового конфигурационного файла в каталог **''/etc/sudoers.d''** \\
 +В первом случае необходимо использовать утилиту **visudo**:
 +<code bash>
 +visudo
 +</code>
 +
 +Чтобы дать пользователю jessie полные права при использовании sudo, необходимо добавить следующую директиву:
 +<code>
 +jessie   ALL=(ALL)   ALL
 +</code>
 +
 +----
 +
 +===== Пример содержимого файла sudoers =====
 +
 +<code>
 +# Алиасы содержащие имена пользователей
 +User_Alias     FULLTIMERS = millert, mikef, dowdy
 +User_Alias     PARTTIMERS = bostley, jwfox, crawl
 +User_Alias     WEBMASTERS = will, wendy, wim
 +
 +# Runas алиасы содержащие имена пользователей или групп от которых будут запускаться команды
 +Runas_Alias    OP = root, operator
 +Runas_Alias    DB = oracle, sybase
 +Runas_Alias    ADMINGRP = adm, oper
 +
 +# Алиасы для наборов хостов
 +Host_Alias     SPARC = bigtime, eclipse, moet, anchor :\
 +               SGI = grolsch, dandelion, black :\
 +               ALPHA = widget, thalamus, foobar :\
 +               HPPA = boa, nag, python
 +Host_Alias     CUNETS = 128.138.0.0/255.255.0.0
 +Host_Alias     CSNETS = 128.138.243.0, 128.138.204.0/24, 128.138.242.0
 +Host_Alias     SERVERS = master, mail, www, ns
 +Host_Alias     CDROM = orion, perseus, hercules
 +
 +# Алиасы для наборов команд
 +Cmnd_Alias     DUMPS = /usr/bin/mt, /usr/sbin/dump, /usr/sbin/rdump,\
 +                       /usr/sbin/restore, /usr/sbin/rrestore
 +Cmnd_Alias     KILL = /usr/bin/kill
 +Cmnd_Alias     PRINTING = /usr/sbin/lpc, /usr/bin/lprm
 +Cmnd_Alias     SHUTDOWN = /usr/sbin/shutdown
 +Cmnd_Alias     HALT = /usr/sbin/halt
 +Cmnd_Alias     REBOOT = /usr/sbin/reboot
 +Cmnd_Alias     SHELLS = /usr/bin/sh, /usr/bin/csh, /usr/bin/ksh, \
 +                        /usr/local/bin/tcsh, /usr/bin/rsh, \
 +                        /usr/local/bin/zsh
 +Cmnd_Alias     SU = /usr/bin/su
 +Cmnd_Alias     PAGERS = /usr/bin/more, /usr/bin/pg, /usr/bin/less
 +</code>
 +
 +
 +----
 +
 +===== Полезные примеры =====
 +  * //Запустить bash от имени пользователя jessie://
 +<code bash>
 +sudo -u jessie /bin/bash
 +</code>
 +
  
sudo._vypolnenie_komandy_ot_imeni_drugogo_polzovatelja.txt · Последнее изменение: 2015/12/19 00:00 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki