Федеральное государственное бюджетное



Pdf көрінісі
бет3/15
Дата19.05.2022
өлшемі453.59 Kb.
#457464
1   2   3   4   5   6   7   8   9   ...   15
Сухов А.М. Механизмы безопасности (1)

 
visudo позволяет осуществить безопасное редактирование sudoers, она 
проверяет файл на корректность после выхода из текстового редактора.
Ключи: 
• -c [-q] (только проверить существующий файл без вызова редактора); 
• -f имя-файла (указать другой файл sudoers); 
• -s (более строгая проверка). 
Описание прав пользователей 
В файле /etc/sudoers описываются права пользователей на выполнение 
команд с помощью sudo. Состоит из операторов трех типов: определение 
синонимов (Alias), переопределение конфигурационных параметров и опи-
сание прав пользователей. Если для одного пользователя подходит несколь-
ко описаний, то действует последнее. Комментарии начинаются с символа 
'#', если это не uid. Продолжение команды на следующей строке обозначает-
ся символом '\' в конце строки. 
Синонимы (предопределен синоним ALL): 
• User_Alias имя = список-пользователей-через-запятую. 
• Runas_Alias имя = список-пользователей-через-запятую. 
• Host_Alias имя = список-хостов-через-запятую. 
• Cmnd_Alias имя = список-команд-через-запятую. 
Имя может состоять из прописных латинских букв, цифр и подчерки-
вания. Предопределены синонимы 'ALL' для каждого типа. На одной строке 
может размещать несколько описаний синонимов, разделяя их символом ':'. 
netgroup - это NIS. 
Пользователь может определяться (восклицательный знак перед име-
нем означает отрицание): 



имя; 
• %имя-группы; 
• +netgroup; 
User_Alias. 
Эффективный пользователь может определяться (восклицательный 
знак перед именем означает отрицание): 
имя; 
• #uid; 
• %имя-группы; 
• +netgroup; 
Runas_Alias. 
Хост может определяться (восклицательный знак перед именем означа-
ет отрицание; сетевая маска записывается в точечной записи или CIDR; при 
указании имени хоста можно использовать шаблоны в стиле shell, но лучше 
при этом использовать опцию fqdn; не стоит использовать имя localhost): 
имя-хоста; 
IP-адрес; 
network/netmask; 
• +netgroup; 
Host_Alias. 
Команда может определяться (восклицательный знак перед именем оз-
начает отрицание; можно использовать шаблоны в стиле shell для имени 
файла и аргументов; необходимо защищать обратным слешем от интерпре-
тации разборщика символы запятой, двоеточия, равенства и обратного сле-
ша; пустой список аргументов обозначается как ""; полное имя каталога 
должно оканчиваться на "/", разрешает выполнить любую команду из данно-
го каталога, но не из подкаталога): 
полное-имя-файла; 
полное-имя-файла аргументы; 
каталог; 
Cmnd_Alias. 
Конфигурационные параметры можно переопределить для всех поль-
зователей, для определенных пользователей, для определенных хостов, для 
команд, выполняемых от имени указанного пользователя: 
5


• Defaults список-параметров-через-запятую. 
• Defaults:имя-пользователя список-параметров-через-запятую. 
• Defaults@имя-хоста список-параметров-через-запятую. 
• Defaults>имя-пользователя список-параметров-через-запятую. 
Параметр задаётся в виде "имя = значение", "имя += значение", "имя -= 
значение", "имя" или "!имя" из следующего списка (необходимо использо-
вать символы '"' и '\' в значениях при необходимости; += и -= добавляют и 
удаляют элементы списка): 
флаги 
¾ authenticate (on; пользователь должен вводить свой пароль); 
¾ env_editor (off; visudo будет использовать переменную окружения 
VISUAL или EDITOR; очень не рекомендуется); 
¾ env_reset (сбросить переменные окружения, кроме HOME, 
LOGNAME, PATH, SHELL, TERM, USER); 
¾ fqdn (off; помещать в журнал и sudoers полное доменное имя хоста с 
использованием запросов DNS вместо простого `hostname`); 
¾ ignore_dot (off; игнорировать "." в $PATH; не реализовано); 
¾ log_host (off; записывать имя хоста в файл); 
¾ log_year (off; записывать в файл год в четырёхзначном формате; 
¾ mail_always (off; посылать письмо при каждом выполнении sudo); 
¾ mail_badpass (off; посылать письмо при вводе неправильного пароля); 
¾ mail_no_user (on; посылать письмо, если пользователя нет в sudoers); 
¾ mail_no_host (off; пользователь есть в sudoers, но не для этого хоста); 
¾ mail_no_perms (off; пользователь есть в sudoers, но нет прав на эту 
команду); 
¾ noexec (off; ); 
¾ path_info (off; уточнять причину отказа выполнения команды); 
¾ preserve_groups (off; не менять список групп); 
¾ runaspw (off; запрашивать пароль указанного в runas_default пользо-
вателя вместо пароля текущего пользователя) 
¾ requiretty (off; выполнять команду только при запуске с реального 
tty); 
¾ root_sudo (on; очень рекомендуется запретить использование sudo 
для root); 
¾ rootpw (off; запрашивать пароль root вместо пароля пользователя); 



¾ shell_noargs (off; разрешать запуск sudo без параметров - выход в 
shell); 
¾ targetpw (off; запрашивать пароль указанного ключом -u пользовате-
ля вместо пароля текущего пользователя); 
¾ tty_tickets (off; отдельный интервал истечения времени действия па-
роля для каждого терминала); 
числа 
¾ loglinelen (80; длина строк в файле; 0 - бесконечная); 
¾ timestamp_timeout (5 минут; интервал действия пароля); 
¾ umask (022; umask для выполняемой команды); 
строки 
¾ editor (/bin/vi; список редакторов через ":", используемых visudo); 
¾ exempt_group (; пользователи из данной группы не должны вводить 
пароль); 
¾ lecture (закатывать лекцию при первом вызове: never, once, always; 
раньше это был флаг); 
¾ lecture_file; 
¾ listpw (any; запрашивать ли пароль при использовании ключа "-l": all, 
any, never, always); 
¾ logfile (/var/log/sudo.log); 
¾ mailerflags (-t); 
¾ mailerpath; 
¾ mailsub ("*** SECURITY information for %h ***"; текст темы 
письма); 
¾ mailto (root; кому посылать письма; рекомендуется заключать в ка-
вычки); 
¾ passprompt ("Password:" (%h расширяется в имя хоста, %u - в имя 
пользователя); 
¾ runas_default (root); 
¾ syslog (local2; syslog facilities: authpriv, auth, daemon, user, local0-7); 
¾ syslog_badpri (alert; какой приоритет syslog использовать при неуда-
чах); 
¾ syslog_goodpri (notice; какой приоритет syslog использовать при 
удачном выполнении); 
¾ timestampdir (/var/run/sudo); 
7


¾ verifypw (all; запрашивать ли пароль при использовании ключа "-v": 
all, any, never, always); 
список 
¾ env_check (переменные окружения удаляются, если содержат '%' или 
'/'); 
¾ env_delete; 
¾ env_keep (список переменных, не сбрасываемых по env_reset); 
Описание прав пользователей (списки через запятую, теги и имена це-
левых пользователей наследуются): 
список-пользователей список-хостов = список-описаний-команд [: спи-
сок-хостов = список-описаний-команд]. 
описание-команды ::= [(список-целевых-пользователей)] {тег:} команда. 
Теги: NOPASSWD (не запрашивать пароль текущего пользователя), 
PASSWD, NOEXEC, EXEC. 


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   15




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет