Продолжение 2: Искусство Sudo

Nov 24, 2017 11:45


Как вас защитит sudo?

Sudo защищает систему от её повреждения злоумышленниками или системными администраторами, а кроме того защищает системных администраторов от различных проблем в области управления системой.

Предоставление доступа к ограниченному набору привилегированных команд ограничивает ущерб, который могут нанести системе дейсвия пользователя. Пользователь имеющий доступ только к управлению web-сервером или базой данных не может изменять разделы диска. Если же злоумышленник компрометирует учётную запись пользователя, он будет сдерживаться ограничениями наложенными sudo.

Кроме того, ограничение доступа защищает системного администратора при разборе полётов. Даже не рассматривая журналы sudo, пользователь с ограниченными правами администратора может сказать: "Эй, я не перенастраивал веб сервер - у меня нет к этому доступа, помните?". Ответственность - палка о двух концах. Используйте её в своих интересах.

Поддержка sudo

Sudo является программным обеспечением с открытым исходным кодом. Вы можете скачать его с основного web-сайта http://sudo.ws или с соответствующего зеркала и использовать его в своих целях бесплатно. Лицензия разрешает вам использовать sudo в качестве основы своих собственных продуктов, перепродавать его клиентам или включить его в своё ПО, а затем распространять или продавать. Вы можете использовать sudo для любых своих целей. Короче не получите вы никакой поддержки.



Sudo не создаётся коммерческой компанией. Программа разработана и поддерживается пользователями которые в ней нуждаются и в течение последних лет координируются Тоддом Миллером (Todd Miller). Вы можете внести свой вклад в sudo, предоставляя патчи или сообщения об ошибках. Так же, вы можете найти людей и компании которые могут помочь вам установить sudo или даже написать специфический код. Но жаловаться, если что-то не работает так, как вы ожидаете - не на кого. Нет бесплатного номера поддержки, нет оплаты сотрудников техподдержки.

Хочу сказать, что списки рассылки sudo являются весьма полезными для заинтересованных в реальных проблемах. Они хорошо реагируют на просьбы о помощи и отрицательно относятся к каким либо требованиям.

Кто должен прочитать эту книгу?

Каждый, кто работает с UNIX-подобной системой должен понимать sudo. Если вы системный администратор, отвечающий за поддержку сложной системы, вам, скорее всего, потребуется назначить администраторов отдельных приложений которые смогут выполнять свою работу в жёстких ограничениях. Правильная настройка sudo поможет освободить дополнительное время и защитить систему от не благоприятных воздействий.

Если же вы являетесь администратором приложения, вам необходимо выполнять свою работу. Это означает, что вам требуется доступ к выполнению привилегированных задач. Работа посредством sudo изменит процессы незначительно - но вы можете свихнуться пытаясь понять почему не работает sudo cd, пока не поймёте что происходит на самом деле. Понимание sudo позволяет необходимым образом разработать правила sudo и сообщить об этом системному администратору. Даже если системный администратор не согласен с вашими выводами, переговоры на языке политик sudo будут означать, что вы оба понимаете чего именно хотите. Вы можете конкретно обсудить границы своей ответственности. Конечно системный администратор не укажет администратору приложений что он не даст ему необходимый доступ. Вопрос в том - как лучше всего предоставить необходимый уровень доступа?

Если же разногласия между командами достаточно глубоки, необходимо установить конкретные решения и чёткие линии полномочий и разграничения ответственности. Если у вас есть капризный системный администратор, утверждающий, что предоставить вам конкретный доступ без предоставления привилегий root невозможно, эта книга поможет вам категорически его опровергнуть. А это, надо признать, доставляет некоторое удовольствие.

Если вы поддерживаете собственную систему, зачем вам озадачиваться sudo? Даже на собственном ноутбуке, некоторые команды заслуживают большего внимания и осмысливания, чем прочие. Я могу понять желание перенастроить сеть, поднастроить съёмный диск или прикончить безумный web-браузер. Вероятно вы настолько часто выполняете эти задачи, и уже считаете, что пальцы сделаю это не напрягая мозг. Однако, задачи выполняемые реже, например такие как установка ПО или форматирование дисков требуют немного больше внимания. Соответственно, имеет смысл настроить sudo для выполнения рутинных задач без ввода пароля, но, например, требовать проверки подлинности перед проведением обновления.

Требования сервера

Эта книга предполагает, что вы выполняете sudo на UNIX-подобной ОС. Sudo доступно для BSD и производных Solaris, Linux и коммерческих UNIX. Хотя я ссылаюсь на FreeBSD, sudo работает на всех этих платформах и многих других.

У меня установлена версия sudo 1.8.8. Если вы используете более старую версию, некоторые функции могут отсутствовать. Удивительно, но многие вендоры ОС включают в системы дико устаревшие пакеты sudo. Проверьте версию sudo на вашей системе, выполнив sudo -V. Если ваша версия намного старее чем 1.8.8 - выполните соответствующее обновление. Вы всегда можете получить последнюю версию исходного кода или выбрать бинарные пакеты на сервере http://sudo.ws.

Документация sudo и эта книга предполагают, что ваша операционная система имеет традиционную схему файловой системы или достаточно близка к ней. Примеры приведённые в этой книге отражают команды в стандартных директориях, таких как /bin, /usr/bin, /sbin и т.д. Если же ваша ОС использует иную иерархию директорий, вам необходимо учесть её при использовании примеров.

Для системного администратора

Многие важные программы требуют обширного опыта в соответствующей области ПО для их корректного использования, а sudo является самодостаточной. Вы можете освоить sudo без понимания всех программ к которым пользователи могут получать доступ посредством sudo. Sudo является инструментом управления системой, однако, чем лучше вы понимаете свою систему, тем лучше вы можете использовать sudo и тем больше будет у вас уверенности в точности конфигурации. Я предполагаю, что вы можете установить sudo из пакета ОС или из исходного кода.

Настройка sudo на UNIX-подобной системе требует доступа уровня root и занакомства с текстовым терминалом и редактором. По умолчанию используется редактор vi, но вы можете использовать emacs или любой другой редактор.

Пока это всё что необходимо. Остальные знания вы получите по ходу чтения.

(продолжение будет...)

Переводы, Искусcтво Sudo

Previous post Next post
Up