Назад | Перейти на главную страницу

В чем проблема использования Fedora для серверов?

Я много раз использовал Fedora для размещения серверов. Никогда не сталкивался с какими-либо проблемами. Тем не менее, все новые пользователи приходят и говорят, что Fedora небезопасна. Мы должны использовать Ubuntu / CentOS или другой дистрибутив, но не Fedora. Я никогда не понимаю, в чем проблема с Fedora. Что делает другие дистрибутивы более безопасными.

Несколько моментов: 1. Fedora поставляется с iptables, настроенным так, чтобы разрешать только SSH. Кроме того, мы всегда можем настроить iptables на блокировку SSH, если захотим. Так что недостатка в брандмауэре нет.

  1. Fedora регулярно выпускает обновления (как исправления безопасности, так и общие исправления).

  2. Говорят, что дистрибутив X выпускает новую версию раз в 5 лет, а Fedora - раз в 6 месяцев. Почему выпуск один раз в 5 лет делает вещи безопасными? ЕСЛИ вы чувствуете, что 5-летние вещи безопасны, установите 5-летнюю ОС или не обновляйтесь в течение 5 лет, даже если выйдет новая версия. Лично я считаю, что отсутствие новой версии в течение 5 лет не добавляет безопасности. Вам придется выпускать патчи в течение 5 лет по мере обнаружения ошибок. Таким образом, использование очень старой ОС означает лишь больше исправлений. Если мы используем недавно выпущенную версию, нам нужно применять меньше обновлений / исправлений. Я никогда не понимал, как выпуск одного раза в 5 лет делает вещи безопасными.

  3. Все ОС используют похожие пакеты, такие как Gnome, Open-Office, KDE, Open-SSH, Apache. Тратят ли другие разработчики дистрибутивов время на чтение исходного кода этих пакетов и исправление ошибок безопасности, если таковые имеются? Даже если они не будут публиковать эти недостатки, а все другие дистрибутивы выпустят исправления для них, включая Fedora. Или они будут защищать свои собственные дистрибутивы и не беспокоиться об уведомлении других. Все это при условии, что они действительно читают все миллионы строк кодов пакетов размером с apache, gcc, Open-Office. Если это одинаково в каждом дистрибутиве, что делает Fedora более уязвимой.

  4. Fedora поставляется с предустановленным и хорошо настроенным seLinux.

  5. По умолчанию в Fedora привязка выполняется в chroot. Теперь с Fedora 11 поддержка DNSSEC также присутствует по умолчанию. Посмотреть вопрос DNS-сервер в Fedora 11 где кто-то указал Fedora на плохой хостинг DNS. Я не знаю, почему.

Фактически один из новых администраторов установил Cent-OS 5.3 на одной из тестовых машин. Я использовал его, чтобы пропинговать один IP-адрес, которого там не было. Я получил ответы на пинг. Я был поражен, потому что это было невозможно. Я попытался выяснить, откуда приходят ответы, но не смог. В конце, после более чем часовой попытки, я отключил сетевой кабель от машины с CentOS. Я все еще мог пропинговать IP. Затем я попытался пропинговать IP-адрес машины. Я тоже могу пинговать. Таким образом, я смог пропинговать два IP-адреса (не другие, я тоже их пробовал), когда машина была настроена с одним IP и не было псевдонимов (eth0: 1 и т. Д.). Я тоже проверил вывод ifconfig. Я потерял полное доверие к так называемым серверным дистрибутивам и установил Fedora 11 на все тестовые машины. Теперь я не сталкиваюсь с такими странными проблемами для таких простых вещей, как ping.

Я был бы очень признателен, если бы смог получить примеры из реальной жизни, которые указывают на то, что Fedora небезопасна, и если бы в этом случае это был любой другой дистрибутив, все было бы в порядке. Не приводите примеры ошибок, допущенных администратором. Мы не можем винить в этом дистрибутив. Также не приводите очень старые примеры Fedora 1, 2 или Fedora 3. Проект Fedora сейчас очень зрелый, особенно последние две версии 10, 11. Если вы столкнулись с проблемами безопасности, которые характерны только для них, поделитесь своим опытом.

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

Во-первых, это был не мой первый выбор. Как правило, для чего-то даже неопределенно важного я выбираю CentOS / RHEL из-за преимуществ долгосрочной стабильности, которые обеспечивают эти дистрибутивы. Однако для этого конкретного развертывания мне абсолютно необходимы функции Zabbix 2.0, в то время как EPEL только репо предоставлено 1.8. (EPEL теперь имеет пакеты Zabbix 2.0 и 2.2 в дополнение к 1.8, хотя в то время их не было. Если бы они были, я бы никогда не попробовал это.)

Итак, компромисс здесь: Fedora имеет новейшее программное обеспечение, но ее выпуски находятся на очень коротком 13-месячном жизненном цикле, причем новые выпуски выпускаются примерно каждые шесть месяцев. Это означает, что мне пришлось запланировать период обслуживания для обновления Fedora дважды в год в дополнение к обычной периодической установке обновлений.

Для системы мониторинга, которая должна отслеживать все остальное, очень важно, чтобы периоды технического обслуживания были как можно более редкими и короткими. При такой частой потребности в обновлении это обычно исключает такое распространение, но помните, что у меня были более насущные проблемы; это было бы бесполезно без необходимых мне функций. Так что это компромисс, на который я пошел (почти) полностью осознавая последствия.

Не так давно я обновил Fedora 18-19 на этом сервере, используя новый инструмент Fedora для обновления fedup. Я запланировал двухчасовое отключение, еще два часа, чтобы, возможно, разобраться с любыми отслеживаемыми службами, которые могли умереть, и этот факт был упущен, так как Zabbix не работал.

В актуальный простой сервиса составил 11 минут. Это с момента остановки Zabbix перед перезагрузкой до момента его резервного копирования и мониторинга сервисов после завершения обновления. Я не понимал, что простой будет таким коротким! Я ожидал гораздо больше неприятностей, хотя по опыту я знаю, что серьезные проблемы с обновлением Fedora возникают редко. (И это было улучшено дальше: когда я обновил Fedora 19-20, полное время простоя было потрясающим. шесть минут. То же время 20-21.)

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

К сожалению, у Red Hat так много времени между основными выпусками; аналогичная задержка между EL5 и EL6 привела меня к тому, что я фактически запустил установку Ubuntu в производство, чем я до сих пор борюсь. (Для этой системы я рассматривал Fedora, но, как ни странно, в ней вообще не было необходимого мне программного обеспечения, несмотря на то, что более старая версия находилась в EPEL.)


Одна «проблема», о которой никто не упомянул о запуске Fedora, заключается в том, что вы увидите много нового, как крупные программные проекты, так и крошечные улучшения, задолго до их включения в RHEL. Поэтому, когда вы переходите к управлению своими системами RHEL / CentOS, вам их будет не хватать. Например, Fedora имеет большое количество доработок bash, которых по умолчанию еще нет в RHEL; одним из примечательных является завершение табуляции для имен пакетов в yum командная строка.

Итак, безусловно, можно использовать Fedora в производственной среде, если вы согласны с компромиссами:

  • Нет контрактов на поддержку. Вы должны обладать достаточным внутренним опытом для управления сервером и его службами и решения любых проблем, которые могут возникнуть; доступна только поддержка сообщества, и никаких гарантий там нет. Опыт RHEL помогает, поскольку они очень похожи.
  • У вас должен быть период обслуживания, чтобы обновлять не реже одного раза в год. Хотя лучше каждые полгода; если вы обновляетесь ежегодно, вам придется обновлять сразу два выпуска, что удваивает количество потенциальных проблем, с которыми вам придется столкнуться в 3 часа ночи.
  • Обновления могут включать новые версии программного обеспечения, с которыми вам придется иметь дело; однако это будут точечные выпуски, а не основные версии. В редких случаях могут быть добавлены важные новые функции (например, BZ № 319901). Однако, как правило, программное обеспечение остается с одним и тем же номером версии на протяжении всего срока действия выпуска с обратным переносом исправлений; только некоторые пакеты (например, PHP) отслеживают выпуски апстрима.
  • Хотя нет существенной разницы в скорости обновления безопасности, они не всегда могут быть изолированы от обновлений исправлений (опять же, таких как PHP). Является ли это проблемой, зависит от службы, которую вы планируете запустить.

Учитывая все обстоятельства, Fedora по-прежнему не является моим первым выбором в качестве серверной платформы и, вероятно, никогда им не станет. (Хотя я был счастливым Fedora рабочий стол user на протяжении всего его существования.) В случае, если вам абсолютно необходимы более современные версии программного обеспечения, недоступные в более «корпоративном» дистрибутиве, и вы можете согласиться с компромиссами, тогда нет ничего плохого в использовании Fedora.


Наконец, раз уж вы спросили конкретно о безопасности, несколько слов об этом.

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

Подобно своему старшему брату, Fedora также поставляется с довольно ограниченной конфигурацией безопасности: службы (кроме ssh) по умолчанию отключены; брандмауэр default-deny включен по умолчанию как для IPv4, так и для IPv6; SELinux применяется по умолчанию. К тому же, Fedora усилена несколькими другими способами.

С другой стороны, вы очень рано увидите новые технологии безопасности; одним из примеров является недавнее введение БрандмауэрD, который еще не совсем готов к прайм-тайму, хотя вернуться к предыдущему брандмауэру легко.

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

Что вы можете получить от использования "серверных дистрибутивов":

  • долгосрочная поддержка
  • стабильные API (практически без обновлений версий библиотек и приложений)
  • исправления безопасности и исправления ошибок
  • платная поддержка

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

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

Речь идет больше о стабильности и скорости изменений, чем о безопасности как таковой. Fedora - это платформа Red Hat для развертывания новых функций и приложений для проверки их актуальности, предоставления платформы для экспериментов и решения проблем интеграции.

Обычно это не то, что вы хотите, чтобы сервер делал - обычно вы хотите, чтобы сервер выполнял функцию наиболее стабильным способом.

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

В ключевой момент, который мешает мне использовать Fedora для сервера и предпочитая вместо этого Debian, Ubuntu или CentOS устойчивость и длина опоры. Когда вы запускаете сервер, вам нужна стабильность, безопасность и долговечность. Да, почти каждый дистрибутив упаковывает одно и то же программное обеспечение, поэтому это не имеет значения. Все дело в том, что проверено, имеет обновления безопасности и поддерживается.

График выпуска Fedora каждые 6 месяцев хорош, если вы хотите передового опыта, но когда речь идет о сервере, продвижение вперед не всегда хорошо. Добавьте к этому тот факт, что Fedora поддерживает только последние три версии, что означает, что вы смотрите на неподдерживаемую ОС через 18 месяцев и вам необходимо ее обновить. Если вы когда-либо делали обновление Fedora, они обычно плохие, и проще выполнить чистую установку, что на настольном компьютере / ноутбуке может быть не так уж и плохо, но для сервера это означает простои и неприемлемо для большинства системных администраторов.

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

У Debian график выпуска длиннее, чем у Fedora, но короче, чем у CentOS, но всегда в курсе обновлений безопасности. Другое преимущество Debian - чистый путь обновления. Выпуски Debian тестируются как на чистую установку, так и на обновления в реальном времени и фактически не выпускаются до тех пор, пока это не будет успешно выполнено без проблем. Это внимание к деталям и готовность отодвинуть дату выпуска для устранения большего количества ошибок в пакете - один из его сильных плюсов. Сама структура пакета DEB также спроектирована так, чтобы сделать обновление очень плавным и сохранить ваши конфигурации. Единственное, чего ему действительно не хватает, так это коммерческой поддержки, и в этом случае вы можете обратиться к Ubuntu, которая берет свои пакеты из Debian, так же как CentOS берет большую часть своих пакетов из RHEL.

Изменить: добавлен полужирный текст, чтобы привлечь внимание к факту, который, очевидно, был упущен, что я не считаю Fedora достаточно стабильной для серверной платформы.

Нет поддержки.

Fedora не имеет контрактов на техническую поддержку, как Red Hat Enterprise. Некому позвонить, если у вас есть проблемы с прекращением шоу.

Мой самый главный аргумент:

Серверы не являются его основной целевой аудиторией

Точно так же я бы не рекомендовал использовать Ubuntu для серверной среды, и многие со мной не согласятся, но это просто не основная цель.

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

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

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

(У меня есть по крайней мере один друг, который имеет профессиональный опыт работы с Ubuntu в производственной среде и говорит, что был полностью от нее напуган и предпочел бы CentOS для производственных серверов, потому что. )

seLinux

Fedora поставляется с предустановленным и хорошо настроенным seLinux.

Важно отметить, что seLinux не подразумевает безопасности.

Из Собственный сайт seLinux АНБ:

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

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

  • Fedora стремится быть ближе к «переднему краю». Это означает, что вы получите более новое программное обеспечение, на тестирование которого ушло меньше времени. Поскольку ни один выпуск не выходит в одно и то же время, трудно получить точные цифры по этому поводу, но я чувствую, что ubuntu часто отстает от новых функций на один выпуск, в то время как debian / centos / redhat отстают намного дальше.

  • У меня сложилось впечатление, что из-за этого в Fedora больше обновлений, но опять же, у меня нет цифр, подтверждающих это.

Что действительно поражает, так это отсутствие модели LTS, которая есть в ubuntu. Вы можете установить ubuntu LTS через несколько месяцев после его выпуска и знать, что у него было достаточно времени, чтобы разобраться с любыми серьезными проблемами и немного успокоиться.

После этого вы знаете, что у вас есть как минимум 4 года дальнейшей поддержки и обновлений, прежде чем вам нужно будет обновить свой сервер. Я мог бы смириться с любыми другими потенциальными проблемами с запуском fefora, но не с необходимостью переносить выпуск на каждой коробке не реже одного раза в год (возможно, дважды).


Изменить: нашел некоторые числа ...

Fedora 11 поставляется с сервером openssh версии 5.2. Когда он будет выпущен, ubuntu karmic будет иметь только версию 5.1, та же версия, что Дебиан Ленни есть. Веб-сайт centos слишком дерьмовый, чтобы я мог найти версию, но, черт возьми, они на 4.x

Дело не в том, что федора небезопасна. Дело в том, что он поставляется с новейшими пакетами и очень быстро обновляется, поэтому вам придется проходить обновления каждый год или около того, чтобы продолжать получать обновления безопасности. Это большое дело, если у вас нетривиальное количество серверов, особенно с учетом того, что процесс обновления Fedora (iirc) требует простоя.

Использование Fedora на сервере по сравнению с CentOS, Debian, Ubuntu, Gentoo, Slackware, SLES и т. Д. Действительно сводится к тому, чтобы подобрать подходящий инструмент для работы.

Основная жалоба администраторов сервера на Fedora на сервере - это цикл обновления каждые 6 месяцев до года (в зависимости от того, хотите ли вы всегда использовать последнюю версию или пропускать все остальные выпуски). Как вы отметили, Fedora устанавливает "безопасные по умолчанию" конфигурации и предоставляет много инструментов для поддержания безопасности системы. Инструмент перед обновлением отлично справляется с миграциями между различными выпусками Fedora, особенно на сервере, что несколько смягчает эту проблему.

Если вам нужен более длительный цикл выпуска, то что-то вроде CentOS (который по сути является бесплатной версией Red Hat Enterprise Linux) может облегчить вашу рабочую нагрузку.

Подводя итог, я думаю, что вас устраивает Fedora, если она вам нравится. Я никогда не видел никаких доказательств того, что Debian, Ubuntu или CentOS особенно более безопасный чем Fedora.

Любую операционную систему можно сделать безопасной. Два момента о Fedora как о сервере. Во-первых, каждый раз, когда вы обновляете версию программного обеспечения, вы рискуете внести новые ошибки и проблемы с безопасностью, которых не было в предыдущей версии. Вот почему компании захотят подождать год после выхода программного обеспечения, прежде чем устанавливать его, чтобы можно было исправить множество ошибок и проблем с безопасностью. Вы не хотите переключаться на новые версии каждый раз, когда одна из них выходит, из-за головной боли миграции и новых проблем безопасности. Вторая Fedora не имеет возможности получить корпоративную поддержку, такую ​​как RedHat или Ubuntu.

Мы используем RHEL в работе. Если бы вам приходилось обновлять 7k серверов каждые 6 или 12 месяцев, мы бы никогда не были впереди. Мы все еще получаем серверы Win2k3 до 2008 года.

Выпуски Fedora слишком часты для компании с большим количеством серверов, чтобы оставаться в актуальном состоянии. Для малого бизнеса наверняка подойдет Fedora. Но опять же, вам понадобится администратор Linux на сайте, и большинство из них не может позволить себе его для устранения множества проблем. В этом преимущество RHEL - платная поддержка.

Дома я использовал Debian. Я только что обновился с 7 до 8, и все прошло очень гладко. У Ubuntu тоже есть сервер, но Ubuntu эквивалентна Fedora. Debian требует много времени для развертывания новых пакетов, потому что они тщательно тестируют их. Обратной стороной является то, что у вас может не быть последней версии Apache или MySQL или любого другого приложения, в котором есть нужные вам функции. Конечно, вы можете загрузить его отдельно, но это лишает вас «стабильной и безопасной» ОС.

Также - функции / функции могут появиться, а затем быть добавлены в следующем выпуске, что [обычно] не полезно для сервер, поскольку вам нужна надежность. OTOH, если вы установите, скажем, F11 и будете использовать его в течение 2-4 лет, как если бы вы делали это с CentOS 5 или Ubuntu LTS, то реальной разницы нет. Речь идет об уровне комфорта.

Чего ждать? Насколько мне известно, Википедия работает на Fedora. Не в RedHat - в Fedora. Так что проблем с использованием Fedora в качестве веб-сервера действительно нет :)

Обычно системный администратор хочет от серверно-ориентированного дистрибутива:

  1. Никакого передового программного обеспечения, даже в последней версии
  2. Все программное обеспечение тебе нужно должны быть доступны в официальных репозиториях: в производственной среде иногда не разрешается использовать пакеты, извлеченные со случайных ненадежных веб-сайтов или, что еще хуже, скомпилированные локально.
  3. Централизованные и своевременный обновления безопасности из официальных репозиториев
  4. Скрипты и политики установки пакетов (предоставленные дистрибутивом), обеспечивающие плавное обновление [т. Е. обновление содержимого файла конфигурации при обновлении демона до новой версии]
  5. По желанию, корпоративная поддержка

Fedora терпит неудачу в этом вопросе, afaik

CentOS терпит неудачу на 2,3,4,5

Debian терпит неудачу на 5

Ubuntu терпит неудачу на 1

Твой выбор :)