Моя идеология всегда была такова, что как пользователь, вы можете делать все, что захотите, в Linux и для всего остального, всегда есть sudo. sudoпозволяет выполнять несколько вещей, как некоторые другие пользователи, чаще всего случаи, как rootдля системного администрирования. sudoбыло большим преимуществом, позволяющим делегировать некоторые из моих рутинных задач и привилегий как (root) пользователю другим пользователям и помогать лучше управлять своим временем и временем других, не повышая привилегий сверх того, что требуется. В то же время, я доверяю им, чтобы их записи присутствовали наsudoersконфигурационный файл. Я не уверен, может ли это быть связано, но что я могу сказать, так это то, что sudo дает вам лучшую перспективу безопасности того, кто все и что они могут сделать со своими доверенными привилегиями. Даже если что-то пойдет не так, они несут ответственность. (Я всегда могу сделать некоторую подлую информацию о журнале sudoers, чтобы найти виновных). Мои парни всегда выражали мне свою озабоченность тем, что им нужно вводить sudo для всего, что они хотели сделать с повышенными привилегиями в среде Linux. Здесь я тоже нашел такой же вопрос.
Чтобы увидеть решения и мои поиски альтернатив, я наткнулся на средства управления доступом на основе ресурсов, RBAC но в другой стране приключений Solarisс такими инструментами и pfexecт. Д. Этот подход более эффективен, потому что это позволит сохранить привилегии пользователей уже повышенными и будет доверять на совести и бдительности того, что сисадмины хотели бы сделать со своими привилегиями.
Рассматривая доступные решения RBAC и его реализации в мире Linux, я наткнулся на
SELinux http://www.ibm.com/developerworks/linux/library/l-rbac-selinux/
grsecurity http://en.wikipedia.org/wiki/Grsecurity
и хотя есть некоторые другие реализации, я бы рассмотрел их в верхнем порядке списка. Внедрение RBAC - это большая работа в организации, особенно когда много пользователей. RBAC будет лучшим решением в однородной среде. Тем не менее, когда в сети существуют гетерогенные установки Unix и пользовательская база данных является общей, тогда это может произойти сбой. Поскольку SELinux не масштабируется / не реализован в Solaris, а инструменты RBAC / pfexec не реализованы в Linux. Существуют разные подходы для выполнения одной вещи. Например: http://blogs.oracle.com/darren/entry/opensolaris_rbac_vs_sudo_howto
Различные установки в масштабах сети могут не поддерживать этот подход (однако openrbac может рассматриваться как общий подход к реализации), так как sudoers является подходом с одним хостом или не способен к централизованной конфигурации в сети / домене./etc/sudoersнужно синхронизировать каждый раз, когда есть изменения. Более того, при работе с файлом sudoers существует требование к базе знаний, необходимо понимать язык политики конфигурации sudoers, чтобы не допускать ошибок и разрешать любые предоставления. RBAC может предлагать централизованный подход до некоторой степени, в то время как профили безопасности могут быть общими, добавление / удаление пользователя из предоставленной роли может быть сделано из одного места (это место, где хранится информация о пользователе / passwd / group для домен как LDAP, NIS или AD). Это также косвенно потребует понимания команд, необходимых для работы с базой данных RBAC, таких как smexec, smmultiuser, а их немного.
Sudo может предложить более кросс-платформенный подход, тем не менее, он работает на всех Unix / подобных платформах, которые предлагают функции setuid. И то, sudoи другое RBACуспешно дает некорневым пользователям некоторые привилегии, которые могут быть сделаны без предоставления самого rootпароля. Sudo может дать более тонкий / детальный подход к аргументам командной строки, которые можно использовать при выполнении команд, и ограничить только тем, какую команду с аргументами можно запускать с повышенными привилегиями. Хотя RBAC может ограничить использование до установленных команд или двоичных файлов, но не может контролировать аргументы командной строки. Аудит намного лучше и встроен в среду RBAC, тогда какsudoЭто зависит от конфигурации, а также от принятых ограничений безопасности (например, отсутствие предоставления оболочки и, в частности, хостам разрешается входить в систему с другими хостами без каких-либо проблем). Это лишь некоторые из различий, на которые я мог бы сослаться, и я лично склонен использовать sudo, а не RBAC, хотя с указанными ограничениями я мог бы преодолеть некоторые обходные пути. До тех пор пока все проблемы не будут решены RBAC для лучшего преимущества sudo, я не думаю, что sudo исчезнет, потому что это просто.