SSL для сайта на IIS + перенаправление HTTP трафик на HTTPS
- Качаем последний релиз клиента со страницы проекта на GitHub https://github.com/Lone-Coder/letsencrypt-win-simple/releases
- Распаковываем его в каталог на сервере с IIS: C:\inetpub\letsencrypt
- Запускаем C:\inetpub\letsencrypt\letsencrypt.exe
- Создаем новый сертификат (N: Create new certificate) и выбираем тип сертификата, например 1. Single binding of an IIS site или 4. Manually input host name
- Далее letsencrypt запрашивает сертификат, подключает его в IIS и создает задание на периодическое обновление сертификата
Чтобы сделать редирект (перенаправление) HTTP на HTTPS нужно установить модуль Microsoft URL Rewrite Module:
- Качаем последний релиз со страницы проекта https://www.iis.net/downloads/microsoft/url-rewrite
- Убедиться, что в настройках сайте не включена опция обязательного использования SSL (Require SSL)
- Отредактировать файл web.config, в раздел <system.webServer> добавить правило:
<rewrite> <rules> <rule name="HTTP to HTTPS Redirect" enabled="true" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTPS}" pattern="off" ignoreCase="true" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" /> </rule> </rules> </rewrite>
- Или сделать то же самое визуально, в свойствах сайт - пункт «URL Rewrite»