Archive

RSS-feed блога на WordPress при включенной защите от сетевых атак на хостинге

Некоторое предисловие

Простая задача по поддержанию блога на собственном хостинге подчас перестает быть такой простой, как казалось на первый взгляд. Так, приходится выбирать между функционалом и безопасностью, между быстродействием и оформлением. Так, начав свой путь в поддержании блога на WordPress-движке с 50 плагинов-расширений, я перешел на 5 самых необходимых, без которых трудно обойтись, дописав весь нужный функционал в сам код темы. Так, с использования тем со встроенными фичами я пришел к созданию child-тем, добавляя каждую новую функцию и элементы оформления только по необходимости. Слишком много лазеек оставляют расширения, слишком много ресурсов забирают дополнения. Поэтому, если делать блог самому — это труд. Не тяжелый, и тут не надо иметь семь пядей во лбу. Но он должен быть вдумчивый, последовательный и кропотливый.

И вот, вроде бы, когда у тебя уже полностью собранный под тебя продукт, который тебя устраивает на 120%, появляется какая-нибудь информация о том, что у тебя что-то не работает и хотелось бы, чтобы всё-таки работало. Эти вещи каждый раз разные по объему, по трудности, и они никогда не повторяются даже близко.

И вот, после непродолжительного счастливого владения своим продуктом, вдруг появились они — вездесущие сканеры уязвимостей, тотальная регистрация ботов в системе, попытки захватить контроль над админкой, используя слабые места файловой системы хостера… В общем, в какой-то момент эта борьба с ветряными мельницами начинает надоедать. И вместо ежедневного добавления в access deny подсетей бот-ферм, ты хочешь найти кое-что более простое и в то же время лучшее. Хорошо, что сейчас куча инструментов против бот-ферм. И, конечно, первое, что приходит в голову — защита от сетевых атак вроде CloudFlare. У моего хостера подобный инструмент есть. Подключаем. Думаем, что всё под контролем, но… всегда есть это но.

Вновь включенная защита от сетевых атак действует по принципу проверки клиента-посетителя на вшивость и проверки на всё и вся. Сначала клиент загружает незаметно быстро JavaScript, который, если всё хорошо, потом уже говорит браузеру, где взять нормальный контент. Это же хорошо? Да! Когда оно там как-то работает без тебя, не мешает тебе и твоим читателям. А когда оно начинает мешать? Отключать? А бот-фермы? Не отключать? А читатели?

В общем, этот метод проверки приложил rss-feed этого блога. Потому что на первый же запрос он любому rss-клиенту (да и валидатору) отвечал HTML/Text, на что тот обижался.

Как-то отдельно страницы выключить из работы защитника мне не удалось, поэтому пришлось поискать нестандартное решение. И оно нашлось. Необходимо просто-напросто выкладывать rss-ленту на другом домене.

Проблема с RSS: как её решить

Пример именно моей проблемы

Я столкнулся с этой проблемой на сайте. Стандартный фид WordPress по адресу https://brmx.ru/feed/ отдавал внешним валидаторам HTML-страницу с JavaScript-проверкой и cookie. Браузер проходил эту проверку, а валидаторы и клиенты rss не могли выполнить JavaScript, поэтому видели обычную веб-страницу.

Решение

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

Для решения проблемы был создан отдельный субдомен https://rss.brmx.ru и на нем опубликован PHP-скрипт по адресу /rss.php, который формирует RSS напрямую через WordPress, в обход нашей системы защиты.

Логика проделанного

  1. Создаем отдельный субдомен rss.anyrandomdomain.ru для самостоятельной выдачи RSS без проблемной защиты основного сайта.
  2. На субдомене размещаем PHP-скрипт, который подключает WordPress через wp-load.php, получает опубликованные записи и формирует RSS 2.0 (тут важно, чтобы скрипт работал в том же файловой системе на стороне сервера, и имел к папке установки wordpress необходимый доступ).
  3. В процессе настраиваем путь к WordPress и следим чтобы версия PHP на субдомене была такой же, как и на основном домене.
  4. Скрипт именуем как угодно (у меня — это rss.php) только не index.php, чтобы избежать обработки адреса как главной страницы основного сайта.

Резюме

Рабочий адрес RSS у моего сайта теперь такой: https://rss.brmx.ru/rss.php (ссылка на фид в самом низу каждой страницы этого сайта).

И хотя сейчас всё меньше людей пользуются RSS, а в стандартных рекомендациях в плагинах по безопасности WordPress даже есть указания по отключению rss-фида, всё же надеюсь на то, что этот пост поможет вам решить проблему с RSS на вашем сайте.

Историческая справка по brmx.ru

До 2023 года на сайте brmx.ru продавалась обувь и сумки магазин «Брендмикс». В 2023 году владельцы решили переехать на другой адрес и зарегистрировали новый https://shoebag.ru/ (там, кстати, они теперь и живут по сей день). Отсюда они сделали редирект на новый сайт, чтобы он передал SEO-вес ему, а у старого домена в какой-то момент не продлили регистрацию. В результате старый сайт освободился и стал свободным на платформе reg.ru, где я его тут же встретил в списке недавно освободившихся доменов. Этот домен созвучен по имени и фамилии, поэтому я решил развернуть здесь свой Home Page с блогом и плюшками.

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

А говорят, что ссылочное продвижение в 2026 году больше не работает.

 

Блог был взломан

Недавно я обнаружил, что блог подвергся взлому. На сервере появились неизвестные PHP-файлы и дополнительные учётные записи WordPress. Сейчас сайт полностью проверяется и пересобирается заново.

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

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

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

Работа блога может временно прерываться. Если вы заметите подозрительные страницы, неожиданные перенаправления, предупреждения браузера или другие необычные действия на сайте, сообщите мне через раздел «Контакты».

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

Публикации в Telegram-канале

Из-за недавнего обновления настроек канала и сайта записи блога перестали автоматически публиковаться в этом телеграм-канале. Настройки вернул. Теперь репостинг работает в штатном режиме.

Не прошли в канал следующие публикации блога:

Про автоматические пропорциональные релейные регуляторы — https://brmx.ru/blog/2025/09/05/1611011277/

Некоторые важные изменения в законодательстве о спаме — https://brmx.ru/blog/2025/09/20/1110571288/

С Днём релейщика! — https://brmx.ru/blog/2025/09/21/0800181281/

Вы можете почитать их непосредственно в блоге.

Изменение системы комментирования в блоге

В блоге небольшие нововведения.

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

Теперь у хостера Джино, на первый взгляд, дела с ресурсами стали обстоять заметно лучше. Связано ли это с внедрением так называемых «контейнеров» в админке, а значит пересмотре самой технологии хостинга, или может новые версии php, mysql и apache теперь работают более слаженно и оптимально… в общем и целом, сайт стал выдерживать стресс-тесты, которые раньше выдержать было ему не под силу.

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

Поэтому на сайте будет использоваться хорошо зарекомендовавшая себя в прошлых моих проекта система комментирования wpDiscuz. Бесплатного функционала которой более чем хватает.

Главное достоинство этой системы в том, что она универсальна. Можно авторизоваться как по e-mail, создав локальную учётную запись в моём экземпляре WordPress, можно авторизоваться при помощи популярных социальных сетей и мессенджеров, а можно просто напросто написать своё (или любое) имя в форме комментариев, и не заморачиваться за всякие эти регистрации и персональные данные. Кроме того, разрешено анонимное комментирование. При этом все комментаторы проходят проверку reCaptcha, что гарантирует отсутствие спама.

Пользуйтесь.

Юбилейная запись

Сервис Whois подсказал, что завтра у домена mtbrv.ru юбилейная дата — 3 года со дня регистрации. В общем-то, это как был лендинг, с набором необходимой мне информации, так практически им же он и остался, хотя и разросся разделами. Во многом, собственный сайт позволяет лучше, чем это можно в социальных сетях, организовать информационное пространство, осуществлять полный контроль над пользовательскими данными. При этом, автоматизация процессов, при использовании популярных хостингов и движков сайтов, практически на уровне ведения профиля социальной сети, за некоторыми исключениями, которые, кстати, можно и исключить.

RSS feed

Кстати, друзья! На обновления этого блога можно подписаться при помощи старой доброй технологии, специально для этого предназначенной — RSS.

Вот ссылка на ленту обновлений в формате RSS. На случай, если у вас нет расширения RSS finder.

Кроме того, на эту ленту можно подписаться через очень удобный сервис чтения RSS лент (RSS агрегатор) Feegly.com. Пройдите по ссылке в посте или найдите этот блог в строке поиска на сайте.

Tag cloud:

Категории

Календарь

Октябрь 2026
Пн Вт Ср Чт Пт Сб Вс
 1234
567891011
12131415161718
19202122232425
262728293031