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

Какие службы отключить на веб-сервере / сервере базы данных CentOs 5.8?

Я только что настроил свой сервер CentOS 5.8 64 [final] в качестве веб-сервера.

Технические характеристики: 2x E5620 Intel CPU, DDR3 RAM, Hardware Adaptec RAID 10, 4x SAS диска.

Я установил себе:

 Nginx
 PHP-FPM
 MySQL [ourdelta.org version]
 Sphinx
 Vsftpd
 Fail2ban
 Citadel [ddos flood protection]
 Munin
 NTP
 Htop
 Iptraf

Это все, что я активно использую для запуска своих сайтов.

Теперь мой вопрос:

Я нашел эту статью: http://www.vr.org/kb/1002/Optimize-and-disable-default-CentOS-services.html

Что говорит о целом списке сервисов, которые можно отключить.

Вот список, который они предлагают:

chkconfig anacron off
chkconfig apmd off
chkconfig atd off
chkconfig autofs off
chkconfig cpuspeed off
chkconfig cups off
chkconfig cups-config-daemon off
chkconfig gpm off
chkconfig isdn off
chkconfig netfs off
chkconfig nfslock off
chkconfig openibd off
chkconfig pcmcia off
chkconfig portmap off
chkconfig rawdevices off
chkconfig readahead_early off
chkconfig rpcgssd off
chkconfig rpcidmapd off
chkconfig smartd off
chkconfig xfs off
chkconfig ip6tables off
chkconfig avahi-daemon off
chkconfig firstboot off
chkconfig yum-updatesd off 
chkconfig sendmail off
chkconfig mcstrans off
chkconfig pcscd off
chkconfig bluetooth off
chkconfig hidd off

Теперь я использую sendmail, и smartd, так что я оставлю их себе.

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

Будьте осторожны с использованием чужих «списков», так как вы можете отключить то, что вам действительно нужно.

Вот некоторые очевидные проблемы, которые я вижу в этом списке:

  • anacron гарантирует, что задания cron, пропущенные из-за простоя, будут запущены при восстановлении работы системы.
  • smartd контролирует состояние ваших дисков и может быть настроен на отправку вам электронной почты, если диск выходит из строя (хотя, поскольку у вас есть аппаратный RAID, вам следует использовать вместо этого инструмент, предоставленный поставщиком).
  • ip6tables такое межсетевой экран IPv6 ... Действительно? Кто-то посоветовал отключение брандмауэра?!? Это действительно подрывает их авторитет к чертям.
  • yum-updatesd обеспечивает автоматические обновления. Если вы этого не хотите, отключите его, хотя в некоторых случаях это полезно.

Я также должен согласиться с советом @airey выполнить минимальную установку. В CentOS 5 это требует использования файла кикстарта; CentOS 6 имеет специальный минимальный установочный компакт-диск.

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

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

Чтобы выполнить минимальную установку, пройдите через установщик CentOS и, когда вы дойдете до экрана со списком ролей, снимите все флажки. Затем выберите «Настроить сейчас».

Вы увидите экран с различными категориями слева и группами пакетов справа. Просмотрите каждую категорию и снимите отметки со всех групп пакетов. в Основание категорию, щелкните Дополнительные пакеты кнопка. Я обычно снимаю все, кроме:

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

После завершения установки и перезагрузки вы можете установить веб-сервер и любые другие пакеты, необходимые для вашей ситуации (httpd, PHP, MySQL и т. Д.). Yum автоматически разрешит зависимости за вас и должен устанавливать только те пакеты, которые необходимы для работы выбранных вами служб.

Когда это будет завершено, отредактируйте свои правила iptables, чтобы разрешить только необходимые службы: SSH, HTTP, HTTPS, исходящий SMTP и т. Д. Доступно множество руководств, объясняющих, как это сделать. Этот вопрос и принятый на него ответ - хорошая отправная точка.

НЕ БЛОКИРУЙТЕ SSH! Если у вас нет консольного доступа к серверу, будьте осторожны, чтобы не блокировать SSH в любой момент, иначе вы не сможете получить доступ к системе. При изменении правил брандмауэра я всегда открываю новый сеанс SSH, не закрывая существующий (рабочий), просто чтобы убедиться, что я все еще могу подключиться. После выхода из установленного сеанса, если SSH заблокирован, вы поднимаетесь по ручью без весла.

Вы начали с минимальной установки? Если нет, я бы рекомендовал начать с этого, как например anacron даже не установлены для начала.