calcal.ru
Инструмент для веб-разработчиков и 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 и трафик.
Лиана Арифметова
Создатель

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

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

⚖️

Отказ от ответственности

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

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

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

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

Похожие инструменты

🏥

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

Определите возможную группу крови и резус-фактор ребёнка по группе крови и резус-фактору родителей. Генетический калькулятор наследования по системе ABO и Rh.

🏥

Расчёт объёма трансфузии

Расчёт объёма переливания эритроцитарной массы, тромбоконцентрата, СЗП. Оценка кровопотери и допустимого объёма.

🌿

Калькулятор переработки отходов: вес, деньги, эко-след

Посчитайте вес отходов, потенциальный доход от сдачи вторсырья и ваш вклад в экологию (CO2, деревья).

🏠

Калькулятор расчёта стипендии

Расчёт стипендии: повышенная, социальная, именная. Условия получения и размеры.

🏥

Рост и вес ребёнка по перцентилям ВОЗ

Оценка физического развития ребёнка по стандартам ВОЗ. Перцентили роста, веса, ИМТ и окружности головы от 0 до 19 лет.

🌿

Калькулятор экологии

Рост популяции, индексы Шеннона и Симпсона, модель Лотки-Вольтерра, экологический след, метод повторного отлова, таблицы выживаемости.

🌿

Калькулятор петрологии

Классификация горных пород по TAS и AFM, нормативный состав CIPW, магнезиальность Mg#, геотермический градиент, литостатическое давление.

🧮

Калькулятор CrossFit: WOD, 1RM, пульсовые зоны, питание

Калькулятор для кроссфита. Оценка benchmark WOD, 1RM, пульсовые зоны, объём нагрузки и питание по Zone Diet.

🏗️

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

Расчёт количества саморезов для гипсокартона, профнастила, OSB, доски. Шаг крепления, размер, количество упаковок.

🏠

Калькулятор теплицы

Расчёт теплицы: размеры, материалы каркаса, покрытие, фундамент. Стоимость поликарбоната, профиля, крепежа.

Калькулятор магнитного поля

Магнитная индукция прямого провода, соленоида и сила Лоренца. Результат в Тл, мТл, мкТл.

⚙️

Калькулятор метрической резьбы

Расчёт параметров метрической резьбы ISO: диаметры, шаг, сверло. M3-M64, крупный и мелкий шаг.

💰

Калькулятор субсидии на ЖКХ

Расчёт субсидии на оплату ЖКХ: право на субсидию, размер по доходу.

💻

Калькулятор сложности алгоритмов

Расчёты сложности: Big O, сортировка, поиск, графы, рекуррентность, практическая оценка

💻

Regex-тестер с русской документацией

Онлайн тестирование регулярных выражений с подсветкой совпадений, захватом групп и русскоязычной документацией. Шпаргалка по синтаксису regex.