<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Хостинг &#8212; Новости и Блог Core Hosting</title>
	<atom:link href="https://blog.core.eu/ru/category/%D1%85%D0%BE%D1%81%D1%82%D0%B8%D0%BD%D0%B3/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.core.eu</link>
	<description>Домены &#124; Хостинг &#124; ВПС &#124; SSL Сертификаты &#124; Коло</description>
	<lastBuildDate>Thu, 22 Oct 2026 12:37:55 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://blog.core.eu/wp-content/uploads/2024/12/cropped-android-chrome-512x512-3-32x32.png</url>
	<title>Хостинг &#8212; Новости и Блог Core Hosting</title>
	<link>https://blog.core.eu</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>PHP2Shell на ispmanager и CloudLinux: что пошло не по инструкции</title>
		<link>https://blog.core.eu/ru/php2shell-ispmanager-cloudlinux/</link>
		
		<dc:creator><![CDATA[Core]]></dc:creator>
		<pubDate>Thu, 22 Oct 2026 12:37:54 +0000</pubDate>
				<category><![CDATA[Безопасность]]></category>
		<category><![CDATA[Хостинг]]></category>
		<guid isPermaLink="false">https://blog.core.eu/?p=1247</guid>

					<description><![CDATA[21 октября 2026 года PHP выпустил 8.5.12, 8.4.27, 8.3.36 и 8.2.35 с исправлением двух критических уязвимостей, CVE-2026-109618 и CVE-2026-109619 (CVSS v4.0 9.2). Обе позволяют выполнить код на сервере без авторизации, и уязвим не какой-то плагин, а сам интерпретатор: любой сайт на PHP, от WordPress до самописного кода. На обычном сервере история короткая: обновить пакет и [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">21 октября 2026 года PHP выпустил 8.5.12, 8.4.27, 8.3.36 и 8.2.35 с исправлением двух критических уязвимостей, CVE-2026-109618 и CVE-2026-109619 (CVSS v4.0 9.2). Обе позволяют выполнить код на сервере без авторизации, и уязвим не какой-то плагин, а сам интерпретатор: любой сайт на PHP, от WordPress до самописного кода.</p>



<p class="wp-block-paragraph">На обычном сервере история короткая: обновить пакет и перезапустить PHP. На хостинге с ispmanager и CloudLinux всё оказалось интереснее. За ночь и утро мы закрыли уязвимости на всех серверах и по пути наступили почти на все грабли, которые не описаны ни в бюллетене PHP, ни в документации панели.</p>



<p class="wp-block-paragraph">Это не пересказ бюллетеня, а список того, что пошло не по инструкции, и как мы это решили. Если вы администрируете сервер с ispmanager, особенно на CloudLinux, проверьте у себя каждый пункт: часть проблем не видна, пока не посмотришь в нужное место.</p>



<h2 class="wp-block-heading">Временные меры до выхода патчей</h2>



<p class="wp-block-paragraph">Пока пакетов нет, полностью закрыть уязвимости нельзя, можно только отрезать известные пути атаки. Публичные эксплоиты, появившиеся ещё до релиза, использовали обработчик прогресса загрузки файлов, который срабатывает на любой запрос <code>multipart/form-data</code>, даже если на сайте нет ни одной формы загрузки.</p>



<p class="wp-block-paragraph">Мы сделали две вещи:</p>



<ol class="wp-block-list">
<li><strong>Отключили <code>session.upload_progress.enabled</code></strong> во всех версиях PHP. Это рекомендация самого PHP, функцию почти никто не использует, сайты от её отключения не страдают. Важно: значение должно задаваться в <code>php.ini</code> или в конфигурации пула, а не через <code>ini_set()</code> или <code>.user.ini</code>, иначе оно применится слишком поздно.</li>



<li><strong>Заблокировали <code>multipart</code> на уровне nginx</strong> для всех сайтов. В ispmanager каждый vhost подключает <code>/etc/nginx/vhosts-includes/*.conf</code>, поэтому одного файла хватает на весь сервер:</li>
</ol>



<pre class="wp-block-code"><code>if ($http_content_type ~* "multipart") {
    return 403;
}</code></pre>



<p class="wp-block-paragraph">Цена второй меры: перестают работать загрузки файлов через формы, вложения в веб-почте, импорт в phpMyAdmin. Поэтому это мера на часы, а не на дни.</p>



<p class="wp-block-paragraph">Два места, которые легко пропустить:</p>



<ul class="wp-block-list">
<li><strong>Дефолтный <code>server</code> в <code>/etc/nginx/nginx.conf</code>.</strong> Он ловит запросы по IP и с неизвестным <code>Host</code> и в ispmanager проксирует их в Apache, но <code>vhosts-includes</code> не подключает. Без отдельного <code>include</code> туда атака по IP проходит мимо блока.</li>



<li><strong>Apache на внешнем адресе.</strong> Если Apache слушает не <code>127.0.0.1</code>, а внешний IP, запрос можно отправить прямо ему, минуя nginx. Проверка: <code>ss -ltnp | grep httpd</code>.</li>
</ul>



<h2 class="wp-block-heading">Ловушка CageFS: настройка из панели не доходит до сайтов</h2>



<p class="wp-block-paragraph">Днём мы отключили <code>session.upload_progress.enabled</code> штатно: «Настройки web-сервера → PHP → версия → настройки». Панель показала, что значение сохранено. Вечером проверка изнутри клетки CageFS показала, что у сайтов оно по-прежнему включено.</p>



<p class="wp-block-paragraph">Причина в том, как устроен alt-php на CloudLinux:</p>



<ul class="wp-block-list">
<li>ispmanager записал значение в <code>/opt/alt/phpXX/etc/php.d.all/session.ini</code>, то есть в ini расширения session;</li>



<li>расширение session в alt-php встроено и через PHP Selector не подключается, поэтому этот ini внутри клетки никто не читает;</li>



<li>внутри клетки PHP читает основной <code>/opt/alt/phpXX/etc/php.ini</code> и пользовательский <code>alt_php.ini</code> из <code>/opt/alt/phpXX/link/conf</code>, а это совсем другой каталог, чем видит root.</li>
</ul>



<p class="wp-block-paragraph">Отсюда главный урок: <strong>проверять PHP нужно от имени пользователя внутри клетки, а не от root</strong>:</p>



<pre class="wp-block-code"><code>su -s /bin/bash -c "/opt/alt/php83/usr/bin/php -r 'var_dump(ini_get(\"session.upload_progress.enabled\"));'" ЛОГИН_КЛИЕНТА</code></pre>



<p class="wp-block-paragraph">Что сработало:</p>



<ol class="wp-block-list">
<li>Дописать директиву в конец <code>php.ini</code> каждой версии, который действительно загружается (путь даёт <code>php --ini</code>, строка <code>Loaded Configuration File</code>).</li>



<li>Выполнить <code>cagefsctl --rebuild-alt-php-ini</code>, чтобы пересобрать пользовательские <code>alt_php.ini</code>.</li>



<li>Выполнить <code>cagefsctl --update</code>: у нативного PHP внутри клетки своя копия <code>/etc/php.ini</code> в скелете CageFS, и без обновления скелета правка до сайтов не доходит.</li>



<li>Не забыть персональные <code>php.ini</code> сайтов в режиме CGI: ispmanager держит их в <code>/var/www/ПОЛЬЗОВАТЕЛЬ/data/php-bin*/php.ini</code>.</li>



<li>Перезапустить httpd и FPM.</li>
</ol>



<p class="wp-block-paragraph">И ещё одна деталь: в ту же ночь в 03:37 что-то пересобрало <code>php.ini</code> всех alt-php из шаблона. Если правка живёт только в <code>php.ini</code>, её стоит подстраховать задачей cron, которая проверяет и восстанавливает строку, пока патчи не вышли. Мы так и сделали, и cron несколько раз действительно её возвращал, например после обновления пакетов alt-php.</p>



<h2 class="wp-block-heading">Блок multipart ломает вход в панель</h2>



<p class="wp-block-paragraph">Через пару часов после блокировки клиент написал, что не может войти в панель: запрос входа получает 403, а интерфейс бесконечно показывает индикатор загрузки. IP клиента никто не блокировал.</p>



<p class="wp-block-paragraph">Панель ispmanager работает на своём веб-сервере ihttpd на порту 1500, и при входе напрямую на этот порт nginx действительно ни при чём. Но если включён модуль <code>nginx_proxy</code>, панель доступна и через 443 по адресу <code>https://ХОСТ/ispmgr</code>, а форма входа отправляется как <code>multipart/form-data</code>. Наш блок отвечал 403 ещё в nginx, а фронтенд панели такую ошибку показать не умеет.</p>



<p class="wp-block-paragraph">Модуль подключается только в vhost хоста панели (<code>/etc/nginx/modules-includes/nginx_proxy/</code>), и все его пути уходят в ihttpd, а не в PHP. Поэтому исключение безопасно делать по связке хоста и пути:</p>



<pre class="wp-block-code"><code>set $cve_mp 0;
if ($http_content_type ~* "multipart") { set $cve_mp 1; }
set $cve_hu "$host:$uri";
if ($cve_hu ~* "^panel\.example\.com:/(ispmgr|mancgi|manimg|long|shell|notify)(/|$)") { set $cve_mp 0; }
if ($cve_mp = 1) { return 403; }</code></pre>



<p class="wp-block-paragraph">Исключение только по пути без хоста было бы ошибкой: запрос на <code>клиентский-сайт/ispmgr</code> ушёл бы в Apache, а там WordPress перепишет его на <code>index.php</code>, и PHP разберёт multipart. На хосте панели этот путь гарантированно уходит в ihttpd.</p>



<p class="wp-block-paragraph">Список путей лучше брать из самого модуля (<code>grep location /etc/nginx/modules-includes/nginx_proxy/*.conf</code>), а не по памяти. И проверять сразу после перезагрузки nginx не стоит: первые запросы может ещё обслужить старый воркер со старой конфигурацией.</p>



<h2 class="wp-block-heading">Забытые Roundcube и phpMyAdmin</h2>



<p class="wp-block-paragraph">Когда вышли патчи alt-php, мы обновили пакеты и сняли блок. И только потом вспомнили, что веб-почта и phpMyAdmin в ispmanager работают <strong>не на той версии PHP, которую вы выбрали для сайтов</strong>. Обновление alt-php их не касается.</p>



<p class="wp-block-paragraph">Оба приложения подключаются через <code>vhosts-includes</code>, то есть доступны на каждом домене сервера (<code>/roundcube</code>, <code>/webmail</code>, <code>/phpmyadmin</code> или путь со случайным префиксом). Какой PHP их выполняет, видно по <code>fastcgi_pass</code> в этих файлах:</p>



<pre class="wp-block-code"><code>grep -E 'location|fastcgi_pass' /etc/nginx/vhosts-includes/*roundcube*.conf /etc/nginx/vhosts-includes/*phpmyadmin*.conf</code></pre>



<p class="wp-block-paragraph">У нас нашлось сразу несколько вариантов на разных серверах:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Приложение</th><th>Через nginx</th><th>Через Apache</th></tr></thead><tbody><tr><td>Roundcube <code>/roundcube</code></td><td>нативный PHP-FPM (<code>php-fpm.apache.sock</code>) или isp-php74</td><td>isp-php74 через свой сокет</td></tr><tr><td>Roundcube <code>/webmail</code></td><td>нативный PHP-FPM</td><td>mod_php</td></tr><tr><td>phpMyAdmin</td><td>нативный PHP-FPM</td><td>mod_php</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Вторая колонка важна не меньше первой. Apache получает эти запросы в двух случаях:</p>



<ul class="wp-block-list">
<li>запрос по IP или с неизвестным <code>Host</code> уходит через дефолтный server nginx прямо в Apache, где <code>Alias /webmail</code> и <code>/phpmyadmin</code> глобальные;</li>



<li>в конфигурации nginx для <code>/webmail</code> и <code>/phpmyadmin</code> стоят <code>error_page 404 @apache</code> и <code>error_page 502 = @apache</code>. Адрес с PATH_INFO вроде <code>/webmail/index.php/x</code> не совпадает с <code>location ~ \.php$</code>, получает 404 и уходит в Apache, где его выполнит mod_php.</li>
</ul>



<p class="wp-block-paragraph">На одном из серверов нативный PHP был 5.4 из CentOS 7, для которого исправлений не будет никогда. Пока мы переводили эти приложения на alt-php, блок multipart оставался только на их путях, а сайты уже работали без ограничений:</p>



<pre class="wp-block-code"><code>if ($uri !~* "^/(roundcube|webmail|phpmyadmin)(/|$)") { set $cve_mp 0; }</code></pre>



<p class="wp-block-paragraph">Клиенты в это время не могли прикреплять вложения в веб-почте, и они это заметили почти сразу.</p>



<h2 class="wp-block-heading">Почему на CloudLinux номер версии не меняется</h2>



<p class="wp-block-paragraph">CloudLinux выпустил исправления для всех веток alt-php сразу, от 5.4 до 8.5, но не в виде 8.3.36 или 8.4.27, а как новые сборки прежних версий: <code>alt-php83-8.3.35-6</code>, <code>alt-php84-8.4.26-5</code>, <code>alt-php85-8.5.11-5</code> и так далее. Патч вносится в установленную версию, растёт только номер релиза пакета.</p>



<p class="wp-block-paragraph">Поэтому скрипты проверки, которые сравнивают <code>PHP_VERSION</code> с 8.3.36, будут показывать «уязвимо» и после обновления. А клиенты, заглянувшие в панель, увидят те же цифры и спросят, почему ничего не обновлено. Надёжных признаков два.</p>



<p class="wp-block-paragraph"><strong>Changelog пакета.</strong> Для старых веток CloudLinux дополнительно вырезал обработчик прогресса загрузки целиком:</p>



<pre class="wp-block-code"><code>for p in $(rpm -qa --qf '%{NAME}\n' 'alt-php&#91;0-9]*' | grep -E '^alt-php(5&#91;4-9]|&#91;78]&#91;0-9])$' | sort -V); do
  printf '%-10s %-16s ' $p "$(rpm -q --qf '%{VERSION}-%{RELEASE}' $p)"
  rpm -q --changelog $p | head -10 | grep -c 'CVE-2026-10961&#91;89]'
done</code></pre>



<p class="wp-block-paragraph"><strong>Build Date в phpinfo().</strong> У исправленных сборок там 21 октября 2026, у предыдущих более ранние даты. Это то, что можно сообщить клиентам: проверить может любой, без доступа к серверу.</p>



<p class="wp-block-paragraph">С нативным PHP та же история с другой стороны. На RHEL 9 и его пересборках исправленная версия 8.0 называется <code>php-8.0.30-8.el9_8.1</code> (бюллетень Red Hat RHSA-2026:87151), а в changelog номера CVE оказались приклеены к последнему пункту списка с совсем другим описанием. Без бюллетеня по changelog это легко принять за обычное обновление.</p>



<p class="wp-block-paragraph">У пакетов ispmanager (<code>isp-phpXX</code>) changelog вообще шаблонный, с одной записью 2019 года. Признаки исправления там косвенные: номер сборки (у нас 1781 для 8.2-8.5, 1782 для 7.4, 1786 для 7.1) и <code>Build Date</code> 22 октября.</p>



<h2 class="wp-block-heading">Подводные камни самого обновления</h2>



<p class="wp-block-paragraph"><strong><code>dnf --best --allowerasing</code> на сервере с ispmanager.</strong> На CloudLinux 9 <code>dnf update</code> вываливал длинный список конфликтов: в репозитории есть нативный PHP 8.3.36 из модульного потока, и dnf считает его лучшим кандидатом для установленного 8.0. Но модуль Apache от ispmanager (<code>isp-httpd-mod_php</code>) жёстко требует PHP 8.0.x, а от него зависят <code>coremanager-pkg-php</code> и <code>ispmanager-pkg-php</code>, то есть сама панель. Подсказка dnf добавить <code>--best --allowerasing</code> здесь опасна: она удалит пакеты панели. Конфликт безвреден, в конце dnf пишет <code>Nothing to do</code>. Чтобы убрать шум до выхода сборки 8.0: <code>dnf update --exclude='php,php-*'</code>.</p>



<p class="wp-block-paragraph"><strong>Модуль Apache для PHP у ispmanager свой.</strong> Он грузится из <code>modules/isp-libphp8.so</code> и принадлежит пакету <code>isp-httpd-mod_php</code>, а не системному <code>php</code>. Исправления этих CVE находятся в ядре PHP, то есть внутри самого модуля, и обновление пакета <code>php</code> его не меняет. Проверка:</p>



<pre class="wp-block-code"><code>grep -rhE 'LoadModule\s+php' /etc/httpd/conf.modules.d/ /etc/httpd/conf.d/
rpm -qf /etc/httpd/modules/isp-libphp8.so
strings /etc/httpd/modules/isp-libphp8.so | grep -m1 -E '&#91;A-Z]&#91;a-z]{2} &#91; 0-9]&#91;0-9] 20&#91;0-9]{2}'</code></pre>



<p class="wp-block-paragraph">Если модуль собран раньше 21 октября, все сайты в режиме «Модуль Apache» остаются уязвимыми. Найти их: <code>grep -lE 'SetHandler\s+application/x-httpd-php\s*$' /etc/httpd/conf/vhosts/*/*</code>. Мы перевели такие сайты на alt-php, а там, где это невозможно (интерфейс, которому нужен доступ вне CageFS), закрыли доступ по IP.</p>



<p class="wp-block-paragraph"><strong>Выключенный PHP хуже включённого.</strong> Часть бывших mod_php-сайтов оказалась статикой, и мы выключили им PHP. На одном из них рядом с заглушкой лежал 61 файл старого сайта, и при выключенном PHP их исходники, включая конфиг с паролем от базы, отдавались как текст. Перед выключением PHP проверяйте: <code>find ДОКРУТ -name '*.php*' | wc -l</code>.</p>



<p class="wp-block-paragraph"><strong>Обрыв SSH посреди транзакции.</strong> Обновление 160 пакетов alt-php шло несколько минут, и связь оборвалась. Транзакция, к счастью, завершилась, но проверять нужно: <code>dnf history list</code>, <code>dnf check</code> (на CentOS 7: <code>package-cleanup --problems</code>, <code>package-cleanup --dupes</code>). Длинные обновления лучше запускать в <code>tmux</code>.</p>



<p class="wp-block-paragraph"><strong>Тихие пересборки ispmanager.</strong> Исправленные <code>isp-php</code> выходили в течение суток по одному: сначала 8.2-8.5, потом 7.4, потом 7.1. Для CentOS 7 сборка 7.4 на момент написания так и не появилась. Имеет смысл несколько раз в день проверять <code>dnf check-update 'isp-php*'</code>.</p>



<h2 class="wp-block-heading">Как перевести Roundcube и phpMyAdmin на alt-php</h2>



<p class="wp-block-paragraph">На сервере с нативным PHP 5.4 мы перевели служебный пул FPM <code>apache</code> на alt-php56, сохранив тот же сокет. Тогда конфигурацию nginx менять не нужно, а откат сводится к запуску старого сервиса. Выбор 5.6 вместо 7.4 простой: Roundcube 1.4 и старый phpMyAdmin работали на 5.4, 5.6 ближе всего, и CloudLinux выпустил для неё бэкпорт.</p>



<p class="wp-block-paragraph">Шаги:</p>



<ol class="wp-block-list">
<li><strong>Свой каталог ini.</strong> Вне CageFS alt-php от root подключает только минимум расширений, остальные лежат в <code>php.d.all</code>. Мы собрали один <code>extensions.ini</code> из нужных модулей (session, json, dom, xml*, mbstring, intl, gd, mcrypt, zip, pdo, nd_mysql*). Ini-файлы CloudLinux сами подтягивают зависимости, поэтому дубликаты строк <code>extension=</code> убираем.</li>



<li><strong>Конфиг FPM</strong> с пулом <code>apache</code> на <code>/var/run/php-fpm.apache.sock</code>, теми же <code>user</code>, <code>group</code>, <code>listen.owner</code> и явным <code>session.save_path</code>, потому что в нативном <code>php.ini</code> он не был задан.</li>



<li><strong>Проверка до переключения:</strong> <code>PHP_INI_SCAN_DIR=… php -m</code> без ошибок и <code>php-fpm -t -y …</code> с <code>test is successful</code>.</li>



<li><strong>systemd-юнит</strong> с <code>Environment=PHP_INI_SCAN_DIR=…</code> и <code>ExecStart=… php-fpm --nodaemonize -y …</code>.</li>



<li><strong>Переключение:</strong> переименовать <code>/etc/php-fpm.d/apache.conf</code>, перезапустить нативный FPM (у него остаётся пул <code>www</code>), запустить новый. Простой несколько секунд.</li>



<li><strong>Apache тоже на этот сокет.</strong> В <code>roundcube-webmail.conf</code> и <code>phpmyadmin-httpd.conf</code> заменить <code>SetHandler application/x-httpd-php</code> на <code>SetHandler "proxy:unix:/var/run/php-fpm.apache.sock|fcgi://localhost/"</code>, в <code>roundcube-isp.conf</code> заменить сокет isp-php74. Проверить, что <code>SetHandler</code> стоит внутри <code>&lt;FilesMatch "\.php$"></code>, иначе в FPM уйдёт и статика.</li>
</ol>



<p class="wp-block-paragraph">Удаление дубликатов расширений из шага 1:</p>



<pre class="wp-block-code"><code>awk '/^&#91;&#91;:space:]]*(zend_)?extension&#91;&#91;:space:]]*=/ { k=$0; gsub(/&#91;&#91;:space:]]/,"",k); if (seen&#91;k]++) next } { print }' $FILES &gt; conf.d/extensions.ini</code></pre>



<p class="wp-block-paragraph">Проверка, кто реально выполняет PHP на каждом пути, включая прямой запрос в Apache и PATH_INFO:</p>



<pre class="wp-block-code"><code>echo '&lt;?php echo PHP_VERSION, " ", php_sapi_name();' &gt; /usr/share/roundcubemail/_v.php
curl -s -H 'Host: nonexistent.invalid' http://127.0.0.1:8080/webmail/_v.php
curl -sk https://ДОМЕН/webmail/_v.php/x
rm -f /usr/share/roundcubemail/_v.php</code></pre>



<p class="wp-block-paragraph">Везде должно быть <code>5.6.40 fpm-fcgi</code>. После этого блок nginx можно снимать.</p>



<p class="wp-block-paragraph">Два минуса решения: на пути через Apache пропадают ограничения <code>open_basedir</code> из конфигов для mod_php, а <code>roundcube-isp.conf</code> помечен ispmanager как перезаписываемый при обновлении пакета. После обновлений панели стоит проверять, что сокеты не вернулись и что <code>/etc/php-fpm.d/apache.conf</code> не появился заново.</p>



<h2 class="wp-block-heading">Чек-лист для сервера с ispmanager</h2>



<p class="wp-block-paragraph">Если у вас сервер с ispmanager и вы ещё не уверены, что закрыли PHP2Shell полностью, пройдитесь по списку:</p>



<ul class="wp-block-list">
<li>Все используемые ветки alt-php обновлены, в changelog есть CVE-2026-109618/109619 или <code>Build Date</code> не раньше 21 октября 2026.</li>



<li>Пакеты <code>isp-php*</code> обновлены, сервисы <code>php-fpm*</code> перезапущены (после смены unit-файла сначала <code>systemctl daemon-reload</code>).</li>



<li>Нативный PHP ОС обновлён или ничего не обслуживает (проверьте пулы в <code>/etc/php-fpm.d/</code> и кто подключается к их сокетам).</li>



<li>Модуль Apache <code>isp-libphp8.so</code> собран после 21 октября, или ни один сайт не работает в режиме «Модуль Apache».</li>



<li>Roundcube и phpMyAdmin работают на исправленном PHP и через nginx, и через Apache.</li>



<li>Значения PHP проверены от имени пользователя внутри CageFS, а не от root.</li>



<li>Скелет CageFS обновлён (<code>cagefsctl --update</code>).</li>



<li>Временные блоки в nginx сняты, включая строку в дефолтном <code>server</code> в <code>nginx.conf</code>.</li>



<li>На сайтах с выключенным PHP нет <code>.php</code>-файлов.</li>



<li>Клиентам объяснено, почему номер версии в панели не изменился.</li>
</ul>



<p class="wp-block-paragraph">Главный вывод этой ночи простой: на хостинге с панелью «обновить PHP» означает не один пакет, а пять-шесть разных сборок PHP от трёх поставщиков (апстрим через CloudLinux, ispmanager, дистрибутив), и часть из них обслуживает не сайты, а служебные приложения панели. Полезно заранее знать, какой PHP за каким путём стоит, до того как он понадобится ночью.</p>



<h2 class="wp-block-heading">Источники</h2>



<ul class="wp-block-list">
<li><a href="https://www.php.net/archive/2026.php" target="_blank" rel="noopener">PHP: Security advisory, 21 Oct 2026</a></li>



<li><a href="https://cloudlinux.zendesk.com/hc/en-us/articles/31194180517916-PHP-CVE-2026-109618-CVE-2026-109619-reported-pre-disclosure-RCEs-updated-package-availability" target="_blank" rel="noopener">CloudLinux KB: updated package availability</a></li>



<li><a href="https://blog.cloudlinux.com/php-cve-2026-109618-and-cve-2026-109619" target="_blank" rel="noopener">CloudLinux blog: Imunify360 Ruleset 8.83</a></li>



<li><a href="https://access.redhat.com/errata/RHSA-2026:87151" target="_blank" rel="noopener">Red Hat RHSA-2026:87151 (PHP 8.0, RHEL 9)</a></li>



<li><a href="https://ispmanager.com/docs/ispmanager/php-settings-on-cloudlinux" target="_blank" rel="noopener">ispmanager: PHP settings on CloudLinux</a></li>



<li><a href="https://www.opennet.ru/opennews/art.shtml?num=66516" target="_blank" rel="noopener">OpenNet: уязвимость в PHP</a></li>
</ul>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Бесплатный плагин для WordPress: защита админки по географии</title>
		<link>https://blog.core.eu/ru/%d0%b1%d0%b5%d1%81%d0%bf%d0%bb%d0%b0%d1%82%d0%bd%d1%8b%d0%b9-%d0%bf%d0%bb%d0%b0%d0%b3%d0%b8%d0%bd-%d0%b4%d0%bb%d1%8f-wordpress-%d0%b7%d0%b0%d1%89%d0%b8%d1%82%d0%b0-%d0%b0%d0%b4%d0%bc%d0%b8%d0%bd/</link>
		
		<dc:creator><![CDATA[Core]]></dc:creator>
		<pubDate>Thu, 21 May 2026 09:36:44 +0000</pubDate>
				<category><![CDATA[Безопасность]]></category>
		<category><![CDATA[Новости]]></category>
		<category><![CDATA[Хостинг]]></category>
		<guid isPermaLink="false">https://blog.core.eu/?p=1194</guid>

					<description><![CDATA[Делимся полезным инструментом, который может пригодиться всем, кто работает с сайтами на WordPress. Защитите админку WordPress от входа из других стран Для этого мы сделали бесплатный плагин — он закрывает доступ к панели управления для IP-адресов из стран, которых нет в списке разрешённых. Что делает плагин Плагин блокирует доступ к wp-admin и wp-login.php для IP-адресов [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Делимся полезным инструментом, который может пригодиться всем, кто работает с сайтами на WordPress.</p>



<h2 class="wp-block-heading">Защитите админку WordPress от входа из других стран</h2>



<p class="wp-block-paragraph">Для этого мы сделали бесплатный плагин — он закрывает доступ к панели управления для IP-адресов из стран, которых нет в списке разрешённых.</p>



<h3 class="wp-block-heading">Что делает плагин</h3>



<p class="wp-block-paragraph">Плагин блокирует доступ к <strong>wp-admin</strong> и <strong>wp-login.php</strong> для IP-адресов из стран, которые не входят в список разрешённых. Посетители фронтенда сайта, интернет-магазина и личных кабинетов работают без ограничений — блокировка касается только административной части.</p>



<h3 class="wp-block-heading">Скачать</h3>



<p class="wp-block-paragraph"><a href="https://downloads.core.hosting/wp-plugins/block-access-to-admin-by-country/block-access-to-admin-by-country.zip" target="_blank" rel="noreferrer noopener nofollow">block-access-to-admin-by-country.zip</a></p>



<h3 class="wp-block-heading">Установка</h3>



<ol class="wp-block-list">
<li>Скачайте zip-архив по ссылке выше</li>



<li>В панели WordPress откройте <strong>Плагины → Добавить новый → Загрузить плагин</strong></li>



<li>Выберите скачанный архив и нажмите <strong>Установить</strong>, затем <strong>Активировать</strong></li>



<li>Откройте <strong>Настройки → Admin Country Block</strong> и укажите разрешённые страны</li>
</ol>



<h3 class="wp-block-heading">Настройки</h3>



<ul class="wp-block-list">
<li><strong>Allowed countries</strong> — коды стран через Enter (например: EE, FI, LV). Только IP из этих стран получат доступ к админке.</li>



<li><strong>Exception IPs</strong> — IP-адреса, которые всегда имеют доступ независимо от страны. Укажите здесь свой IP, чтобы не заблокировать себя.</li>



<li><strong>Cache TTL</strong> — время кеширования результата проверки на один IP-адрес (по умолчанию 24 часа).</li>
</ul>



<h3 class="wp-block-heading">Для клиентов Core Hosting</h3>



<p class="wp-block-paragraph">На <a href="https://my.core.hosting/" target="_blank" rel="noreferrer noopener">серверах Core Hosting</a> плагин автоматически использует локальную базу данных MaxMind GeoLite2 — без обращений к внешним сервисам, быстро и надёжно. База обновляется еженедельно в автоматическом режиме. Никаких дополнительных настроек не требуется.</p>



<h3 class="wp-block-heading">Для сайтов на других хостингах</h3>



<p class="wp-block-paragraph">Плагин использует бесплатный геолокационный API (freeipapi.com). При необходимости можно указать любой другой совместимый API в поле <strong>API URL</strong>. Результаты кешируются, поэтому количество обращений к API минимально.</p>



<p class="wp-block-paragraph">Плагин поддерживает автоматическое обновление — новые версии будут появляться в стандартном разделе обновлений WordPress.</p>



<p class="wp-block-paragraph">Плагин бесплатный и в открытом доступе. Если что-то пойдёт не так при установке или появятся вопросы — обращайтесь в поддержку.</p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Большие обновления в Core.Hosting: новые возможности и цены на хостинг</title>
		<link>https://blog.core.eu/ru/%d0%b1%d0%be%d0%bb%d1%8c%d1%88%d0%b8%d0%b5-%d0%be%d0%b1%d0%bd%d0%be%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d1%8f-%d0%b2-core-hosting-%d0%bd%d0%be%d0%b2%d1%8b%d0%b5-%d0%b2%d0%be%d0%b7%d0%bc%d0%be%d0%b6%d0%bd/</link>
		
		<dc:creator><![CDATA[Core]]></dc:creator>
		<pubDate>Fri, 06 Jun 2025 16:28:10 +0000</pubDate>
				<category><![CDATA[Новости]]></category>
		<category><![CDATA[Хостинг]]></category>
		<guid isPermaLink="false">https://blog.core.eu/?p=1103</guid>

					<description><![CDATA[В Core.Hosting мы постоянно работаем над тем, чтобы предоставлять вам самые современные, быстрые и надежные хостинговые решения. Последние несколько месяцев мы усердно трудились над масштабным обновлением нашей инфраструктуры. Сегодня мы рады поделиться новостями об улучшениях в наших пакетах, которые предоставят вам еще больше ресурсов и возможностей для роста ваших проектов. Почему мы вносим изменения? Наша [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">В Core.Hosting мы постоянно работаем над тем, чтобы предоставлять вам самые современные, быстрые и надежные хостинговые решения. Последние несколько месяцев мы усердно трудились над масштабным обновлением нашей инфраструктуры. Сегодня мы рады поделиться новостями об улучшениях в наших пакетах, которые предоставят вам еще больше ресурсов и возможностей для роста ваших проектов.</p>



<p class="wp-block-paragraph"><strong>Почему мы вносим изменения?</strong></p>



<p class="wp-block-paragraph">Наша цель — ваш успех. Чтобы его обеспечить, мы инвестируем в будущее:</p>



<ol class="wp-block-list">
<li><strong>Новая технологическая платформа:</strong> Мы переводим пользователей на новую, более мощную среду веб-хостинга. Это означает более высокую скорость работы сайтов, улучшенную безопасность и стабильность.</li>



<li><strong>Больше ресурсов:</strong> Мы значительно увеличили лимиты дискового пространства и добавили новые профессиональные инструменты (например, SSH-доступ и поддержку Node.js) в популярные пакеты.</li>



<li><strong>Стандартизация и прозрачность:</strong> Мы обновляем и унифицируем нашу ценовую политику, чтобы сделать ее более понятной и справедливой для всех клиентов. Эти изменения также совпадают с плановым повышением ставки НСО в Эстонии с 22% до 24%.</li>
</ol>



<p class="wp-block-paragraph"><strong>Что нового в пакетах?</strong></p>



<p class="wp-block-paragraph">Наши пакеты Simple, Basic и Pro стали еще мощнее. Вот ключевые улучшения:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td>Возможность</td><td>Simple (Новый)</td><td>Basic (Новый)</td><td>Pro (Новый)</td></tr><tr><td>NVMe Диск</td><td>64 ГБ</td><td>128 ГБ</td><td>256 ГБ</td></tr><tr><td>Веб-сайты</td><td>1</td><td>3</td><td>5</td></tr><tr><td>Почтовые ящики</td><td>10</td><td>Неограниченно</td><td>Неограниченно</td></tr><tr><td>DNS-сервис</td><td>5 доменов</td><td>10 доменов</td><td>15 доменов</td></tr><tr><td>Cron-задания</td><td>2</td><td>6</td><td>10</td></tr><tr><td>SSH-доступ</td><td>&#8212;</td><td>Да</td><td>Да</td></tr><tr><td>Node.js, Python</td><td>&#8212;</td><td>Да</td><td>Да</td></tr><tr><td>Приоритетная поддержка</td><td>&#8212;</td><td>&#8212;</td><td>Да</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>Обновленные цены с 1 июля 2025 года</strong></p>



<p class="wp-block-paragraph">Новые цены отражают возросшую ценность пакетов и измененную ставку НСО.</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td>Пакет</td><td>Цена в месяц (€)</td><td>Цена при оплате за год (€/мес)</td></tr><tr><td>Simple</td><td>7.50</td><td>5.63</td></tr><tr><td>Basic</td><td>12.50</td><td>9.38</td></tr><tr><td>Pro</td><td>19.50</td><td>14.63</td></tr><tr><td>Developer</td><td>69.50</td><td>63.71</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><em>К ценам добавляется НСО 24%.</em></p>



<p class="wp-block-paragraph"><strong>Что это значит для существующих клиентов?</strong></p>



<ul class="wp-block-list">
<li><strong>Цены:</strong> Новые цены вступят в силу с 1 июля 2025 года. Если вы уже пользуетесь услугами по этим ценам, для вас ничего не изменится. Для всех предоплаченных периодов старые цены действуют до их окончания.</li>



<li><strong>Миграция:</strong> Мы плавно перенесем всех пользователей пакетов Simple, Basic и Pro на новую платформу до мая 2026 года. Мы позаботимся обо всех технических деталях, чтобы переход был для вас незаметным.</li>
</ul>



<p class="wp-block-paragraph">Мы уверены, что эти обновления помогут вам достигать новых высот. Спасибо, что вы с нами!</p>



<p class="wp-block-paragraph">Команда Core.Hosting</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Почему стоит выбрать Core.Hosting для сайта и почты</title>
		<link>https://blog.core.eu/ru/%d0%bf%d0%be%d1%87%d0%b5%d0%bc%d1%83-%d1%81%d1%82%d0%be%d0%b8%d1%82-%d0%b2%d1%8b%d0%b1%d1%80%d0%b0%d1%82%d1%8c-core-hosting-%d0%b4%d0%bb%d1%8f-%d1%81%d0%b0%d0%b9%d1%82%d0%b0-%d0%b8-%d0%bf%d0%be%d1%87/</link>
		
		<dc:creator><![CDATA[Core]]></dc:creator>
		<pubDate>Fri, 02 May 2025 17:25:14 +0000</pubDate>
				<category><![CDATA[Новости]]></category>
		<category><![CDATA[Хостинг]]></category>
		<guid isPermaLink="false">https://blog.core.eu/?p=1091</guid>

					<description><![CDATA[Когда приходит время выбирать хостинг, важно смотреть не только на цену, но и на то, насколько провайдер гибкий, удобный и заботится о безопасности. В Core.Hosting мы стараемся учесть все потребности клиентов — от новичков до опытных разработчиков. &#x2705; Гибкость без скрытых доплат Не все сайты работают на последних версиях PHP, и это нормально. У нас [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Когда приходит время выбирать хостинг, важно смотреть не только на цену, но и на то, насколько провайдер гибкий, удобный и заботится о безопасности. В Core.Hosting мы стараемся учесть все потребности клиентов — от новичков до опытных разработчиков.</p>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Гибкость без скрытых доплат</h4>



<p class="wp-block-paragraph">Не все сайты работают на последних версиях PHP, и это нормально. У нас вы можете свободно использовать как современные, так и устаревшие версии PHP: от 5.2 до 8.4 — без дополнительной платы. Это особенно важно, если у вас есть старые проекты, которые нужно просто поддерживать в рабочем состоянии.</p>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f512.png" alt="🔒" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Безопасность сайтов — по умолчанию</h4>



<p class="wp-block-paragraph">Мы включили антивирус ImunifyAV+ во все тарифы. Это решение автоматически проверяет и очищает сайты от вредоносного кода, снижая риск взлома и сбоев.</p>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2699.png" alt="⚙" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Установка CMS и скриптов — в пару кликов</h4>



<p class="wp-block-paragraph">С нашим автоустановщиком вы можете запустить WordPress, Joomla, OpenCart и другие популярные решения буквально за пару минут — всё просто и интуитивно.</p>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f9f1.png" alt="🧱" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Конструктор сайтов Site.pro в каждом тарифе</h4>



<p class="wp-block-paragraph">Если вы хотите сделать сайт своими руками — в вашем распоряжении встроенный визуальный редактор. Без кодинга, без доплат.</p>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f69a.png" alt="🚚" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Бесплатный перенос сайта и почты</h4>



<p class="wp-block-paragraph">Меняете хостинг? Мы перенесем ваш сайт и почту с другого провайдера бесплатно. Всё будет настроено и проверено — вам не нужно вникать в технические детали.</p>



<h4 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f468-200d-1f4bb.png" alt="👨‍💻" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Поддержка, которая отвечает</h4>



<p class="wp-block-paragraph">Наша команда работает с 9:00 до 19:00 и действительно помогает — без ботов и шаблонных отписок.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p class="wp-block-paragraph">Core.Hosting — это не просто набор услуг. Это надёжный партнёр, который не усложняет, а помогает. Если вы задумываетесь о смене хостинга — попробуйте нас. Начать легко.</p>



<p class="wp-block-paragraph"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f517.png" alt="🔗" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Подробнее: <a href="https://core.eu/ru/hosting/shared/" target="_blank" rel="noreferrer noopener">https://core.eu/ru/hosting/shared/</a> или <a href="https://core.hosting" target="_blank" rel="noreferrer noopener">https://core.hosting</a></p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Как быстро развернуть сайт для своего проекта?</title>
		<link>https://blog.core.eu/ru/%d0%ba%d0%b0%d0%ba-%d0%b1%d1%8b%d1%81%d1%82%d1%80%d0%be-%d1%80%d0%b0%d0%b7%d0%b2%d0%b5%d1%80%d0%bd%d1%83%d1%82%d1%8c-%d1%81%d0%b0%d0%b9%d1%82-%d0%b4%d0%bb%d1%8f-%d1%81%d0%b2%d0%be%d0%b5%d0%b3%d0%be/</link>
		
		<dc:creator><![CDATA[Core]]></dc:creator>
		<pubDate>Sun, 15 Dec 2024 17:27:03 +0000</pubDate>
				<category><![CDATA[Хостинг]]></category>
		<guid isPermaLink="false">https://blog.core.eu/?p=1031</guid>

					<description><![CDATA[Итак, у вас уже есть идея для вашего проекта. Вы купили подходящий по имени домен и планируете в ближайшее время создать для проекта веб-сайт. Расскажем вам о том, как создать свой идеальный веб-ресурс на хостинге CORE. ISP Manager — панель управления хостинга CORE. Она позволяет в пару кликов установить популярные CMS, либо создать сайт с [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Итак, у вас уже есть идея для вашего проекта. Вы <a href="https://core.eu/ru/domain/domain-search/" target="_blank" rel="noreferrer noopener">купили подходящий по имени домен</a> и планируете в ближайшее время создать для проекта веб-сайт.</p>



<p class="wp-block-paragraph">Расскажем вам о том, как создать свой идеальный веб-ресурс на <a href="https://core.eu/ru/hosting/shared/" target="_blank" rel="noreferrer noopener">хостинге CORE</a>.</p>



<p class="wp-block-paragraph">ISP Manager — панель управления хостинга CORE. Она позволяет в пару кликов установить популярные CMS, либо создать сайт с помощью бесплатного конструктора Site.pro.</p>



<h4 class="wp-block-heading">Удобства работы с ISP Manager</h4>



<p class="wp-block-paragraph"><strong>Интуитивно понятный интерфейс</strong><br />ISP Manager имеет простой и логичный интерфейс, что делает его доступным не только для опытных администраторов, но и для новичков. Все функции организованы удобно, что позволяет быстро находить нужные инструменты.</p>



<p class="wp-block-paragraph"><strong>Многофункциональность</strong><br />Панель управления позволяет управлять не только веб-сайтами, но и почтовыми ящиками, базами данных, доменными именами и другими ресурсами. Это делает ISP Manager универсальным инструментом для администрирования.</p>



<p class="wp-block-paragraph"><strong>Быстрая установка популярных CMS</strong><br />ISP Manager упрощает работу с установкой различных систем управления содержимым (CMS), включая:</p>



<ul class="wp-block-list">
<li>WordPress: Легкий в использовании инструмент для создания блогов и сайтов.</li>



<li>Drupal: Мощная система для создания сложных и многофункциональных сайтов.</li>



<li>Joomla: Идеально подходит для создания социальных сетей и корпоративных порталов.</li>



<li>PrestaShop и Magento: Отличный выбор для создания интернет-магазинов с множеством функций.</li>
</ul>



<p class="wp-block-paragraph">Установка этих CMS осуществляется всего за несколько кликов, благодаря встроенным мастерам и автоматическим настройкам. </p>



<p class="wp-block-paragraph">Чтобы установить скрипт для сайта в ISP Manager:</p>



<ol class="wp-block-list">
<li>В <strong>Основном меню </strong>выберите <strong>Сайты</strong>.</li>



<li>В открывшейся форме выберите сайт, для которого необходимо установить скрипт, и нажмите на кнопку <strong>CMS</strong>.</li>
</ol>



<p class="wp-block-paragraph">Установку можно выполнить с параметрами по умолчанию (кнопка &#171;Быстрая установка&#187;) или настроить параметры самостоятельно (кнопка &#171;Установить&#187;).</p>



<p class="wp-block-paragraph">&nbsp;</p>



<h4 class="wp-block-heading">Возможности бесплатного конструктора сайтов Site.pro</h4>



<p class="wp-block-paragraph">Теперь поговорим о конструкторе сайтов <a href="http://site.pro/" target="_blank" rel="noreferrer noopener">Site.pro</a>, который является отличным дополнением к ISP Manager.</p>



<p class="wp-block-paragraph"><strong>Простота использования</strong><br />Site.pro предлагает интуитивно понятный интерфейс &#171;перетаскивания&#187;, что позволяет пользователям без технических навыков создать профессиональный сайт за короткое время.</p>



<p class="wp-block-paragraph"><strong>Шаблоны и дизайны</strong><br />Конструктор предлагает множество готовых шаблонов, которые можно легко настроить под свои нужды. Это значительно ускоряет процесс разработки сайта.</p>



<p class="wp-block-paragraph"><strong>Адаптивность</strong><br />Все созданные сайты автоматически адаптируются под мобильные устройства, что гарантирует удобство для пользователей.</p>



<p class="wp-block-paragraph"><strong>Интеграция с различными сервисами</strong><br />Site.pro поддерживает интеграцию с популярными сервисами и инструментами, включая социальные сети, платежные системы и аналитические инструменты.</p>



<p class="wp-block-paragraph"><strong>Бесплатный доступ</strong><br />Один из главных плюсов — это бесплатный доступ к конструктору. Вы можете начать создавать сайт без каких-либо затрат.</p>



<p class="wp-block-paragraph">Независимо от ваших нужд и уровня подготовки, наш <a href="https://core.eu/ru/hosting/shared/" target="_blank" rel="noreferrer noopener">хостинг для сайтов и почты</a> имеет все инструменты для успешной реализации ваших онлайн-проектов.</p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
