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

Откуда в конфигурациях берутся устаревшие алгоритмы

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

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

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

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

Современный набор для службы удалённого доступа

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

Ciphers Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.,Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.,Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
MACs Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.,Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.
KexAlgorithms curve25519-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512

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

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

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

Правка протокола TLS на веб-сервере

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

ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305;
ssl_prefer_server_ciphers on;

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

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

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

Проверка поддерживаемых алгоритмов сканером

До и после правки картина снимается сканером. Инструмент перечисления шифров для веб-адресов подключается к порту, согласует по очереди разные наборы и печатает всё, что сервер принимает:

nmap --script ssl-enum-ciphers -p 443 example.local

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

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

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

Совместимость со старыми клиентами и поэтапное отключение

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

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

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

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

Регламент и повторный аудит

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

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

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

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

Рабочая процедура замены наборов шифрования

Процедура, закрывающая замену от отчёта аудита до регламентного состояния, выглядит так:

  1. Снять карту текущих алгоритмов сканером для обеих сфер;
  2. Сверить карту с рекомендациями разработчиков и отметить кандидатов на отключение;
  3. Оценить совместимость клиентов по статистике и составить волны отключения;
  4. Применить правку для службы удалённого доступа с открытым страховочным сеансом;
  5. Применить волны для веб-сервера по одному узлу за балансировщиком;
  6. Снять контрольные карты, приложить их к протоколу и включить конфигурацию в регламент.

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

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