2008-09-18 4 views
19

Я хочу знать, люди здесь обычно отключают SELinux при установке, где он включен по умолчанию? Если да, то можете ли вы объяснить, почему, какая система была и т. Д.?Вы отключите SELinux?

Я хотел бы получить как можно больше мнений об этом.

+0

Это должно быть перенесено в unix.stackoverflow.com или, по крайней мере, в SuperUser, где это имеет смысл. И затем открылся для обсуждения. – 2012-01-27 00:04:44

ответ

0

Я не имею большой вклад здесь, но так как его остались без ответа, я полагал, что я бросаю свои два цента.

Лично я вывожу его на Дев коробки и когда я имею дело с неважные вещи. Когда я занимаюсь чем-либо производством или требующим лучшей безопасности, я оставляю его и/или трачу время на его настройку, чтобы справляться с тем, что мне нужно.

Погода, или вы ее используете, действительно сводится к вашим потребностям, но она была создана по какой-то причине, поэтому используйте ее, а не всегда ее отключите.

2

SELinux требует от пользователя внимания и предоставления разрешений вручную всякий раз, когда (о, ну) у вас нет разрешения на что-то. Многие люди считают, что это мешает и отключает его.

В последней версии SELinux более удобен для пользователя, и есть даже разговоры об удалении возможности отключить его или скрыть, чтобы только знающие пользователи знали, как это сделать - и предполагается, что только пользователи точно тех, кто понимает последствия.

С SELinux существует проблема с курицей и яйцом: для того, чтобы все это время, вы, как пользователь, должны сообщать о проблемах разработчикам, чтобы они могли улучшить его. Но пользователи не любят использовать его до тех пор, пока оно не улучшится, и оно не улучшится, если не многие пользователи его используют.

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

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

13

Я сделал три или четыре года назад, когда у определенных политик было много подводных камней, и создание политики было слишком сложным, и мне не было времени учиться. Конечно, это были не критические машины.

В настоящее время выполняется вся работа по доставке дистрибутивов с разумными политиками и tools и tutorials, которые могут помочь вам в создании, исправлении и определении политик, поэтому нет оснований для его отключения.

+1

Фу! Я не одинок! – 2010-05-26 03:01:42

+1

Я с тобой, приятель! – Gabe 2013-12-08 13:54:20

2

Я слышал, что все наладилось, но я все же отключил его. Для серверов это не имеет никакого смысла, если вы не являетесь ISP или крупной корпорацией, желающей реализовать мелкозернистые средства контроля уровня доступа для нескольких локальных пользователей.

Используя его на веб-сервере, у меня было много проблем с разрешениями apache. Мне постоянно приходилось запускать,

chcon -R -h -t httpd_sys_content_t /var/www/html 

для обновления списков ACL при добавлении новых файлов. Я уверен, что это решение было разрешено к настоящему времени, но, тем не менее, SELinux - это большая боль для ограниченного вознаграждения, которое вы получаете от его включения при стандартном развертывании веб-сайта.

+5

ограниченная награда? на интернет-сайте? в каком мире вы живете? – 2008-09-19 09:36:01

+3

Я согласен с «ограниченной наградой»? вопрос. selinux спас мой веб-сервер от взлома из-за ошибки безопасности в пакете, используемом httpd, где selinux помешало эксплойту функционировать. – Eddie 2009-02-23 20:54:43

1

Я не отключу его, но есть некоторые проблемы.

Некоторые приложения не очень хорошо работают с ним.

Например, я уверен, что я включил smartd, чтобы попытаться отслеживать мои рейдовые диски s.m.a.r.t. статус, но selinux запутался бы в отношении новых /dev/sda* узлов, созданных при загрузке (я думаю, в этом и возникла проблема)

Вы должны загрузить источник в правила, чтобы понять вещи.

Просто проверьте /var/log/messages на сообщения «avc denied», и вы можете расшифровать то, что отрицается.

google "selinux faq", и вы найдете файл fedora selinux, который будет расскажет вам, как работать с этими проблемами.

7

Я работал в компании в прошлом году, когда мы настраивали ее на «целевую» политику, включенную в системах CentOS 5.x. Это не мешало ни одному из кодов веб-приложений, над которыми работали наши разработчики, потому что Apache был в политике по умолчанию. Это вызвало некоторые проблемы для программного обеспечения, установленного из пакетов, отличных от Red Hat (или CentOS), но нам удалось обойти это с помощью инструмента управления конфигурацией, Puppet.

Мы использовали функцию шаблона Puppet для создания нашей политики. См. SELinux Enhancements for Puppet, заголовок «Будущее», пункт «Поколение политики».

Вот некоторые основные шаги из того, как мы это реализовали. Примечание, кроме проверки audit2allow, все это было автоматизировано.

Создайте файл шаблона SELinux для некоторой службы с именем $ {name}.

sudo audit2allow -m "${name}" -i /var/log/audit/audit.log > ${name}.te 

Создание сценария, /etc/selinux/local/${name}-setup.sh

SOURCE=/etc/selinux/local 
BUILD=/etc/selinux/local 

/usr/bin/checkmodule -M -m -o ${BUILD}/${name}.mod ${SOURCE}/${name}.te 
/usr/bin/semodule_package -o ${BUILD}/${name}.pp -m ${BUILD}/${name}.mod 
/usr/sbin/semodule -i ${BUILD}/${name}.pp 

/bin/rm ${BUILD}/${name}.mod ${BUILD}/${name}.pp 

Тем не менее, большинство людей лучше просто отключить SELinux и упрочнения своей системы через другие на основе лучших практик общепринятого консенсуса, такие как The Center for Internet Security's Benchmarks (обратите внимание, что они рекомендуют SELinux :-)).

-1

Под Red-hat вы можете отредактировать /etc/sysconfig/selinux и установить SELINIX=disabled.

Я думаю, что во всех версиях Linux вы можете добавить selinux=0 noselinux в строку загрузки в файле lilo.conf или grub.conf.

+0

Вы действительно не отвечаете на вопрос. – Saustrup 2016-04-08 12:46:49

5

Моя компания производит продукт CMS/интеграционной платформы. Многие из наших клиентов имеют устаревшие сторонние системы, которые по-прежнему имеют важные оперативные данные в них, и большинство из них хотят использовать эти системы, потому что они просто работают. Поэтому мы подключаем нашу систему к тому, чтобы извлекать данные для публикации или отчетности и т. Д. Различными способами. Наличие тонны клиентских spesific-файлов, работающих на каждом сервере, делает настройку SELinux должным образом трудной и, следовательно, дорогостоящей задачей.

Многие клиенты изначально хотят лучшего в безопасности, но когда они слышат смету для нашего интеграционного решения, слова «SELinux disabled» обычно появляются в плане проекта довольно быстро.

Это позор, так как защита по глубине - хорошая идея. SELinux никогда не требуется для обеспечения безопасности, хотя, и это, кажется, его падение. Когда клиент спрашивает: «Так вы можете сделать это безопасно без SELinux?», На что мы должны ответить? «Умм ... мы не уверены»?

Мы можем, и мы будем, но когда ад замерзает, и обнаруживается какая-то новая уязвимость, а обновления просто отсутствуют вовремя, а вашей системе не повезло, чтобы быть нулевой точкой ... SELinux просто может спасти твою задницу.

Но это трудная продажа.

+0

Вы имеете в виду, что, как оказалось, emacs C-m M-c M-butterfly нацеливает жесткие диски удаленных машин так же хорошо, как и локальные? – Joshua 2010-05-26 03:02:15

2

К сожалению, я тоже отключаю SELinux большую часть времени, потому что большое количество сторонних приложений, таких как Oracle, не очень хорошо работает с включенным SELinux и/или не поддерживается на платформах, на которых работает SELinux.

Обратите внимание, что собственный продукт Satellite Red Hat также требует отключения SELinux, что, опять же, к сожалению, говорит о трудностях, с которыми люди сталкиваются с запущенными приложениями на платформах с поддержкой SELinux.

Советы по использованию, которые могут вам пригодиться или не могут быть полезны: SELinux можно включить и выключить во время выполнения с помощью setenforce (используйте getenforce для проверки текущего состояния). restorecon может быть полезен в ситуациях, когда chcon громоздкий, но ymmv.

0

Я никогда не отключил selinux, мой подрядчик ИМЕЛ его использовать. И если/когда какой-то демон (с лицензией OSS btw) не имеет политики безопасности, обязательно писать (хороший). Это связано не с тем, что я считаю, что selinux - неуязвимый MAC на Linux - бесполезный пример, но потому, что он значительно увеличивает безопасность операционной системы. Для веб-приложения лучшим решением для безопасности OSS является mod_security: поэтому я использую оба. Большая часть проблемы с selinux связана с небольшим или содержательным документом, хотя в последние годы ситуация значительно улучшилась.

1

Да. Это мозг мертв. Это может привести к поломке стандартным демонам, что почти невозможно диагностировать. Он также может закрыть дверь, но оставить окно открытым. То есть, по какой-то причине в новых установках CentOS он блокировал smbd, начиная с «/etc/init.d/smb». Но он не блокировал его при запуске при вызове как «sh /etc/init.d/smb» или «smbd -D» или перемещении файла init.d/smb в другой каталог, из которого он запускал smbd просто хорошо.

Так что, что бы это ни было, чтобы защитить наши системы - разбив их - это даже не было сделано последовательно. Консультируя некоторых серьезных гуру CentOS, они также не понимают несоответствий своего поведения. Он разработан, чтобы вы чувствовали себя в безопасности. Но это фасад безопасности. Это замена для реальной работы по блокировке системы.

-1

Если он включен по умолчанию, я оставлю его до тех пор, пока он не сломает что-нибудь, а затем выключится.

Лично я вижу, что это не обеспечивает никакой безопасности, и я не буду беспокоиться об этом.

0

В коробке CENTOS у меня была машина для разработки, и я выключил ее. Это останавливало некоторые вещи, которые я пытался сделать при тестировании веб-приложения, которое я разрабатывал. Система была (разумеется) за брандмауэром, который полностью блокировал доступ из-за пределов нашей локальной сети и имел много другой безопасности, поэтому я чувствовал себя достаточно безопасно даже при выключенном SELinux.

3

Раньше я работал на крупном производителе компьютеров на 3-й уровень поддержки RedHat Linux (а также двух других вкусов), работающих на серверах этой компании. В подавляющем большинстве случаев мы отключили SELinux. Я чувствую, что, если вам действительно нужно SeLinux, вы ЗНАЕТЕ, что вам это нужно, и можете конкретно указать, зачем вам это нужно. Когда это вам не нужно или не может четко сформулировать, почему, и оно включено по умолчанию, вы довольно быстро осознаете, что это боль в тылу. Иди со своим инстинктом кишки.

1

Я отключу его во всех моих блоках cPanel, так как cPanel не будет работать с ним.

Смежные вопросы