|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Команда SUDOПоскольку полномочия суперпользователя разделить (по крайней мере, произвольным образом) нельзя, трудно предоставить кому-то право выполнять конкретную административную операцию (например, создавать резервные копии), не предоставив возможность свободно работать в системе. Если же учетная запись root доступна целой группе администраторов, то вы не будете иметь понятия о том, кто ею пользуется и что он при этом делает. Наиболее часто используемое решение заключается в использовании утилиты sudo. Утилита sudo в качестве аргумента принимает командную строку, которая подлежит выполнению от имени пользователя root (или другого уполномоченного пользователя). Утилита обращается к файлу /etc/sudoers, где содержится список пользователей, имеющих разрешение на ее выполнение, и перечень команд, которые они могут вводить на конкретном компьютере. Если запрашиваемая команда разрешена, утилита sudo приглашает пользователя ввести его собственный пароль, и выполняет команду от имени суперпользователя. Далее утилита sudo позволяет, не вводя пароль, выполнять другие команды, но только до тех пор, пока не наступит пятиминутный период бездействия (его продолжительность можно менять). Такая мера служит защитой от тех привилегированных пользователей, которые оставляют свои терминалы без присмотра. Утилита sudo ведет журнал, где регистрируются выполненные команды, компьютеры, на которых они выполнялись, и вызвавшие их пользователи, а также каталоги, из которых запускались команды, и время их вызова. Эта информация может направляться в систему Syslog или сохраняться в любом журнальном файле по усмотрению пользователя. Строка журнального файла, содержащая данные о пользователе randy, который выполнил команду sudo /bin/cat etc/sudoers, может выглядеть следующим образом: Dec 7 10:57:19 tigger sudo: randy: TTY=ttyp0; PWD=/tigger/users/randy; USER=root; COMMAND=/bin/cat /etc/sudoers
Существует единая версия файла /etc/sudoers, которая используется на всех компьютерах. Сам файл выглядит примерно так: # Псевдонимы для факультетов физики и вычислительной техники Host_Alias CS = tigger, anchor, piper, moet, sigi Host_Alias PHYSICS = eprince, pprince, icarus # Набор команд Cmnd_Alias DUMP = /sbin/dump, /sbin/restore Cmnd_Alias PRINTING = /usr/sbin/lpc, /usr/bin/lprm Cmnd_Alias SHELLS = /bin/sh, /bin/tcsh, /bin/csh, /bin/bash, /bin/ash, # Права доступа mark, ed PHYSICS = ALL herb CS = /usr/sbin/tcpdump: PHYSICS = (operator) DUMP lynda ALL = (ALL) ALL,!SHELLS %wheel ALL,!PHYSICS = NOPASSWD: PRINTING По аналогичной причине не рекомендуется включать запись "." (текущий каталог) в переменную path интерпретатора команд. Несмотря на очевидное удобство, подобная конфигурация приводит к тому, что можно непреднамеренно запустить "специальную" версию какой-нибудь системной команды, оставленной злоумышленником в качестве приманки. Пользователю root следует быть бдительным вдвойне. Первые пять строк (не считая комментариев) определяют набор компьютеров и команд, на которые имеются ссылки в спецификациях прав доступа. Списки элементов можно включать в спецификации в полном виде, но работать с псевдонимами проще, к тому же они делают файл /etc/sudoers понятнее, и в него легче вносить изменения. Разрешается также создавать псевдонимы для различных групп пользователей. В каждую спецификацию прав доступа включается информация о: · пользователях, к которым относится запись; · компьютерах, на которых пользователям разрешено выполнять соответствующие действия; · командах, которые могут выполняться указанными пользователями; · пользователях, от имени которых могут выполняться команды. Первая строка спецификаций применяется к пользователям mark и ed, которые регистрируются в системе на компьютерах группы PHYSICS (eprince, pprince и icarus). Встроенный псевдоним ALL разрешает им вводить любые команды. Поскольку дополнительный список пользователей в скобках не указан, утилита sudo будет выполнять команды только от имени суперпользователя. Пользователь herb может запускать утилиту tcpdump на компьютерах группы CS, а также выполнять команды резервного копирования на компьютерах группы PHYSICS. Однако вторая группа команд получит привилегии не пользователя root, а пользователя operator. Для модификации файла /etc/sudoers предназначена специальная команда visudo, которая проверяет, не редактируется ли файл кем-то посторонним, затем открывает его в редакторе, а перед инсталляцией файла выполняет синтаксический контроль. Последний этап особенно важен, поскольку ошибка в файле /etc/sudoers может не позволить повторно вызвать утилиту sudo для исправления файла. Использование утилиты sudo имеет следующие преимущества: · благодаря регистрации команд значительно повышается степень административного контроля над системой; · операторы могут выполнять специальные задачи, не имея неограниченных привилегий; · настоящий пароль суперпользователя могут знать всего один-два человека; · вызывать утилиту sudo быстрее, чем выполнять команду su или входить в систему под именем root; · пользователя можно лишить привилегий, не меняя пароль суперпользователя; · ведется список всех пользователей с правами пользователя root; · меньше вероятность того, что интерпретатор команд, запущенный суперпользователем, будет оставлен без присмотра; · управлять доступом ко всей сети можно с помощью одного файла. Утилита sudo имеет и недостатки. Самый большой из них заключается в том, что любая брешь в системе защиты того или иного привилегированного пользователя эквивалентна нарушению безопасности самой учетной записи root. Противостоять этому нелегко. Можно лишь предупредить тех, кто имеют право выполнять утилиту sudo, о необходимости максимально защищать свои учетные записи. Можно также регулярно запускать утилиту John the Ripper, проверяя стойкость паролей привилегированных пользователей. Другой недостаток – возможность обмануть утилиту sudo с помощью таких уловок, как временный выход в интерпретатор команд из разрешенной программы либо выполнение команд sudo sh или sudo su, если они допустимы. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |