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

Распространение / настройка общего веб-хостинга

В настоящее время я администрирую сервер Gentoo, на котором размещено несколько десятков веб-сайтов для друзей и людей с общими интересами. Возможно, скоро я перейду на новый сервер, и тогда у меня появится возможность переключиться на другую ОС. Мне понравилась способность Gentoo позволять мне возиться с USE-флагами и автоматически исправлять исходный код восходящего потока прямо перед его компиляцией и установкой, но у него есть некоторые причуды (хвост и cron имеет слегка нарушенное поведение, взаимоблокировки в коде контрольных групп ядра, файлы устанавливаются со случайно нарушенными разрешениями), и обслуживание может быть значительным (кажется, я не могу обновить perl, не сломав половину системы).

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

CentOS кажется очень популярным на серверах, хотя мой личный ограниченный опыт работы с rpm / yum был довольно обескураживающим (мне потребовался час, чтобы установить один пакет). Я тоже слышал хорошие отзывы об Ubuntu Server. Или мне просто следует придерживаться того, с чем я знаком, и надеяться, что мои проблемы с Gentoo являются просто результатом неправильной настройки или накопившейся неразберихи, которая не проявится при чистой установке? (CentOS и Ubuntu Server поставляются с SELinux / AppArmor, в Gentoo есть проект Hardened Gentoo.)

Также существует вопрос о конфигурации Apache ... о запуске mod_php со стандартным MPM не может быть и речи, поскольку это позволит скриптам получить доступ ко всем данным пользователей. CGI намного медленнее. Я использую itk MPM прямо сейчас, и, похоже, он работает нормально, но мне интересно, есть ли лучшее решение - как это делают крупные провайдеры общего хостинга (DreamHost и т. Д.)?

CentOS очень популярен из-за поддержки восходящего потока со стороны многих корпоративных поставщиков и надежной природы системы. Переход к любой подобной системе заставит вас почувствовать себя запертым в клетке. Вы явно тот, кому нравится настраивать (с чем я могу согласиться!). При этом я думаю, что для системы виртуального хостинга CentOS или Ubuntu Server определенно лучший подход, поскольку он значительно упрощает управление.

В любом случае вам нужно потратить некоторое время (гораздо меньше, чем время, необходимое для изучения Gentoo, IMHO) на изучение его инструментов и причуд. Как только вы привыкнете к использованию apt или yum, они оба будут вполне приемлемы для простой установки программного обеспечения.

В любом случае, если вы фокусируетесь на веб-хостинге PHP / Apache, вы можете просто создать систему с использованием CentOS или Ubuntu и самостоятельно создать собственный Apache / PHP в соответствии с вашими точными требованиями. На вашем месте я бы потратил некоторое время на то, чтобы посмотреть, предлагают ли системные пакеты что-нибудь похожее на конфигурацию, которую вы ищете (например, я знаю, что они оба предлагают различные модули MPM).

В RedHat EL5 по крайней мере установка mod_php по умолчанию запускает все сценарии PHP от имени пользователя www-data, что не разрешает доступ ко всем файлам пользователей (может быть что-то мне здесь не хватает).

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

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

Что касается php, я бы придерживался того, что работает для вас и ваших пользователей. Выбор itk mpm сильно зависит от запуска php в режиме nts.