Iis включение шифрования


Содержание

Iis включение шифрования

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

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

Веб-сервер IIS предоставляет SSL как встроенную, готовую к использованию службу. Поскольку SSL работает под HTTP, его применение не изменяет способа работы с HTTP-запросами. Все шифрование и дешифрацию берут на себя функциональные средства SSL программного обеспечения веб-сервера (в данном случае — IIS). Единственное отличие состоит в том, что адрес, защищенный SSL, начинается с https://, а не http://. Трафик SSL также проходит через другой порт (обычно веб-серверы используют порт 443 для SSL-запросов и порт 80 — для обычных запросов).

Чтобы сервер поддерживал SSL-соединения, он должен иметь установленный сертификат X.509 (название X.509 было выбрано для соответствия стандарту каталогов X.500). Чтобы реализовать SSL, понадобится приобрести сертификат, установить его и соответствующим образом сконфигурировать IIS. Все эти шаги подробно описаны в последующих разделах.

Понятие сертификатов

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

Организация приобретает сертификат у известного центра сертификации (Certificate Authority — CA) и устанавливает его на своем веб-сервере. Клиент доверяет CA и потому готов доверять информации сертификата, подписанного CA. Эта модель работает достаточно хорошо, т.к. маловероятно, чтобы злоумышленник решился на дополнительные расходы по приобретению и установке фальсифицированного сертификата. Центр сертификации также сохраняет информацию о каждом зарегистрированном пользователе. Однако наличие сертификата никоим образом не гарантирует надежность сервера, безопасность приложения или легитимность бизнеса. В этом смысле область действия сертификатов фундаментально ограничена.

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

имя, название организации и адрес держателя;

открытый ключ держателя, который будет использоваться для реализации ключа SSL-сеансов для шифрования коммуникаций;

даты проверки сертификата;

серийный номер сертификата.

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

Если функция проверки идентичности CA не нужна (например, если сертификаты используются только в корпоративной сети), можете создать и пользоваться собственными сертификатами, настроив всех клиентов на доверие к ним. Для этого потребуется служба Active Directory и сервер Certificate Server (которые встроены в серверную операционную систему Windows). За более подробной информацией обращайтесь к специальным книгам по администрированию сетей Windows.

Что собой представляет SSL

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

Этот процесс называется , и он является базовым строительным блоком SSL. Важный принцип асимметричного шифрования состоит в том, что реконструировать секретный ключ, анализируя соответствующий ему открытый ключ, невозможно. Сделать это было бы чрезвычайно дорого в плане вычислительных ресурсов (даже сложнее, чем взломать одно из зашифрованных сообщений). Однако асимметричное шифрование также имеет свои ограничения, а именно — оно намного медленнее и генерирует большие по объему сообщения, чем симметричное шифрование.

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

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

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

Клиент отправляет запрос на соединение с сервером.

Сервер подписывает свой сертификат и отправляет его клиенту. Это завершает фазу квитирования («рукопожатия») при обмене.

Клиент проверяет, издан ли сертификат CA, которому он доверяет. Если это так, он переходит к следующему шагу. В сценарии с веб-браузером клиент может предупредить пользователя сообщением о том, что он не распознал CA, и предложить пользователю принять решение о продолжении. Клиент распознает CA, когда его сертификат помещается в хранилище доверенных корневых центров сертификации (Trusted Root Certification Authorities) операционной системы. Сертификаты, находящиеся в этом хранилище, можно просмотреть в Google Chrome щелкнув на кнопке Настройки Показать дополнительные настройки HTTPS/SSL Управление сертификатами Доверенные сертификаты:

Клиент сравнивает информацию в сертификате с информацией, присланной сайтом (включая доменное имя и его открытый ключ). Клиент также проверяет, допустим ли сертификат стороны сервера, не был ли он отменен и издан ли он заслуживающим доверия CA. Затем клиент принимает соединение.

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

Сервер выбирает наибольшую подходящую длину ключа и информирует клиента.

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

Клиент шифрует ключ сеанса, используя открытый ключ сервера (из сертификата), и затем отправляет серверу зашифрованный ключ сеанса.

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

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

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

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

Конфигурирование SSL на IIS 8

Прежде всего, понадобится издать сертификат для веб-сервера. Для этого раскройте корневой узел веб-сервера в навигационном дереве консоли управления и выберите средство Server Certificates (Сертификаты сервера), как показано на рисунке ниже:

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

В детальном представлении средства Server Certificates панель задач в правой части консоли управления содержит необходимую задачу для установки серверных сертификатов. Она позволяет автоматически создать запрос сертификата, который можно применить для запроса нового сертификата у CA. Для создания нового запроса просто используется ссылка на задачу Create Certificate Request (Создать запрос сертификата) в панели задач, что позволит создать тот же закодированный в Base64 файл запроса для отправки его в запросе к CA.

После получения сертификата от CA можно завершить выполняющийся запрос, щелкнув на ссылке Complete Certificate Request (Завершить запрос сертификата) в панели задач внутри средства Server Certificates консоли управления. Подобным образом можно запросить и сконфигурировать сертификат SSL для автономного веб-сервера. Если необходимо запросить сертификат для вашего собственного CA, можно воспользоваться , щелкнув на ссылке Create Domain Certificate (Создать сертификат домена). Затем этот сертификат конфигурируется на вашем собственном CA и применяется для подписания изданных им сертификатов.

Илон Маск рекомендует:  Как менять размер текста при изменении размера окна

Честно говоря, этот процесс довольно запутанный если вы — просто разработчик, которому нужно протестировать SSL на собственном веб-приложении. Поэтому IIS 8 включает дополнительную опцию, которая изначально не была доступна в версиях IIS 6 и ниже: создание самоподписанного сертификата для вашей собственной машины. Все, что понадобится указать для самоподписанного сертификата — это дружественное имя, которое будет отображено в списке. Впоследствии мастер создает сертификат, применяя криптографические функции вашей машины, и установит этот сертификат на веб-сервер.

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

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

Конфигурирование привязок для SSL

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

Чтобы применять SSL для приложений, сконфигурированных внутри веб-сайта, понадобится настроить привязку протокола SSL для веб-сайта. Для этого просто выберите веб-сайт (такой как Default Web Site (Веб-сайт по умолчанию)) в навигационном дереве диспетчера служб IIS и щелкните на ссылке Bindings (Привязки) в панели задач справа. Откроется диалоговое окно Web Site Bindings (Привязки сайта), которое позволяет сконфигурировать необходимые привязки. Добавьте новые привязки, чтобы обеспечить доступ к приложению через разные IP-адреса, порты и протоколы. Диалоговое окно Web Site Bindings показано на рисунке ниже:

Щелкнув на кнопке Add (Добавить), можно добавить новую привязку веб-сайта. Щелкнув на кнопке Edit (Изменить), можно модифицировать существующую привязку в списке. На рисунке ниже показана конфигурация привязки для включения SSL на веб-сайте:

Легко заметить, что протокол сконфигурирован как https, запущенный на IP-адресе по умолчанию для сервера, с использованием порта 443 для SSL-доступа (который является портом по умолчанию для SSL). Далее в раскрывающемся списке в нижней части окна можно выбрать сертификат, используемый для трафика SSL на выбранном веб-сайте.

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

Шифрование информации с помощью SSL

Включение SSL в OS конфигурируется на уровне веб-приложений. После настройки привязок на уровне веб-сайтов можно выбрать веб-приложение в навигационном дереве консоли управления IIS и активизировать конфигурацию средства SSL, как показано на рисунке ниже:

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

Эти отображения должны быть настроены в разделе внутри раздела конфигурационного файла web.config. За дополнительной информацией об отображении клиентских сертификатов обращайтесь к документации Microsoft, доступной в MSDN.

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

Обратите внимание, что браузер Google Chrome отобразил перечеркнутую надпись https. Это связано с тем, что в этом примере я использовал самоподписанный сертификат, который не подтвержден CA. Это удобно когда вы разрабатываете сайт и вам нужно просто протестировать его при работе с SSL. Однако в развернутом веб-сайте нужно будет приобрести лицензированный сертификат в компаниях CA. Например, ниже показан сайт Сбербанка, который использует лицензированный сертификат, обратите внимание, что Google Chrome извлекает информацию о названии организации из сертификата:

Как включить TLS 1.1, 1.2 в IIS 7.5

Мы хотим поддерживать веб-браузеры, использующие TLS 1.1 и 1.2, которые, по-видимому, были реализованы Microsoft, но по умолчанию отключены.

Итак, я отправился на поиски в Google и обнаружил некоторые страницы, которые кажутся следующими:

Однако! Кажется, он не работает для меня. Я установил оба DWORD vaules для DisabledByDefault и Enabled для TLS 1.1 и 1.2. Я могу подтвердить, что мой клиент пытается связаться с TLS 1.2, но сервер отвечает только 1.0. Я перезапустил IIS, но это не изменило ситуацию.

Microsoft указывает: «ПРЕДУПРЕЖДЕНИЕ: значение DisabledByDefault в ключах реестра под ключом« Протоколы »не имеет приоритета над значением grbitEnabledProtocols, которое определено в структуре SCHANNEL_CRED, которое содержит данные для учетных данных Schannel».

Хорошо, это очень расплывчато для меня. Я не могу найти где-либо, где SCHANNEL_CRED определен или задан, все, что я могу определить, что это структура, определенная в библиотеке Microsoft. Это мое единственное предположение, почему это не работает, но я не могу найти достаточно информации об этом, чтобы определить, является ли это настоящей проблемой.

Защита Windows от уязвимости в SSL v3

В октябре инженеры Google опубликовали информацию о критической уязвимости в SSL версии 3.0, получившей забавное название POODLE (Padding Oracle On Downgraded Legacy Encryption или пудель �� ). Уязвимость позволяет злоумышленнику получить доступ к информации, зашифрованной протоколом SSLv3 с помощью атаки «man in the middle». Уязвимости подвержены как серверы, так и клиенты, которые могут соединяться по протоколу SSLv3.

В общем-то ситуация не удивительная, т.к. протоколу SSL 3.0, впервые представленного еще в 1996 году, уже исполнилось 18 лет и морально он уже устарел. В большинстве практических задач его уже заменил криптографический протокол TLS (версий 1.0, 1.1 и 1.2).

Для защиты от уязвимости POODLE рекомендуется полностью отключить поддержку SSLv3 как на стороне клиента, так и на стороне сервера и в дальнейшем использовать только TLS. Для пользователей устаревшего ПО (например, использующих IIS 6 на Windows XP) это означает, что они более не смогут просматривать HTTPS страницы и использовать другие SSL-сервисы . В том случае, если поддержка SSLv3 не отключена полностью, а по умолчанию предлагается используется более сильное шифрование, уязвимость POODLE все равно будет иметь место. Связано это с особенностями выбора и согласования протокола шифрования между клиентом и сервером, т.к. при обнаружении неисправностей в использовании TLS, происходит автоматический переход на SSL.

Рекомендуем проверить все свои сервисы, которые могут использовать SSL/TLS в любом виде и отключить поддержку SSLv3. Проверить свой веб-сервер на наличие уязвимости можно с помощью онлайн теста, например, тут: http://poodlebleed.com/ .

Отключаем SSLv3 в Windows на уровне системы

В ОС Windows управление поддержкой протоколов SSL/TLS осуществляется через реестр.

В этом примере мы покажем, как полностью на уровне системы (как на уровне клиента, так и сервера) отключить SSLv3 в Windows Server 2012 R2:

  1. Откройте редактор реестра (regedit.exe) с правами администратора
  2. Перейдите в ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\
  3. Создайте новый раздел с именем SSL3.0 (New->Key)
  4. В созданном разделе SSL3.0 создайте еще два подраздела с именами Client и Server.
  5. Затем в разделе Client создайте новый параметр типа DWORD (32-bit) с именем DisabledByDefault
  6. В качестве значения ключа DisabledByDefault укажем 1.
  7. Затем в ветке Server создайте новый параметр типа DWORD (32-bit) с именем Enabled и значением .
  8. Для вступления изменений в силу необходимо перезагрузить сервер

Отключаем SSLv2 (Windows 2008 / Server и ниже)

В ОС, предшествующих Windows 7 / Windows Server 2008 R2 по-умолчанию используется еще менее безопасный и устаревший протокол SSL v2, который также следует отключить из соображений безопасности (в более свежих версиях Windows, SSLv2 на уровне клиента отключен по умолчанию и используется только SSLv3 и TLS1.0). Для отключения SSLv2 нужно повторить описанную выше процедуру, только для раздела реестра SSL 2.0.

В Windows 2008 / 2012 SSLv2 на уровне клиента отключен по умолчанию.

Включаем TLS 1.1 и TLS 1.2 в Windows Server 2008 R2 и выше

Windows Server 2008 R2 / Windows 7 и выше поддерживают алгоритмы шифрования TLS 1.1 и TLS 1.2, но по-умолчанию эти протоколы отключены. Включить поддержку TLS 1.1 и TLS 1.2 в этих версиях Windows можно по схожему сценарию

  1. В редакторе реестра откройте ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
  2. Создайте два раздела TLS 1.1 и TLS 1.2
  3. Внутри каждого раздела создайте по подразделу с именами Client и Server
  4. В каждом из разделов Client и Server создайте по ключу типа DWORD:
    • DisabledByDefault со значением
    • Enabled со значением 1
  5. После внесенных изменений сервер следует перезагрузить.

Утилита для управления системными криптографическими протоколами в Windows Server

Существует бесплатная утилита IIS Crypto, позволяющая удобно управлять параметрами криптографических протоколов в Windows Server 2003, 2008 и 2012. С помощью данной утилиты включить или отключить любой из протоколов шифрования можно всего в два клика.

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

Iis включение шифрования

Назначение: Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista

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

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

Предварительные требования

Сведения об уровнях, на которых можно выполнить эту процедуру, а также модулях, обработчиках и разрешениях, требуемых для выполнения этой процедуры, см. в разделе Требования к функциям общей конфигурации (IIS 7).

Исключения из требований

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

Эту процедуру можно выполнить с помощью пользовательского интерфейса или путем прямого изменения файлов конфигурации.

Пользовательский интерфейс

Чтобы использовать пользовательский интерфейс

Откройте Диспетчер IIS и щелкните узел сервера. Сведения об открытии Диспетчер IIS см. в разделе Открытие диспетчера IIS (IIS 7).

В представлении Просмотр возможностей дважды щелкните пункт Служба управления.

На панели Действия страницы Служба управления нажмите кнопку Остановить.

На панели инструментов щелкните кнопку возвращения.

В представлении Просмотр возможностей дважды щелкните Общая конфигурация.

Выберите параметр Включить общую конфигурацию, чтобы включить компонент Общая конфигурация.

Под заголовком Расположение конфигурации в поле Физический путь введите физический путь или нажмите кнопку обзора (. ), чтобы найти физический путь каталога конфигурации.

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

На панели Действия нажмите кнопку Применить.

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

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

Закройте и снова откройте Диспетчер IIS. На панели Подключения щелкните узел сервера.

В представлении Просмотр возможностей дважды щелкните пункт Служба управления.

На панели Действия страницы Служба управления нажмите кнопку Пуск.

Настройка конфигурации

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

Этот элемент находится в файле Redirection.config, который по умолчанию помещается в каталог %windir%\system32\inetsrv\config.

Примечание
Для настройки общей конфигурации вместо прямого редактирования файла конфигурации следует использовать Диспетчер IIS.

Дополнительные сведения о конфигурации IIS 7 см. на странице IIS 7.0: схема настроек IIS (возможно, на английском языке) на веб-сайте MSDN.

Настройка HTTP/2 на Windows Server

Особенности настройки HTTP/2

  • Поддержка протокола HTTP/2 на Windows осуществляется с версии 10 Internet Information Services (IIS), который входит в состав Windows Server 2020 и Windows 10.
  • В большинстве популярных браузеров (Firefox, Chrome, Safari, Opera, IE, Edge) использование протокола http/2 возможно только поверх TLS (HTTPS). Хотя данный протокол работает и без шифрования. Это сделано для обеспечения безопасности соединения.
  • Веб-сервер IIS не требует ни каких дополнительных настроек для включения протокола http/2, все что вам нужно для его работы – это настроить привязку https и сертификат для вашего сайта.

Настройка Windows Server

Включение роли IIS

  1. Запускаем Диспетчер серверов и нажимаем Добавить роли и компоненты:
  • В появившемся окне нажимаем Далее.
  • Выбираем Установка ролей или компонентов, нажимаем Далее:
  • Выбираем сервер, на котором мы будем разворачивать IIS. Нажимаем Далее.
  • Ставим галочку напротив Веб-сервер IIS, в появившемся окне нажимаем Добавить компоненты, после этого Далее, пока не станет активной Установить.
  • Нажимаем Установить.
  • По завершению установки нажимаем Закрыть. Перезагрузка не требуется.
  • Настройка веб-сервера IIS

    1. Запускаем Диспетчер служб IIS:

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

    И кликаем по Создать самозаверенный сертификат:

    В появившемся окне вводим имя (любое, желательно такое же, как и у сайта), выбираем пункт Размещение веб-служб, нажимаем ОК:

    Переходим к своему сайту (в нашем случае, сайт по умолчанию — Default Web Site):

    И настраиваем привязку (bindings):

    В появившемся окне нажимаем Добавить. Поля заполняем следующим образом:
    (Тип – https, IP-адрес – Все назначенные, Порт – 443, SSL-сертификат – созданный нами ранее сертификат)

  • Нажимаем кнопки ОК и Закрыть.
  • Теперь при обращении пользователя к сайту по HTTPS он будет работать по протоколу http/2.

    В Windows 10 IIS включается в Программы и компонентыВключение или отключение компонентов Windows — поставить галочку напротив Службы IIS — нажать ОК.

    Тестирование

    Для проверки работоспособности настройки можно воспользоваться плагином для браузера «HTTP/2 and SPDY indicator».

    Устанавливаем плагин и заходим на наш сайт. Если HTTP/2 работаем правильно, значок станет синим:

    Настройка HTTP/2 без SSL

    Это не осуществить, так как популярные браузеры не работают по HTTP/2 без шифрования.

    Удалённое подключение к серверу IIS с помощью консоли управления IIS Manager

    Управление серверами IIS через RDP может быть крайне утомительным, особенно, если приходится администрировать десятки таких серверов, поэтому возникает желание управлять ими через стандартную консоль управления сервером IIS. В случае использования Server Core другого выбора просто нет. В данной статье я опишу процесс настройки клиентской (Windows 10) и серверной (Windows Server 2020 Server Core) части для удалённого управления.
    Настройка управления серверами IIS 8.0 (Windows Server 2012, Windows 8), 8.5 (Windows Server 2012 R2, Windows 8.1) делается так же.

    Устанавливаем IIS Management Service на сервере IIS

    Management Service необходим для удалённого управления сервером IIS — устанавливаем на стороне сервера IIS:

    В Server Manager этот компонент называется так:

    Включение удалённого управления

    Если сервер IIS установлен на Windows Server c графическим интерфейсом, то включение удалённого управления можно настроить в консоли IIS Manager:

    Меняем тип запуска службы WMSVC (Web Management Service) на автоматический:

    Если сервер IIS установлен на Server Core, то включаем удалённое управление сначала в реестре, а потом запускаем службу WMSVC и переводим её в режим запуска авто:

    Запускаем редактор реестра и переходим в раздел HKLM\SOFTWARE\Microsoft\WebManagement\Server
    Меняем параметр EnableRemoteManagement c 0 на 1

    Настраиваем службу Web Management Service:

    Удалённое подключение

    При подключении к серверу IIS с другого сервера проблем возникнуть не должно. А если необходимо подключаться с клиентской ОС, например Windows 10, то требуется дополнительная настройка.
    Сначала необходимо установить саму консоль управления IIS:

    Разница консолей управления в серверной ОС и клиентской ОС выглядит так:

    В клиентской ОС отсутствует диалог удалённого подключения к серверу.
    Для того, чтобы соответствующие диалоги появились, необходимо на Windows 10 установить IIS Manager for Remote Administration:

    После установки перезапускаем консоль IIS и проверяем, появился ли диалог подключения:

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

    На этом всё. После установки сервер готов к администрированию.

    Iis включение шифрования

    Для вашего сценария (как я понял: все могут смотреть сайт, но сайт на https), нужно ставить в настройках SSL «Игнорировать».

    Проблема с переходами — внутри Вашего сайта, скорее всего где-то используется именно обращение по http — кнопка ведь на сайте, правильно?

    Для вашего сценария (как я понял: все могут смотреть сайт, но сайт на https), нужно ставить в настройках SSL «Игнорировать».

    Проблема с переходами — внутри Вашего сайта, скорее всего где-то используется именно обращение по http — кнопка ведь на сайте, правильно?

    Добрый день. Если я поставлю Игнорировать,тогда в чем смысл SSL?Ведь не будет запроса сертификата.

    О какой кнопке Вы ведете речь?Я пока просто перекинул сайт с хостинга на IIS.

    Про «кнопку обзор» написали Вы, я думал, это кнопка у вас на сайте.

    «Игнорировать» означает, что не будет требоваться клиентский сертификат (=на сайт могут заходить все), серверный останется.

    Вы в «Bindings. » Вашего сайта привязали самоподписанный сертификат сервера и указали тип соединения https? Этого должно быть достаточно.

    Про «кнопку обзор» написали Вы, я думал, это кнопка у вас на сайте.

    «Игнорировать» означает, что не будет требоваться клиентский сертификат (=на сайт могут заходить все), серверный останется.

    Вы в «Bindings. » Вашего сайта привязали самоподписанный сертификат сервера и указали тип соединения https? Этого должно быть достаточно.

    Кнопка Обзор-это кнопка в IIS для обзора перенеснного сайта.

    Да я создал привязку https,указал самоподписанный сертификат. А в чем тогда смысл этого сертификата если проверки не будет?Для красоты?

    Теперь выдается ошибка..так вот просто..»У вас используется SSL -подключение.» Могут ли быть это проблемы связанные сертификата?

    Шифрование

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

    О цифровых сертификатах

    IIS использует цифровые сертификаты для реализации должного уровня защиты и поддерживает метод SSL -шифрования/аутентификации на веб-сайтах.

    Используются три типа сертификатов.

    • Сертификаты сервера. Обеспечивают метод шифрования данных, передаваемых через сеть (посредством SSL), и методы идентификации для сервера. Эти методы дают клиенту уверенность в том, что сайт, который он посетил, является именно тем сайтом, за который он себя выдает.
    • Сертификаты клиента. Обеспечивают идентификацию клиента на сервере, что позволяет серверу определить, кем на самом деле является клиент. Это более мощная аутентификация по сравнению с базовой. Сертификаты клиентов не поддерживают шифрование данных.
    • Сертификаты подписывания кода. Обеспечивают метод цифрового «подписывания» приложения посредством цифрового идентификатора, созданного на основе содержимого приложения. Если в приложении происходят какие-либо изменения, то цифровой идентификатор становится не соответствующим этому приложению, о чем пользователь получает уведомление. Сертификаты подписывания кода не поддерживают шифрование приложения.

    Ключи сертификатов

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

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

    Существует два типа шифрования с использованием ключей. Они используются примерно в одинаковой степени.

    • Шифрование на симметричном ключе. Для шифрования и расшифровки данных используется один и тот же ключ. Эта форма шифрования более эффективна с точки зрения скорости. При этом обеспечивается некоторый уровень безопасности, поскольку принимающая сторона должна знать ключ для расшифровки информации. Главным недостатком шифрования на симметричном ключе является то, что при вскрытии ключа злоумышленник сможет расшифровать данные. Он даже сможет зашифровать их и отправить принимающей стороне, выдав себя за легитимного отправителя.
    • Шифрование на открытом ключе. Более сложный процесс с точки зрения использования ключей. IIS предоставляет на выбор два алгоритма шифрования на открытом ключе – DH (Diffie-Hellman) и RSA (сокр. от имен разработчиков Ron Rivest, Adi Shamir и Leonard Adleman). RSA используется чаще всего, поэтому в данной лекции мы рассмотрим именно этот алгоритм. При шифровании на открытом ключе создается пара ключей – открытый ключ и секретный ключ.

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

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

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

    Мощность шифрования

    Мощность шифрования зависит от длины ключа и типа шифра, используемого для шифрования. Сообщения, созданные при помощи 128-битного ключа, взломать в 3х10 26 раз сложнее, чем сообщения, созданные при помощи 40-битного ключа. Это в некоторой степени объясняет то, почему правительство США раньше не разрешало экспортировать технологию, поддерживающую ключи длиной более 40 бит. В целях безопасности, правительство США отталкивалось от того факта, что оно сможет дешифровать перехваченные зашифрованные данные. Это гораздо сложнее сделать при использовании 128-битных ключей! Многое зависит и от того, какой именно шифр используется при шифровании данных. Например, данные, зашифрованные при помощи симметричного шифра (например, шифра DES – Data Encryption Standard ) с применением 64-битного ключа, сопоставимы по уровню защищенности с сообщением, зашифрованным при помощи RSA на ключе длиной в 512 бит.

    Примечание. В настоящее время правительство США разрешает экспорт 128-битных шифров во все страны, на которые не наложено соответствующее эмбарго.

    Цифровые подписи

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

    Односторонний хэш. Односторонний хэш (иногда называется анализом сообщения) представляет собой набор данных для проверки полученного документа на предмет того, что он не был изменен с момента создания хэша. Алгоритм одностороннего хэша создает для документа набор уникальных данных. Документ отправляется вместе с созданным односторонним хэшем. При получении документ повторно обрабатывается алгоритмом хеширования . Новый хэш сопоставляется с хэшем, полученным вместе с документом. Если выявляются различия, то это означает, что документ был искажен. Добавление в документ одного-единственного символа или пробела основательно изменит результирующий хэш. Не существует способа восстановления документа только из одного хэша, по этой причине хэш и называется односторонним. Наиболее распространенными алгоритмами одностороннего хэширования являются алгоритм обработки сообщений MD5, созданный профессором института MIT Роном Ривестом (соавтором алгоритма шифрования RSA), и алгоритм безопасного хэширования SHA , разработанный Национальным институтом стандартов и технологий США ( NIST ) и Управлением национальной безопасности США ( NSA ). Алгоритм MD5 генерирует 128-битное значение, а алгоритм SHA – 160-битное.

    Можно использовать секретный ключ для шифрования данных, расшифровать которые вы сможете только при помощи вашего открытого ключа. Мы не рекомендуем использовать этот подход, так как расшифровать этот текст сможет каждый. Исключением является случай, когда вы расшифровываете данные при помощи открытого ключа для подтверждения подлинности отправителя (подразумевается, что ваш секретный ключ никто не узнал). Данные, зашифрованные на вашем секретном ключе, являются шифрованным текстом открытого ключа.

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

    Бюро сертификатов и доверие. Как убедиться в том, что открытый ключ, используемый для шифрования отправляемых данных, заслуживает доверия? Когда пользователь создает пару ключей открытый/секретный для использования на веб-сайте, он, по существу, запрашивает сертификат SSL x.509 (x.509 является стандартом, определенный в RFC 2459) у бюро сертификатов (т.е. у сервера, выпускающего сертификаты). Бюро сертификатов может авторизовать (уполномочить) любое количество подчиненных бюро сертификатов, те, в свою очередь, – другие бюро сертификатов и т.д. Первое бюро сертификатов в этой цепочке называется корневым бюро сертификатов. Возможно наличие только одного корневого бюро сертификатов в цепочке. При выпуске сертификата SSL создающее его бюро сертификатов проверяет корректность информации, отправленной запрашивающей стороной. Подробности этой проверки индивидуальны для каждого бюро сертификатов.

    Использование бюро сертификатов на компьютере клиента

    Предположим, на компьютере клиента установлен набор сертификатов по умолчанию; выпустившие их бюро сертификатов являются доверенными. Набор установленных сертификатов зависит от используемого программного обеспечения (например, Internet Explorer или Netscape). При представлении клиенту сертификата SSL клиент выяснит, имеется ли в его кэше соответствующий сертификат. При наличии сертификата клиент проверит подпись бюро сертификатов при помощи открытого ключа, находящегося в кэше, осуществив таким образом аутентификацию веб-сервера. Если сертификат в кэше отсутствует, клиент запросит сертификат, после чего повторит проверку сертификата рассматриваемого бюро. Если сертификат не пройдет аутентификацию в корневом бюро сертификатов, будет сгенерировано предупреждение о том, что проверить сертификат SSL не удалось и принимать его не следует. В любом случае, если будет найдено бюро сертификатов, сертификат которого содержится в вашем кэше, сертификат SSL будет принят.

    Проверка списка бюро сертификатов браузера. Можно просмотреть список бюро сертификатов, являющихся доверенными для браузера. Рассмотрим на примере Internet Explorer 6. Выполните следующие действия.

    1. В Internet Explorer выберите Tools\Internet Options (Сервис\Свойства браузера).
    2. Откройте вкладку Content (Содержание).
    3. В области Certificates (Сертификаты) нажмите на кнопку Certificates (Сертификаты).
    4. В окне Certificates (Сертификаты) (см. рис. 10.1) откройте вкладку Trusted Root Certification Authorities (Доверенные корневые бюро сертификатов); здесь присутствует перечень доверенных корневых бюро сертификатов.

    Добавление бюро сертификатов в список доверия браузера. При посещении сайта, использующего сертификат бюро сертификатов, которое не пользуется доверием вашего браузера, отобразится соответствующее сообщение. Можно принять сертификат и продолжить работу через безопасное соединение. Продолжая шифровать данные, вы в этом случае проигнорируете одну из главных функций сертификатов – аутентификацию. При принятии сертификата от бюро сертификатов, не пользующимся доверием, скорее всего, для вас не имеет значения это бюро сертификатов и вы просто хотите выполнить транзакцию. При наличии других методов проверки бюро сертификатов этот подход приемлем. Если вы доверяете бюро сертификатов, отсутствующему в списке доверия браузера (например, бюро сертификатов компании, в которой вы работаете), то доверенный сертификат можно добавить в браузер. В следующий раз предупреждения отображаться уже не будут.

    Для добавления доверенного корневого бюро сертификатов в Internet Explorer выполните следующие действия.

    Как включить IIS в Windows 10

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

    Именно такой службой является IIS или как принято называть — Internet Information Service. Специализированный сервис IIS — это комплект, предназначенный для создания, редактирования и полного управления сайтами. Такой специализированный сервис может использовать абсолютно любой пользователь и создавать на сервисе IIS собственные веб-сайты, являясь хостингом для них. Необходимо знать, что один сервер IIS способен управлять сразу несколькими веб-сайтами. При этом такой сайт будет иметь собственные свойства и настройки.

    Интересные статьи по теме:

    Как установить IIS в Windows 10

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

    Для того чтобы установить службу IIS необходимо

    Попасть в управление панели Windows. Сделать это можно с помощью клавиш Win + R, прописав там — control panel.

    В открывшемся окне в правом вернем углу выбрать размер значков и выбрать в панели — крупные значки.

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

    Теперь остается обратиться во вкладку включение или отключение компонентов Windows. Находиться она в левой стороне экрана.

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

    В этой папке необходимо поставить галочку напротив этой службы, а также службы интернета и самой службы Internet Information Service, и подождать пока закончится загрузка.

    После этого на вашем компьютере будет установлена служба Internet Information Service.
    После установки, компьютер можно не перегружать, а сразу переходить к настройкам и управлению Internet Information Service. (установка этой службы займет не более 1 минуты)

    Попасть в эту службу можно при помощи пуска, где у пользователя должна появиться новая вкладка с названием – диспетчер служб iis.

    Теперь с помощью этой вкладки можно входить в Internet Information Service. В этом окне можно настраивать, управлять и редактировать вебсайт.

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

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

    Разрешить шифрование в IIS не работает

    Я пытаюсь использовать Certify SSL Manager для настройки SSL-сертификатов с Let Encrypt на моем сервере IIS, но он не работает во время проверки.

    Поэтому я принял это. до известных. Но тот факт, что test.txt меня смущает.

    Я уже настроил каталог в соответствии с этим обсуждением: https://github.com/ebekker/ACMESharp/issues/15

    У меня есть куча перезаписи в моем web.config, но даже если я полностью удалю этот раздел, он все равно не работает.

    Обновить:
    @Paul0515 предложение в сочетании с этим, похоже, решило проблему

    Илон Маск рекомендует:  Осуждаемые теги
    Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL