Не нашел никаких материалов в рунете по использованию suPHP при инсталляции WordPress, поэтому решил написать небольшую статью. Если открыть страницу с требованиями, касающимися установки WordPress, то в самом ее низу можно найти небольшой пункт, который утверждает следующее: «безопасность хостинга наиболее высока, когда PHP-приложения (такие как WordPress) используют имя вашего аккаунта вместо стандартного имени пользователя на сервере. Проще всего это реализовать с помощью suPHP». Давайте посмотрим, что такое suPHP и как им пользоваться.
Запуск скриптов на Apache
По умолчанию все скрипты на веб-сервере Apache запускаются под одним определенным пользовательским аккаунтом. Чаще всего это общая учетная запись Apache, обладающая низкими, ограниченными правами доступа, то есть она относится к категории «Other». (Небольшая справка: сервер Apache обладает тремя категориями пользователей: Owner (User), Group и Other). Это означает, что на сервере с высокими настройками защиты файлов ваши скрипты могут не получить доступ, чтобы обеспечить вас функциональностью, которая требуется для вашего веб-сайта. Традиционное решение этого вопроса заключалось в том, чтобы расширить права доступа к файлам до «777», откуда следует, что все пользовательские аккаунты могут совершать практически любые действия, которые им требуются. Такое решение в лучшем случае довольно проблематично, поскольку недочеты в скрипте позволят хакерам использовать этот уязвимый скрипт для внедрения вредоносного кода в ваш веб-сайт. Права доступа «777» могут причинить проблемы не только вашему сайту, содержащему уязвимый скрипт, но и всей среде виртуального хостинга (как это часто бывает в случае с малым бизнесом), поскольку ваш сайт может быть открытым для атак через уязвимые скрипты, принадлежащие другим пользователям веб-сервера. Здесь нам и потребуется suPHP.
Как работает suPHP?
suPHP – это дополнительный модуль для Apache, который позволяет запускать скрипты только владельцам аккаунтов Owner, то есть пользователям сервера, и запрещает запускать скрипты из-под общей записи Apache. Это означает, что даже с более строгими параметрами доступа к файлам 755 или 744 ваши скрипты будут нормально работать. Основная выгода от использования suPHP – блокируются скрипты, не связанные с вашей учетной записью и направленные на изменение контента вашего сайта. По этой причине suPHP становится все более популярным среди провайдеров веб-хостинга, размещающих множество различных сайтов на одном сервере.