Инструмент для веб-разработчиков и DevOps

Чекер HTTP-заголовков безопасности

Справочник заголовков безопасности с рекомендуемыми значениями, визуальный конструктор CSP, оценка защищённости и готовый конфиг для Nginx и Apache.

10
Заголовков
Ключевые HTTP-заголовки безопасности
13
CSP-директив
Визуальный конструктор политики
2
Формата конфига
Nginx и Apache
100%
В браузере
Ничего не отправляется на сервер

Что такое HTTP-заголовки безопасности

HTTP-заголовки безопасности — это директивы, которые веб-сервер передаёт браузеру вместе с ответом. Они указывают браузеру, как обращаться с контентом страницы: откуда можно загружать скрипты, разрешено ли встраивание во фреймы, обязательно ли использовать HTTPS. Правильная настройка заголовков — первый рубеж защиты от XSS, clickjacking, MITM и других атак.

🛡

Защита от XSS

Cross-Site Scripting (XSS) — самая распространённая уязвимость веба. Заголовок Content-Security-Policy (CSP) определяет белый список источников скриптов и стилей, блокируя инъекции вредоносного кода. Это ключевой инструмент защиты, который должен быть настроен на каждом сайте.

🔒

Шифрование трафика

Заголовок HSTS (Strict-Transport-Security) заставляет браузер всегда использовать HTTPS. Без него злоумышленник может перехватить первый HTTP-запрос и подменить соединение (SSL stripping). С параметром preload браузер знает об обязательном HTTPS ещё до первого посещения.

🖼

Изоляция контента

Заголовки X-Frame-Options, COEP, COOP и CORP изолируют контент сайта от вредоносного окружения. Они предотвращают clickjacking (встраивание во фреймы), утечки данных через window.opener и Spectre-подобные атаки через SharedArrayBuffer.

Кому нужны заголовки безопасности

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

🌐

Веб-разработчики

Настройка CSP, HSTS и других заголовков — стандартная часть деплоя. Наш конструктор генерирует готовый конфиг для Nginx и Apache, который достаточно скопировать в серверный блок.

🔐

Специалисты по ИБ

Аудит HTTP-заголовков — один из первых шагов при оценке безопасности веб-приложения. Инструмент показывает все 10 ключевых заголовков с рекомендациями и оценкой по 100-балльной шкале.

⚙️

DevOps-инженеры

Автоматизация настройки заголовков через Nginx, Apache или CDN (Cloudflare, AWS CloudFront). Готовые конфиги можно встраивать в CI/CD пайплайн и шаблоны Ansible/Terraform.

📊

SEO-специалисты

Google учитывает HTTPS (HSTS) как фактор ранжирования. Яндекс также предпочитает защищённые сайты. Правильные заголовки — часть технического SEO-аудита.

🏢

Владельцы сайтов

Защита данных пользователей — юридическое требование (152-ФЗ о персональных данных). HTTP-заголовки — базовый уровень защиты, который легко внедрить и поддерживать.

📱

Разработчики PWA

Service Workers и Progressive Web Apps требуют корректных заголовков для работы кэширования, push-уведомлений и офлайн-режима. CSP должен разрешать worker-src для Service Workers.

Content-Security-Policy/ подробный разбор

CSP — самый мощный и сложный заголовок безопасности. Он определяет политику загрузки ресурсов: откуда можно загружать скрипты, стили, изображения, шрифты, фреймы и другие ресурсы. Неправильная настройка может заблокировать легитимный контент или, наоборот, оставить дыру в защите.

default-src — политика по умолчанию

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

default-src 'self';

script-src — контроль скриптов

Определяет, откуда могут загружаться JavaScript-файлы. Запрет unsafe-inline и unsafe-eval — ключевой шаг защиты от XSS. Используйте nonce или hash для инлайн-скриптов.

script-src 'self' https://cdn.example.com 'nonce-abc123';

frame-ancestors — защита от clickjacking

Современная замена X-Frame-Options. Определяет, какие домены могут встраивать вашу страницу во фрейм. Поддерживает более гибкие правила, чем XFO.

frame-ancestors 'none';

Совет: начните с Content-Security-Policy-Report-Only — он не блокирует ресурсы, а только отправляет отчёты о нарушениях. Это позволяет протестировать политику до её применения.

Nonce vs Hash: для инлайн-скриптов используйте nonce (уникальный токен на каждый запрос) или hash (SHA-256 от содержимого скрипта). Это безопаснее unsafe-inline.

Приоритеты настройки заголовков

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

🔴

Критичные (45 баллов)

CSP + HSTS

Content-Security-Policy и Strict-Transport-Security — два самых важных заголовка. CSP защищает от XSS-атак (OWASP #3), а HSTS — от перехвата трафика. Без них сайт уязвим к самым распространённым веб-атакам. Настройте их в первую очередь.

🟠

Важные (20 баллов)

X-Content-Type-Options + X-Frame-Options

X-Content-Type-Options: nosniff предотвращает MIME-sniffing атаки, а X-Frame-Options: DENY защищает от clickjacking. Оба заголовка просты в настройке — одна строка в конфиге сервера. Нет причин не включать их.

🟡

Средние (20 баллов)

X-XSS-Protection + Referrer-Policy + Permissions-Policy

X-XSS-Protection полезен для старых браузеров. Referrer-Policy контролирует утечку информации через заголовок Referer. Permissions-Policy ограничивает доступ к API устройства (камера, микрофон, геолокация) — особенно важен для сайтов со встроенными виджетами.

🔵

Дополнительные (15 баллов)

COEP + COOP + CORP

Cross-Origin заголовки (COEP, COOP, CORP) обеспечивают изоляцию между доменами на уровне процесса браузера. Они необходимы для защиты от Spectre-подобных атак и для использования SharedArrayBuffer (нужен для WebAssembly, многопоточности).

Советы по настройке

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

1Начните с Report-Only

Перед включением CSP используйте Content-Security-Policy-Report-Only. Этот заголовок не блокирует ресурсы, а только отправляет отчёты о нарушениях. Соберите отчёты за несколько дней, настройте политику и только потом включайте enforcement.

2Используйте always в Nginx

Директива always в Nginx гарантирует, что заголовок отправляется для всех HTTP-кодов, включая ошибки (404, 500). Без неё заголовки не добавляются к ответам с ошибками, что оставляет уязвимость в страницах ошибок.

3Проверяйте через DevTools

После настройки откройте Chrome DevTools (F12), вкладку Network, выберите документ и проверьте Response Headers. Убедитесь, что все заголовки присутствуют. Также проверьте вкладку Console — CSP-нарушения отображаются там.

4Учитывайте CDN

Если сайт за CDN (Cloudflare, AWS CloudFront), заголовки можно настроить на уровне CDN. Cloudflare позволяет добавлять заголовки через Transform Rules, а CloudFront — через Response Headers Policy. CDN-конфиг перекрывает серверный.

5HSTS preload — необратим

Добавление домена в HSTS preload list встраивает его во все браузеры. Удаление занимает месяцы. Убедитесь, что HTTPS полностью настроен для всех поддоменов (includeSubDomains) перед отправкой в preload list.

6Тестируйте сторонние сервисы

Google Analytics, Яндекс.Метрика, виджеты чатов, рекламные скрипты — все требуют разрешений в CSP. Составьте список сторонних сервисов и добавьте их домены в соответствующие директивы (script-src, img-src, connect-src).

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

Пошаговая инструкция для настройки заголовков безопасности вашего сайта.

1

Изучите справочник

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

2

Постройте CSP

На вкладке «CSP-конструктор» выберите директивы и допустимые источники. Добавьте домены CDN и сторонних сервисов. Скопируйте готовый заголовок.

3

Оцените безопасность

На вкладке «Оценка безопасности» отметьте заголовки, которые уже настроены на вашем сайте. Получите оценку от A+ до F и план по улучшению.

4

Скопируйте конфиг

На вкладке «Конфиг сервера» выберите Nginx или Apache и скопируйте готовую конфигурацию. Вставьте в серверный конфиг и перезагрузите.

ЧАСТЫЕ ВОПРОСЫ

Часто задаваемые вопросы

HTTP-заголовки безопасности — это директивы, которые веб-сервер отправляет браузеру вместе с ответом. Они указывают браузеру, как обращаться с контентом: откуда загружать ресурсы (CSP), использовать ли HTTPS (HSTS), можно ли встраивать страницу во фреймы (X-Frame-Options). Правильная настройка защищает от XSS, clickjacking, MITM и других атак.
Начните с двух критичных заголовков: Content-Security-Policy (защита от XSS) и Strict-Transport-Security (принудительный HTTPS). Затем добавьте X-Content-Type-Options: nosniff и X-Frame-Options: DENY — они настраиваются в одну строку. После этого переходите к Referrer-Policy и Permissions-Policy.
Content-Security-Policy (CSP) — заголовок, определяющий белый список источников для скриптов, стилей, изображений, шрифтов и других ресурсов. Если скрипт загружается с домена, не указанного в CSP, браузер его заблокирует. Это главная защита от XSS-атак, при которых злоумышленник внедряет вредоносный JavaScript-код на страницу.
Откройте Chrome DevTools (F12), перейдите на вкладку Network, обновите страницу, кликните на первый документ в списке и посмотрите Response Headers. Также можно использовать команду curl -I https://your-site.com в терминале. Наш инструмент поможет оценить, какие заголовки у вас настроены, а какие нет.
X-Frame-Options — устаревший заголовок с ограниченными возможностями (DENY, SAMEORIGIN, ALLOW-FROM один_домен). Директива frame-ancestors в CSP — его современная замена: поддерживает множество доменов, маски и более гибкие правила. Рекомендуется использовать оба для обратной совместимости со старыми браузерами.
Слишком строгий CSP заблокирует легитимные ресурсы: перестанут загружаться скрипты аналитики, стили CDN, шрифты Google Fonts, виджеты чатов. Сайт может выглядеть сломанным. Поэтому рекомендуется сначала использовать Content-Security-Policy-Report-Only для тестирования, а затем переключиться на enforcement.
HSTS preload — это добавление домена в список, встроенный во все браузеры. Браузер будет использовать HTTPS для вашего домена даже при первом посещении. Это самый надёжный способ защиты от SSL stripping. Но процесс необратим: удаление из preload list занимает месяцы. Убедитесь, что HTTPS настроен для всех поддоменов.
В Cloudflare перейдите в Rules → Transform Rules → Modify Response Header. Добавьте правила для каждого заголовка. Cloudflare автоматически настраивает HSTS (Security → SSL/TLS → Edge Certificates). CSP можно задать через Page Rules или Workers. Заголовки CDN перекрывают серверные.
Cross-Origin заголовки обеспечивают изоляцию на уровне процессов браузера. COEP требует, чтобы все ресурсы явно разрешали кросс-доменную загрузку. COOP изолирует окно от кросс-доменных документов. CORP указывает, кто может загружать ресурс. Вместе они защищают от Spectre-атак и необходимы для SharedArrayBuffer.
Прямо — минимально, но косвенно — да. Google учитывает HTTPS (и, соответственно, HSTS) как фактор ранжирования. Яндекс также предпочитает защищённые сайты. Кроме того, взломанный сайт получает пометку «Этот сайт может угрожать безопасности» в поисковой выдаче, что обрушивает CTR и трафик.
Лиана Арифметова
АВТОРverifiedред. calcal.ru

Лиана Арифметова

Создатель и главный редактор

Миссия: демократизировать сложные расчёты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».

Mathematical Engineering · МФТИ · редактирует каталог с 2012 года

Был ли этот калькулятор полезен?

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

Инструмент справочный — не заменяет эксперта

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

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

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

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

СМЕЖНЫЕ ИНСТРУМЕНТЫ

Похожие калькуляторы

15

Чекер SSL-сертификата сайта

Анализ SSL-сертификата: декодирование PEM, типы сертификатов (DV/OV/EV), чек-лист безопасности HTTPS.

/checker-ssl-sertifikata

Генератор паролей (безопасный)

Создать надежный пароль онлайн. Настройка длины, символов. Оценка сложности и энтропии.

/password-generator

Калькулятор срока действия SSL сертификата

Проверка срока действия SSL/TLS сертификата. Рассчитайте дни до истечения, узнайте статус и получите рекомендации по продлению.

/ssl-certificate-calculator

Калькулятор SSL/TLS

Расчёты SSL/TLS: шифронаборы, сертификаты, производительность, HSTS, совместимость, стоимость

/ssl-tls-calculator

Калькулятор шифрования и криптографии

Расчёты криптографии: стойкость пароля, AES, RSA/ECC, хеширование, ключи, квантовая угроза

/encryption-calculator

Генератор хешей MD5 и SHA (онлайн)

Создать хеш MD5, SHA-1, SHA-256, SHA-512 онлайн. Генератор контрольных сумм для текста и паролей.

/hash-generator

Калькулятор камер видеонаблюдения

Расчёт системы видеонаблюдения: количество камер, хранилище, стоимость монтажа.

/security-camera-calculator

JWT декодер

Декодирование и анализ JWT-токенов онлайн. Просмотр header, payload и signature с русскоязычными пояснениями. Проверка срока действия токена.

/jwt-decoder

Генератор .htaccess редиректов

Визуальный конструктор .htaccess для Apache. Создание редиректов 301/302, принудительный HTTPS, www, блокировка IP, кэширование и сжатие.

/generator-htaccess

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

Расчёты балансировки: пропускная способность, бэкенды, SSL/TLS, алгоритмы, HA, стоимость

/load-balancer-calculator

Генератор Cubic Bezier (CSS transition)

Интерактивный генератор кривых Безье для CSS анимаций. Визуальная настройка плавности переходов, пресеты (ease, linear) и копирование кода.

/cubic-bezier

Калькулятор код-ревью: время, размер PR, дефекты, нагрузка

Комплексный калькулятор код-ревью: оценка времени проверки кода, анализ размера PR (XS/S/M/L/XL), покрытие ревью и bus factor, плотность дефектов и escape rate, нагрузка команды ревьюеров, метрики качества (churn, rework, first-pass yield).

/code-review-calculator

Калькулятор теории цвета: гармония, конвертер, палитры, смешивание, дальтонизм

Комплексный инструмент для работы с цветом: цветовые гармонии (комплементарная, аналогичная, триадная, тетрадная), конвертер HEX/RGB/HSL/HSV/CMYK, генератор палитр (монохроматическая, shades, tints, tones), смешивание цветов (аддитивное/субтрактивное), симулятор дальтонизма и анализ цветовой температуры.

/color-theory-calculator

HTML Entity кодировщик/декодировщик

Конвертация спецсимволов HTML: именованные, числовые и hex-entities. Кодирование и декодирование & < > и других символов.

/html-entity-encoder

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

Генератор плавных переходов между цветами. Создайте CSS градиент онлайн, получите коды цветов (HEX/RGB) и настройте количество шагов.

/color-gradient