N1Nex1on
N1Nex1on

Безопасность и скорость

Безопасность сайта за вечер: 10 шагов, которые можно проверить самому

25.10.2026 · NexVoid

8 мин чтения

Пароли, вход в два шага, HTTPS, заголовки, адрес панели, права, копии и спам: у каждого шага три строки — что сделать, как проверить самому и что будет, если не делать. Без страшилок.

Взломы небольших сайтов чаще всего не охота лично за вами. Это боты, которые днями перебирают одни и те же слабые места: короткие пароли, старые версии, панель по стандартному адресу, открытую регистрацию. Закройте эти места, и ваш сайт перестанет быть лёгкой целью. Ниже десять шагов на один вечер. У каждого три строки: что сделать, как проверить самому (экран или команда) и что будет, если не делать.

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

Ваш пульт: «Защита сайта» #

Откройте «Система → Безопасность → Защита сайта». Это один экран, на котором видно, что в порядке, что стоит подтянуть и что плохо. Каждая строка объясняет себя и ведёт туда, где это правится. Почти каждый шаг ниже проверяется по строке на этом экране.
Экран «Защита сайта» на новом сайте: хорошие, спорные и плохие строки. HTTPS красный, потому что страница открыта на тестовом стенде без шифрования; на сайте с сертификатом он будет зелёным
Экран «Защита сайта» на новом сайте: хорошие, спорные и плохие строки. HTTPS красный, потому что страница открыта на тестовом стенде без шифрования; на сайте с сертификатом он будет зелёным

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

Шаг 1. Обновления #

Что сделать. Откройте «Система → Обновления» (страница видна тем, у кого есть право на настройки сайта: владельцу и администратору) и обновитесь, если есть новая версия. Перед обновлением сделайте копию базы (шаг 8): движок делает её сам, но ручная копия ничего не стоит. Как проверить. На той же странице видно, какая версия стоит и есть ли новая. Раз в неделю смотрите туда же, где вы проверяете заказы или почту. Если не делать. Дыры, которые уже закрыты в новой версии, остаются у вас, и о них известно всем: исправление выходит вместе с описанием ошибки.

Шаг 2. Пароль и подбор пароля #

Что сделать. В «Настройки сайта → Вход и пользователи → Регистрация и пользователи» поставьте «Наименьшая длина пароля» от 10 знаков (это значение по умолчанию). Длина сама по себе не спасает, но очевидные пароли движок отвергает отдельно. Затем в «Безопасность → Вход и сеансы» убедитесь, что «Попыток входа» не больше десяти. По умолчанию это пять неудач, после чего вход в эту учётную запись закрыт на 15 минут (срок меняется в поле «Запирать на, минут»), и бот упирается в лимит. Как проверить. На экране «Защита сайта» строки «Длина пароля» и «Блокировка после неудачных входов» должны быть «Хорошо». Если не делать. Короткие пароли и безлимитные попытки делают перебор вопросом времени. Это самый простой способ взлома, и он закрывается двумя числами.

Шаг 3. Вход в два шага #

Что сделать. В своём профиле включите второй шаг («Включить второй шаг»): код из приложения на телефоне подтверждает вход. Сохраните «Резервные коды»: каждый работает один раз и нужен, если телефон потерян. Потом попросите то же у каждого администратора. Когда все привыкнут, в «Настройки сайта → Вход и пользователи → Безопасность → Вход в панель» переключите «Двухфакторная защита» с «Рекомендовать» на «Требовать от администраторов». Это вас не запрёт: движок отправит каждого, у кого второго шага ещё нет, в профиль, чтобы включить его, а профиль доступен всегда. Так что включать не страшно. Как проверить. Строка «Два шага при входе у администраторов» на экране «Защита сайта»; в списке «Пользователи» есть фильтр «Вход в два шага», он показывает, у кого ещё выключено. Если не делать. Пароль могут украсть не у вас, а у чужого сервиса, где вы использовали тот же. Тогда без второго шага вход в панель открыт.

Шаг 4. Шифрованное соединение (HTTPS) #

Что сделать. Убедитесь, что у сайта есть сертификат и он открывается по https://. Только после этого в «Настройки сайта → Вход и пользователи → Безопасность → Соединение» включите «Только защищённое соединение (https)». Без сертификата это включать нельзя: перенаправление уведёт посетителей в никуда. Как проверить. Откройте сайт по адресу с http://: браузер должен перейти на https://. То же в командной строке:
Bash
curl -I http://example.com
В ответе ждите код 301 или 302 и строку Location: https://example.com/. Строка «Шифрованное соединение (HTTPS)» на экране «Защита сайта» должна быть «Хорошо». Если не делать. Пароли и сеансы ходят открытым текстом: в чужой публичной сети их может прочитать посторонний.

Шаг 5. Заголовки безопасности #

Что сделать. Почти ничего: движок отправляет их сам. Ваша задача убедиться, что их не срезает прокси или хостинг перед сайтом. Как проверить.
Bash
curl -I https://example.com
В ответе должны быть строки:
  • X-Content-Type-Options: nosniff: браузер не гадает тип файла;
  • X-Frame-Options: SAMEORIGIN (на отдельных страницах DENY) и в Content-Security-Policy часть frame-ancestors 'self': чужой сайт не вставит вашу страницу в рамку;
  • Referrer-Policy: strict-origin-when-cross-origin: наружу не уходят лишние части адреса;
  • Permissions-Policy: камера, микрофон и геолокация выключены, пока они не нужны;
  • Strict-Transport-Security: max-age=31536000 по https: браузер сам запомнит ходить только по защищённому соединению.
Оценку удобно посмотреть и на публичной проверке Mozilla Observatory (developer.mozilla.org/en-US/observatory). Не гонитесь за наивысшей оценкой: она не видит ни устаревшего ПО, ни слабых паролей, и не заменяет проверку. Если не делать. Ничего не сломается сразу: эти заголовки лишь подсказывают браузеру, что запретить. Но чем их больше, тем меньше ошибок в других местах превратятся в проблему.

Шаг 6. Адрес панели и доступ по адресам #

Что сделать. В «Настройки сайта → Вход и пользователи → Безопасность → Вход в панель» впишите «Свой адрес панели» (латиница, цифры, дефис), придумайте свой, не копируйте пример с картинки ниже. Запишите его где-нибудь рядом с паролем. Поле «Пускать в панель только с этих адресов» нужно только тем, у кого есть постоянный адрес (например, офис со своим адресом): с чужих адресов панель ответит «страницы нет». Домашний и мобильный адрес обычно меняется, и тогда вы сами окажетесь за дверью: список без вашего текущего адреса сохранить нельзя, но завтра адрес может стать другим. Снять ограничение без панели можно только командой php nex1on admin:access на сервере. Без доступа к консоли сервера и без постоянного адреса это поле лучше не включать.
Настройки «Безопасность → Вход в панель»: свой адрес панели, список адресов и двухфакторная защита
Настройки «Безопасность → Вход в панель»: свой адрес панели, список адресов и двухфакторная защита

Как проверить. Откройте новый адрес: должен открыться вход. Старый /admin должен отвечать «страницы нет» (404). Строки «Адрес панели управления» и «Доступ в панель по адресам» на экране «Защита сайта» это отразят.
Если не делать. Ничего страшного не произойдёт, но боты находят панель по стандартному адресу первой, и шум в журнале растёт. Свой адрес не заменяет пароль и вход в два шага, он лишь убирает вас из списка лёгких целей.

Шаг 7. Кто что может и кто регистрируется #

Что сделать. Откройте «Пользователи и доступ → Пользователи» и посмотрите, кому какая роль выдана. Администратором должен быть тот, кому это нужно каждый день; редактору хватит роли редактора. Если регистрация посетителей вам не нужна, выключите «Разрешить регистрацию» в «Настройки сайта → Вход и пользователи → Регистрация и пользователи»; если нужна, оставьте включённым «Требовать подтверждение почты». Как проверить. Список «Пользователи» и роль каждого; строка «Регистрация посетителей» на экране «Защита сайта». Если не делать. Лишние права превращают чужую ошибку или украденный пароль в большую проблему. Открытая регистрация без проверки почты позволяет создавать учётки с чужими адресами.

Шаг 8. Копии: база и вне сайта #

Что сделать. Сделайте копию базы в «Система → Копии и перенос → Копии базы» и поставьте автоматическую. Настройте «Копии в другом месте» (шифрованная копия за пределами сервера): если пропадёт хостинг, пропадёт и копия рядом с сайтом. Подробно о копиях и переезде: «Копии и перенос сайта на Nex1on». Папку загруженных файлов копируют отдельно (по FTP): в копию базы она не входит. Как проверить. В списке «Готовые копии» должна быть свежая. Для копии на сторону нажмите «Проверить связь», а когда придёт первая копия, откройте её у себя и поставьте отметку «Я открыл копию у себя, ключ рабочий». Если не делать. Это единственный шаг, ошибку в котором нельзя исправить потом: потерянные записи и заказы не вернуть ничем.

Шаг 9. Спам и ключи API #

Что сделать. В «Безопасность → Сторож от спама» оставьте строгий режим (по умолчанию). В «Интеграции → Ключи доступа (API)» отзовите ключи, которыми не пользуются: нужный ключ можно выпустить заново, а забытый остаётся дверью. Как проверить. Строки «Сторож от спама» и «Ключи API» на экране «Защита сайта»: второй напомнит про ключи, которыми не пользовались больше 90 дней. Если не делать. Формы заполнит спам, а забытый ключ может годами оставаться доступом, о котором все забыли.

Шаг 10. Две минуты раз в неделю #

Что сделать. Раз в неделю откройте «Защита сайта» и «Безопасность → События безопасности». Это две минуты: не нужно читать журнал, достаточно увидеть, что строки зелёные и неудачных входов не стало заметно больше. Как проверить. Строка «Неудачные входы за сутки»: «Хорошо», пока их меньше тридцати. Много входов с одного адреса можно заблокировать в «Безопасность → Блокировка адресов». Если не делать. Вы узнаете о проблеме от посетителей, а не от сайта.

Чего этот список не делает #

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

← К ленте новостей

Поделиться: Telegram WhatsApp

Читайте также

Обсуждение

Комментарии

Обсуждение ещё не началось

Пока никто не высказался. Будьте первым.

Пожаловаться на запись