Перейти к содержимому

Мы в соцсетях:

Связаться с нами:

Александр Бакин
Меню
  • Главная
  • Статьи
    • Инфобизнес с нуля
    • Сайтостроение
    • Доход с партнёрок
    • Заработок
    • Автоворонки
    • E-mail маркетинг
    • Способы заработка
    • Сделать курс
    • Трафик
    • Полезные статьи
  • Курсы
    • Бесплатные курсы
    • Платные курсы
  • Мои проекты
  • Сопровождение
  • О сайте
    • Карта сайта
    • Об авторе
  • Контакты
  1. Главная
  2. ›
  3. Сайтостроение
  4. ›
  5. Безопасность сайта: как защитить проект от взлома и потери данных

Безопасность сайта: как защитить проект от взлома и потери данных

08.11.20261 комментарий20 просмотров
Иллюстрация к статье: Безопасность сайта: как защитить проект от взлома и потери данных

Я хорошо помню свою первую панику, связанную с сайтом. Открываю утром админку, а там вместо привычного списка страниц — белая стена и незнакомые ссылки. Сайт ещё открывался, но вёл себя странно: часть страниц отдавала ошибку, форма заявки перестала приходить на почту, а в логах творилось что-то непонятное. И самое неприятное — я тогда вообще не понимал, с чего начать и кому звонить.

Тот случай закончился относительно спокойно, но научил меня главному: безопасность сайта — это не одна большая настройка, которую делают один раз и забывают. Это набор маленьких привычек, которые либо есть у вас, либо их нет. И проверяются они не тогда, когда всё хорошо, а тогда, когда всё уже сломалось.

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

В этой статье я хочу пройти по всему пути спокойно и по-человечески. Без страшных слов про эксплойты и без требования срочно нанять отдельного человека, который будет следить за сервером круглосуточно. Большую часть того, о чём пойдёт речь, владелец небольшого проекта закрывает сам, за один вечер, и потом только иногда возвращается к этому.

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

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

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

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

Почему безопасность сайта — это не только про хакеров

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

Поэтому самое частое «нападение» выглядит скучно. Кто-то подобрал простой пароль к админке. Кто-то нашёл забытую тестовую страницу с открытым доступом. Кто-то загрузил файл через старую форму, которую вы не обновляли два года и вообще забыли, что она есть. Никакой драмы, просто небрежность, на которую наткнулся робот.

И ещё один момент, который я понял не сразу. Огромная часть проблем с сайтом вообще не связана с атаками. Люди сами удаляют нужные файлы, сами ставят кривой плагин, сами забывают продлить домен, сами теряют доступ к почте, к которой привязана админка. Всё это ломает проект точно так же, как взлом, только обиднее.

Что на самом деле теряют владельцы сайтов

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

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

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

Четвёртое и самое неприятное — данные людей, которые вам доверились. Почта подписчиков, заявки, комментарии, переписка. Это не абстракция, это чужие контакты, которые человек оставил вам, потому что верил, что вы распорядитесь ими аккуратно.

Плюс почти всегда есть скрытая цена: письма от клиентов, которые не дошли, оплаты, которые не прошли, партнёры, которые не дождались ответа. О таких потерях никто не узнаёт, и именно поэтому их никогда не считают.

Ещё одна потеря, которую замечают не сразу, — это репутация в глазах поисковиков и партнёров. Если сайт однажды попал в рассылку посторонних ссылок, доверие к домену восстанавливается месяцами, и никаких быстрых кнопок для этого нет.

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

Кому вообще нужна защита, а кому можно спать спокойно

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

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

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

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

Отдельно скажу про проекты, которые делались «на один раз» и живут годами без присмотра. Именно они чаще всего и попадают в неприятности, потому что там одновременно и старые версии, и слабые пароли, и полное отсутствие копий. Возраст сайта сам по себе не защита, а иногда наоборот.

Первый рубеж: пароли, доступы и учётные записи

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

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

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

Пароли, которые не подводят

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

Второе правило: длина важнее хитрости. Длинная фраза из нескольких слов запоминается легче, чем набор символов, и при этом подбирается несопоставимо дольше. Мне нравится собирать пароль из случайных слов, которые между собой никак не связаны.

Третье: не храните пароли в заметках на рабочем столе и в переписке с самим собой. Для этого есть менеджеры паролей, и это одно из тех решений, где польза видна с первого дня. Вы просто перестаёте помнить десятки комбинаций и начинаете жить спокойнее.

Четвёртое: меняйте пароль админки после каждого подрядчика. Звучит банально, но именно здесь чаще всего остаётся «временный» доступ, о котором владелец забыл, а исполнитель помнит. Иногда помнит даже спустя годы, когда уже работает в другом месте.

И пятое, что часто упускают: пароль от самого хостинга и от панели управления доменом важнее пароля от сайта. Потому что через них можно забрать всё сразу, а восстанавливать доступ к домену иногда приходится днями и с документами.

Кто имеет доступ к админке и почему это важно

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

Правило простое: у каждого человека должен быть свой аккаунт, а не общий «admin» на всех. Так вы всегда понимаете, кто что сделал, и можете спокойно отключить одного человека, не меняя пароль всем остальным.

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

И обязательно заведите привычку убирать доступ сразу после завершения работ. Не «потом соберусь», а в тот же день, пока вы ещё помните, что этот человек у вас был. Через месяц вы уже не вспомните ни имя, ни почту.

Отдельная история — аккаунты, привязанные к старой почте, к которой у вас нет доступа. Если такой ящик существует, считайте, что вход в сайт наполовину открыт. Проверьте это один раз и закройте вопрос навсегда.

Заодно проверьте, не привязана ли к админке ваша личная почта, которую вы используете везде. Иногда проще завести отдельный ящик только для сайта и не смешивать его с перепиской по бытовым делам.

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

Двухфакторная аутентификация без лишней сложности

Двухфакторка звучит страшнее, чем есть на самом деле. На практике это просто вторая ступень: кроме пароля система просит код из приложения или с телефона. Даже если пароль утечёт, без кода войти не получится.

Я советую включать её в первую очередь на почте, к которой привязан сайт, и на самом хостинге. Именно эти две точки дают возможность восстановить всё остальное. Если они защищены, у вас почти всегда есть путь назад.

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

Один практический совет: сохраните резервные коды восстановления в место, к которому у вас есть доступ без телефона. Телефон теряется, ломается и остаётся в кармане куртки, которая уже в химчистке. Коды в этом случае спасают.

И не пугайтесь неудобства. После первой недели вы просто привыкаете вводить шесть цифр, и это перестаёт занимать хоть какое-то место в голове.

Резервные копии: спасение, которое всегда под рукой

Если из всей статьи вы сделаете только один пункт, пусть это будут копии. Я говорю это без преувеличения: почти любая проблема с сайтом решается за час, если у вас есть свежая рабочая копия. И почти любая превращается в многодневный квест, если её нет.

При этом копии — самая скучная тема на свете. Их никто не хочет настраивать, потому что результат не виден. Пока всё хорошо, бэкап выглядит как бесполезная трата места на диске, и именно поэтому его откладывают до лучших времён.

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

Что именно нужно копировать

У любого сайта есть две большие части: файлы и база данных. Файлы — это движок, темы, картинки, загруженные документы. База — это статьи, страницы, настройки, пользователи, комментарии. Копировать нужно и то, и другое, желательно одновременно.

Если копировать только файлы, вы восстановите пустой сайт без содержания. Если только базу, останетесь без картинок и оформления. Поэтому нормальная копия — это всегда пара: архив файлов плюс дамп базы, сделанные в один момент времени.

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

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

Отдельно подумайте про конфигурационные файлы и настройки сервера. Их полезно хранить отдельно, текстом, чтобы в случае переезда не собирать всё заново по памяти.

Куда складывать бэкапы, чтобы они не пропали вместе с сайтом

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

Минимум — складывать архивы в отдельное облачное хранилище. Ещё лучше, если копии автоматически уходят туда по расписанию, а не тогда, когда вы вспомнили про них вручную.

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

И обязательно проверьте доступ к облаку отдельно. Бывает, что аккаунт, куда льются копии, привязан к той же почте, что и сайт, и при потере почты вы теряете всё сразу.

Не забудьте про срок хранения. Копия месячной давности может быть уже бесполезной, если проблема появилась две недели назад и всё это время тихо жила на сайте. Держите хотя бы несколько последних дней плюс одну версию за месяц.

Как проверить, что копия действительно рабочая

Копия, которую никогда не проверяли, — это не копия, а надежда. Архив может быть обрезан, база может не открываться, файлы могут быть без части содержимого. И вы узнаете об этом в самый неподходящий момент.

Самый простой способ — раз в пару месяцев развернуть копию на тестовом поддомене и открыть её. Если сайт открылся, страницы на месте, картинки видны, форма работает, значит архив живой.

Проверять лучше не в день аварии. Это как с запасным колесом: им пользуются спокойно, когда заранее знают, что оно есть и на нём есть воздух.

Заодно при такой проверке вы увидите, сколько времени занимает восстановление. Иногда выясняется, что процесс идёт часами, и это важно знать заранее, а не в момент стресса.

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

Ещё я советую хранить одну совсем старую копию, например полугодовой давности. Она почти никогда не нужна, но если сайт чистили от чего-то давно и постепенно, только она покажет, как всё выглядело изначально.

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

Обновления: скучная привычка, которая спасает проект

Все крупные неприятности с сайтами, которые я видел у знакомых, так или иначе связаны с устаревшим кодом. Не потому что старый код плохой сам по себе, а потому что дыры в нём уже известны и описаны, а заплатки вы не поставили.

Обновления — это не про новые красивые кнопки. В первую очередь это про исправления безопасности, которые выходят тихо и незаметно, без красивых анонсов. Именно они и закрывают то, чем пользуются автоматические сканеры.

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

Что обновлять в первую очередь

Порядок у меня такой: сначала движок, потом расширения, потом тема, потом всё остальное. Движок важнее, потому что через него проходит всё, и именно в нём чаще находят серьёзные уязвимости.

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

Расширения, которые давно не обновлялись автором, — отдельная категория риска. Если у плагина последнее обновление было пару лет назад, а он ещё и работает с базой данных, я бы искал замену.

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

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

Как обновляться и не сломать сайт

Золотое правило: перед обновлением — копия. Всегда. Даже если обновление кажется крошечным и вы делаете его в десятый раз. Это занимает минуту и снимает половину рисков.

Дальше — по одному шагу. Обновили движок, проверили основные страницы, посмотрели, работает ли форма. Только потом берётесь за расширения, и тоже не все сразу, а по очереди.

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

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

И не откладывайте обновления «на потом» бесконечно. Чем дольше вы пропускаете шаги, тем больше изменений накопится и тем выше шанс, что очередное обновление пройдёт болезненно.

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

И не бойтесь откатываться. Если после обновления что-то повело себя странно, вернуть копию и подождать следующей версии — это нормальное решение, а не признание поражения.

Хостинг и сервер: на чём стоит ваш сайт

Многие воспринимают хостинг как что-то вроде розетки: включил и забыл. На самом деле это фундамент, и от него зависит очень многое, включая то, как быстро вы восстановитесь после любой проблемы.

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

При этом не стоит думать, что за деньги всё решается само. Даже на дорогом тарифе можно годами жить с устаревшей версией и открытыми настройками, если самому не обращать на это внимания.

Признаки, что хостинг пора менять

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

Второй — отсутствие ежедневных копий или их платность как отдельная дорогая опция. Если за восстановление просят как за новый сайт, это повод посмотреть в сторону.

Третий — старые версии окружения без возможности обновиться. Если вам говорят, что новее нельзя, потому что «так настроено на сервере», это плохой знак.

Четвёртый — постоянные внезапные ограничения: то ресурсы закончились, то сайт отключили без предупреждения. Такие истории обычно заканчиваются в самый неподходящий момент.

Пятый — отсутствие защиты от базовых вещей: спама в формах, перебора паролей, простых атак. Даже минимальный уровень фильтрации экономит много времени.

Что можно настроить самому без админа

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

Можно ограничить попытки входа: после нескольких неудачных попыток временно блокировать адрес. Это одна из самых простых и самых эффективных мер против перебора паролей.

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

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

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

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

И проверьте, что на сервере не осталось демонстрационных страниц и установочных скриптов. Они выглядят безобидно, но именно с них начинают те, кто просто перебирает адреса подряд.

Плагины и сторонний код: меньше — значит безопаснее

Мне нравится принцип, который я вывел для себя давно: каждый установленный плагин — это дополнительная дверь в доме. Иногда нужная, иногда удобная, но всегда дверь, за которой надо следить.

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

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

Как проверять плагины перед установкой

Первое, на что я смотрю, — когда было последнее обновление. Если расширение не обновлялось больше года, а движок за это время ушёл вперёд, совместимость под вопросом.

Второе — сколько людей им пользуется и как реагирует автор на вопросы. Активное сообщество не гарантия качества, но отсутствие поддержки — почти всегда плохой знак.

Третье — что именно расширение просит. Если простому блоку для кнопок нужен доступ ко всей базе и файловой системе, это странно и повод задуматься.

Четвёртое — откуда скачано. Официальный каталог, сайт автора, магазин с проверкой кода — нормально. Сборки «всё в одном» с торрентов и файлопомоек — лотерея с плохими шансами.

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

Что делать с тем, чем вы не пользуетесь

Раз в несколько месяцев я прохожусь по списку расширений и честно спрашиваю себя: это вообще работает? Половина ответов — «не помню, ставил когда-то». Такие вещи я удаляю без сожалений.

Удаление — не только про безопасность. Сайт начинает работать быстрее, в админке становится меньше путаницы, а обновления проходят спокойнее, потому что меньше поводов для конфликтов.

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

Отдельно разберитесь с расширениями, которые стоят «на всякий случай, вдруг пригодится». Как правило, не пригодится, а обновлять их всё равно придётся вам.

И не забудьте про старые темы. Неиспользуемые темы, особенно скачанные из непонятных источников, лучше удалять сразу, а не хранить как память о прошлых экспериментах.

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

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

Формы, комментарии и другой вход для незваных гостей

Всё, куда посетитель может что-то вписать, — это точка контакта и одновременно потенциальная точка входа. Форма заявки, комментарии, подписка, обратная связь, поиск по сайту. Каждое такое место требует внимания.

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

Хорошая новость: базовые меры здесь простые и почти не мешают живым людям. Главное — не оставлять формы совсем без контроля и не считать, что «у меня маленький сайт, кому я нужен».

Спам и боты: как отсечь лишнее

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

Дальше — ограничение частоты. Если с одного адреса за минуту приходит двадцать заявок, это не человек. Такие вещи настраиваются и в самом расширении форм, и на стороне сервера.

Комментарии я советую держать на модерации до первого одобрения. Это не про недоверие к читателям, а про то, что ссылки в первом сообщении — любимый приём спамеров.

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

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

Что делать с подозрительными письмами и заявками

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

Второе: проверять адрес отправителя, а не только имя. Подделать название легко, домен — сложнее. Если письмо пришло с чужого домена, а подписано вашим сервисом, это повод насторожиться.

Третье: заявки с странным содержимым — это не повод паниковать, но повод посмотреть логи. Иногда за одной такой заявкой стоит целая серия попыток, которые просто не дошли до вас.

Четвёртое: не отвечайте на подозрительные письма и не подтверждайте ничего по телефону, если звонящий сам называет ваш номер и просит код. Коды не сообщают никому, даже вежливым людям с официальным тоном.

Пятое: держите отдельную почту для технических уведомлений. Так вы не пропустите важное среди обычной переписки и быстрее заметите что-то необычное.

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

И держите на видном месте адрес, по которому можно написать, если сайт вдруг перестал открываться. Мелочь, но в момент паники она экономит нервы и время.

Если сайт всё-таки взломали: план действий

Рано или поздно у многих случается ситуация, когда что-то пошло не так. Это не приговор вашему профессионализму, это просто статистика интернета. Гораздо важнее то, что вы делаете в первые часы.

Главная ошибка в такой момент — суетиться. Люди начинают удалять файлы, менять пароли в случайном порядке, ставить новые плагины и тем самым затаптывают следы и усложняют восстановление.

Правильная последовательность простая: остановиться, зафиксировать состояние, закрыть вход, восстановить из копии, разобраться в причине. Именно в таком порядке, а не наоборот.

Первые шаги, которые нельзя откладывать

Сначала смените пароли: от админки, от хостинга, от почты, к которой всё привязано. Это делается в первую очередь и в другом порядке, чем обычно, — начиная с почты.

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

Сохраните копию текущего состояния: файлы и базу. Да, они могут быть заражены, но это улики, по которым потом можно понять, что произошло и не вернётся ли это снова.

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

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

Как восстановиться и не наступить на грабли снова

Восстановление лучше делать из копии, сделанной до инцидента. Не пытайтесь вычистить заражённые файлы вручную, если не понимаете, что именно ищете: часто остаётся маленький след, через который всё возвращается.

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

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

Затем посмотрите на поисковую выдачу и предупреждения от поисковиков. Иногда нужно отдельно попросить пересмотреть сайт, чтобы снять пометку о небезопасности.

И обязательно напишите себе короткие заметки: что случилось, что помогло, сколько времени заняло. Через год эта записка сэкономит вам часы, если ситуация повторится в похожем виде.

И не пытайтесь восстановить всё в одиночку, если чувствуете, что не хватает знаний. Один разговор с человеком, который видел такие ситуации десятки раз, часто заменяет день чтения форумов и сомнительных советов.

После восстановления смените все пароли ещё раз, уже спокойно и осознанно. Первая смена часто делается в спешке, и в ней остаются следы старого порядка.

Привычки, которые держат сайт в безопасности

Всё, о чём мы говорили, работает только если превращается в привычку. Разовая настройка живёт недолго: через полгода появляются новые расширения, новые люди с доступами и новые версии, которые никто не поставил.

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

Поэтому финальный раздел — про ритм. Про то, как встроить заботу о сайте в обычную жизнь так, чтобы она не превратилась в отдельную работу, на которую нет времени.

Простой ежемесячный чек-лист

Раз в месяц я прохожу по короткому списку, и это занимает меньше получаса. Первый пункт — обновления. Проверить, что всё актуально, и поставить то, что накопилось, начиная с копии.

Второй пункт — копии. Убедиться, что они создаются, что они уходят в отдельное место и что последняя версия открывается. Это самая важная часть списка.

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

Четвёртый — расширения. Удалить то, что не используется, и проверить, что у оставшихся есть свежие версии и живой автор.

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

Как не превратить защиту в паранойю

Есть и обратная крайность: человек так боится всего, что перестаёт работать. Проверяет логи по три раза в день, ставит десять плагинов защиты, которые конфликтуют между собой, и живёт в постоянном напряжении.

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

Мой подход — достаточность. Мне нужно, чтобы базовые вещи были закрыты, копии были свежими, а доступы — понятными. Всё остальное я добавляю только тогда, когда появляется конкретная причина.

И ещё один важный момент: не надо делать всё сразу в один день. Начните с копий и паролей, через неделю добавьте обновления, через месяц разберите расширения. Так вы дойдёте до конца, а не бросите на середине.

Спокойствие — тоже часть безопасности. Когда вы понимаете, что у вас есть план и копия, любая новость про очередную уязвимость перестаёт вызывать панику и превращается просто в задачу на вечер.

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

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

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

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

Именно в этом и смысл: безопасность сайта — это не про то, насколько вы умны, а про то, насколько вы последовательны. Последовательность выигрывает у любой разовой настройки, какой бы дорогой она ни была.

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

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

Сайт — это ваш актив, и он заслуживает такого же внимания, как и всё остальное, что приносит вам результат. Не потому что кругом враги, а потому что аккуратность дешевле восстановления, и это, пожалуй, единственное, что здесь нужно запомнить.

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

‹ ПредыдущаяПодрядчики для онлайн-проекта: как найти своих и не переделывать работу за ними

Комментарии (1)

1 comment

  1. Сергей Морозов:
    08.11.2026 в 09:43

    Согласен, что копии важнее любых хитрых настроек, но у меня они дважды спасли только после того, как я проверил восстановление вручную. Один раз бэкап оказался пустым: скрипт отрабатывал, а архив весил пару килобайт. Теперь раз в месяц разворачиваю копию на тестовом поддомене и смотрю, что сайт реально поднимается.

    Ответить

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Разделы сайта

  • E-mail маркетинг 66
  • Автоворонки 67
  • Доход с партнёрок 76
  • Заработок 73
  • Инфобизнес с нуля 90
  • Полезные статьи 68
  • Про видео 49
  • Разное 50
  • Сайтостроение 115
  • Сделать курс 55
  • Соцсети 55
  • Способы заработка 65
  • Трафик 55

Александр Бакин 2026 © Все права защищены
ОГРНИП 324710000038159
Использование материалов сайта без письменного разрешения владельца — категорически запрещено

Служба поддержки| Политика конфиденциальности | Возврат денег
Снятие ответственности | Договор-оферта
Согласие на рассылку | Использование файлов куки | Дисклеймер