КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Использование механизма SUDO
В ОС Linux пользователи бесправны, и любое ответственное действие требует полномочий администратора. Администратор по определению должен быть в системе один (операционная система не позволяет обычным путем создать еще одну учетную запись с UID = 0), а обязанностей у него чрезмерно много. Достаточно часто у администратора возникает потребность доверить избранным пользователям выполнение каких-либо ответственных операций. Но для этого администратор должен доверить другим святая святых – свой пароль. Чтобы избежать таких ситуаций, в ОС UNIX был разработан своеобразный механизм, позволяющий выборочно предоставлять определенным пользователям права на запуск ответственных команд. Этот механизм реализован в утилите sudo (s uper u ser do) и конфигурационном файле /etc/sudoers, который должен быть недоступным для всех, кроме администратора. В качестве параметра команды sudo вводится команда, которую надо исполнить. Обычно, если это явно не определено в файле конфигурации, от пользователя потребуют ввести его собственный пароль, но только один раз в течение терминального сеанса, в последующем запрос пароля производиться не будет. При этом правильно написанная команда будет исполнена оболочкой с правами привилегированного пользователя (администратора). Названия команд составляются администратором и записываются в файл /etc/sudoers в виде специальных строк. Строка должна связывать конкретного пользователя, работающего на определенном сетевом узле или локальном компьютере, с ответственными командами. Запись в строке должна содержать ответы на вопросы: · кто? (зарегистрированное имя пользователя или группы); · где? (доменное имя или IP-адрес компьютера); · от чьего имени? (имя привилегированного пользователя); · команды (полный перечень разрешенных команд, разделенных запятыми). Приведем образцы записей в файле /etc/sudoers: petrov ALL=/bin/shutdown, /bin/halt – пользователю petrov на всех компьютерах, работающих под управлением данной операционной системы, можно принудительно завершать работу системы и всех пользователей; john localhost=/usr/sbin/lpc, /usr/sbin/lprm – пользователь john на своем компьютере имеет право распечатки документов; braun 192.168.1.1=/bin/useradd,/bin/passwd,/bin/usermod – пользователь braun на компьютере, который идентифицируется IP-адресом, имеет право создавать и модифицировать учетные записи пользователей, а также назначать им первичные пароли. Здесь допущен очевидный перебор в предоставлении прав, поскольку пользователь braun может сменить пароль самому администратору; %alfa ALL=/bin/mount /dev/cdrom, umount /dev/cdrom – пользователям группы alfa на всех компьютерах сети разрешено монтировать и размонтировать компакт-диски. Кстати, аналогичное право пользователям можно предоставить с помощью записи в конфигурационном файле /etc/fstab. В файле /etc/sudoers могут быть определены псевдонимы (алиасы):
· для пользователей: User_Alias WEBMASTERS=sidorov,sazonov,bormotov · для сетевых узлов: Host_Alias WEBSERVERS=www.web_dis.com, 192.168.3.14 · для команд: Cmnd_Alias APACHE=/usr/local/apache/bin/apachectl C помощью псевдонимов разрешающая запись приобретает более компактный вид: WEBMASTERS WEBSERVERS=APACHE Пользователь, наделенный временными полномочиями, должен знать, какую команду ему разрешено выполнять с правами администратора и как эта команда пишется. Команды, перечисленные в файле /etc/sudoers, должны приводиться с полными путевыми именами, чтобы пользователи были лишены возможности запускать свои экземпляры утилит или сценариев от имени администратора. Механизм избирательного предоставления полномочий предусматривает исполнение команд без ввода паролей. Для этого администратор в соответствующей строке между именем хоста и именем команды должен указать ключевое слово NOPASSWD: ivanov 192.168.4.15=NOPASSWD: /bin/mount /dev/fd0 Вызов утилиты sudo по умолчанию протоколируется системой в одном из журналов аудита. Выяснить, в каком именно журнале, можно с помощью команды lsof, предоставляющей информацию об открытых файлах. lsof –c sudo Более подробно о возможностях команды lsof будет сказано ниже.
Дата добавления: 2015-03-31; Просмотров: 515; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |