Включить ssl для всех клиентов, взаимодействующих с веб-сайтом в iis

Требования к закрытым сертификатам

И , и соответствуют требованиям Службы приложений. Если вы решили передать или импортировать закрытый сертификат в Службу приложений, то этот сертификат должен соответствовать следующим требованиям. Он:

  • должен быть экспортирован как , зашифрованный с помощью TRIPLE DES;
  • должен содержать закрытый ключ длиной не менее 2048 битов;
  • должен содержать все промежуточные сертификаты и корневой сертификат в цепочке сертификатов.

Чтобы защитить личный домен в привязке TLS, сертификат должен соответствовать дополнительным требованиям:

  • должен содержать данные для аутентификации сервера (OID = 1.3.6.1.5.5.7.3.1);
  • должен быть подписан доверенным центром сертификации;

Примечание

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

Обновление сертификатов почтового сервера

В Centos 8 certbot почему-то не добавил себя в планировщики. Ни в cron, ни в systemd timers. Но нам мало обновить сертификаты, нужно еще перезапустить службы, которые его используют. Для этого идем в конфиг letsencrypt для каждого домена и добавляем в самый конец параметр.

post_hook = systemctl reload postfix dovecot httpd

Сделать это нужно в конфигурационных файлах в директории /etc/letsencrypt/renewal/. Там для каждого домена будет свой конфиг. После этого можете прогнать тест обновления, чтобы убедиться в том, что ошибок нет.

# certbot renew --dry-run

Все в порядке. Можно добавлять задание в /etc/crontab, или в любой другой конфиг, как вы обычно делаете. Я больше люблю все задачи держать в одном системном конфиге crontab.

1 1 * * * root /usr/bin/certbot renew

Онлайн курс по Linux

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Administrator Linux. Professional» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.

Что даст вам этот курс:

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

Проверьте себя на вступительном тесте и смотрите подробнее программу по .

Formats

PGP Public Key

For OpenSSL to recognize it as a PEM format, it must be encoded in Base64, with the following header:

Also, each line must be maximum 79 characters long. Otherwise you will receive the error:

Note: the PEM standard (RFC1421) mandates lines with 64 characters long. A PEM certificate stored as a single line can be converted with the UNIX command-line utility:

  • PKCS#1 RSAPublicKey (PEM header: BEGIN RSA PUBLIC KEY)
  • PKCS#8 EncryptedPrivateKeyInfo (PEM header: BEGIN ENCRYPTED PRIVATE KEY)
  • PKCS#8 PrivateKeyInfo (PEM header: BEGIN PRIVATE KEY)
  • X.509 SubjectPublicKeyInfo (PEM header: BEGIN PUBLIC KEY)
  • CSR PEM header : (PEM header:—-BEGIN NEW CERTIFICATE REQUEST—–)
  • DSA PrivateKeyInfo (PEM header: (—–BEGIN DSA PRIVATE KEY—-)

Генерация и установка Let’s Encrypt

Сервис Let’s Encrypt автоматически и при этом абсолютно бесплатно генерирует SSL-сертификат. Чтобы привязать его к VDS, необходимо перейти в категорию «Интеграция», потом открыть «Модули», найти в списке «Let’s Encrypt» и нажать на кнопку «Установить». 

Но это не все – теперь в разделе с сертификатами появится новая кнопка. Плюс этого модуля в том, что выпускать Let’s Encrypt можно на этапе добавления домена в IPSmanager.

Затем нужно предоставить право использования сертификата пользователю, на которого зарегистрирован сайт. Напоминаем, для этого надо перейти в «Учетные записи», потом открыть пункт «Пользователи». Далее следует найти нужный никнейм и кликнуть по элементу «Изменить». Потом во вкладке «Доступ» отметить пункт «Можно использовать SSL» и выйти, сохранив изменения. 

Теперь заходим в панель управления под никнеймом, привязанным к нужному домену. Переходим в «Настройки Web-сервера», потом в «SSL-сертификаты». Находим элемент «Let’s Encrypt» и жмем по нему.

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

Получение SSL-сертификатов

Для производственных AD FS ферм рекомендуется использовать общедоступный доверенный SSL-сертификат. Обычно это достигается путем отправки запроса подписи сертификата (CSR) стороннему поставщику сертификатов. существует множество способов создания CSR, включая Windows 7 или более поздней версии пк. Поставщик должен иметь документацию для этого.

Убедитесь, что сертификат соответствует требованиям к сертификатам SSL для AD FS и прокси-приложения .

Сколько сертификатов требуется

Мы рекомендуем использовать общий SSL-сертификат для всех AD FS и прокси серверов. Подробные требования см. в документе

Current certificate best practices

  • Set lifetime lower than 398 days
  • Use SHA-256 instead of SHA-1
  • Use 2048 bit keys for now (4096 is still too resource intensive)

Certificate chain order

The correct order of a certificate bundle a.k.a certificate chain e.g:

is:

Web Server:

HTTP Client:

The following certificate chain issues can occur:

  • : When a site does not provide the necessary intermediate certificates, a trust path cannot be established. Generally speaking, one cannot distinguish that case from a certificate signed by a custom CA. However, some server certificates include the information on which intermediate certificates are required, and also where to obtain them. If the intermediate certificates are found, then it’s very likely that a trust path will be established. In such cases you should reconfigure the server to add the missing certificates.
  • : Sites often include more certificates in the handshake than necessary. Of those, most include one extra certificate, and that is the actual trusted root certificate (which browsers already have in their storage). This last certificate is not needed for the validation process. Having an additional certificate in the chain wastes bandwidth and decreases overal performance slightly. A small number of sites will include a very large number of certificates as a result of misconfiguration. Such sites will typically suffer significant performance issues and need to be reconfigured.
  • : According to the standard, certificates must be presented in the order in which they are needed. The main, server, certificate must come first, followed by the certificate that signed it, followed by the next certificate in the chain, and so on. A small number of sites does not get this order right. Most SSL clients will deal with this problem silently, but there is a small number of platforms that will give up.

Что даёт SSL-сертификат для сайта?

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

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

На SSL обращают внимание продвинутые пользователи — наиболее активные покупатели и посетители

Возможности SEO-продвижения. Ещё в 2014 году Google заявил, что сайты с защищённым соединением будут выше подниматься в поисковой выдаче. И разные исследования подтверждают, что это так. Например, в 2016 основатель популярного сайта о SEO-продвижении Backlinko проанализировал 1 миллион результатов поиска Google. И пришёл к выводу, что на первых трёх страницах больше всего доменов с SSL-сертификатами: 25-28%. Вот так. В Яндексе с 2019-ого SSL тоже влияет на ранжирование сайта.

SSL-сертификат и протокол HTTPS становятся стандартом

Неважно, какой сайт вы создаёте: сертификат всё равно потребуется

Express.js

const https = require("https");const fs = require("fs");const express = require("express");// прочитайте ключиconst key = fs.readFileSync("localhost.key");const cert = fs.readFileSync("localhost.crt");// создайте экспресс-приложениеconst app = express();// создайте HTTPS-серверconst server = https.createServer({ key, cert }, app);// добавьте тестовый роутapp.get("/", (req, res) => {  res.send("this is an secure server");});// запустите сервер на порту 8000server.listen(8000, () => {  console.log("listening on 8000");});

Как только вы настроите обслуживающий ваше приложение инструмент на работу с вашим сертификатом, ваше приложение будет доступно по URL’у с HTTPS.

Следуя приведенному выше примеру с Express, вы можете открыть вкладку браузера по адресу https://localhost:8000 и увидеть ваш контент:

Погодите секунду! Где же сообщение «это защищенный сервер»?

Вы рассчитывали увидеть кое-что другое, но именно этого и следовало ожидать — потому что источник сертификата еще не входит в число доверенных.

Доверие к сертификатам

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

Импорт сертификата из Key Vault

Если для управления сертификатами используется Azure Key Vault, то можно импортировать сертификат PKCS12 из Key Vault в Службу приложений, если он .

Авторизация Службы приложений на чтение из хранилища

По умолчанию поставщик ресурсов Службы приложений не имеет доступ к Key Vault. Чтобы использовать Key Vault для развертывания сертификата, необходимо авторизовать для поставщика ресурсов доступ на чтение к KeyVault.

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

Примечание

Сейчас Сертификаты Key Vault поддерживают только политику доступа Key Vault, но не модель RBAC.

Импорт сертификата из хранилища в приложение

На портале Azure в меню слева выберите Службы приложений > <app-name> .

В левой области навигации приложения выберите Параметры TLS/SSL > Сертификаты закрытых ключей (PFX) > Импорт сертификата Key Vault.

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

Параметр Описание
Подписка Подписка, к которой принадлежит хранилище Key Vault.
Key Vault Хранилище с сертификатом, который необходимо импортировать.
Сертификат Выберите из списка сертификатов PKCS12 в хранилище. Все сертификаты PKCS12 в хранилище отображаются с отпечатком, но не все поддерживаются в Службе приложений.

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

Примечание

Если вы обновляете сертификат в Key Vault, используя новый сертификат, Служба приложений автоматически синхронизирует его в течение 24 часов.

Важно!

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

4 ответа

2

Хорошо, я заметил, что этот пост просматривается довольно часто в последнее время, и поэтому кажется, что многие люди сталкиваются с той же проблемой, что и я. Если это так, это может вам помочь.

Я выполнил простой пошаговый учебник по созданию SSL-сертификации для моего веб-сервера. Как и многие обучающие материалы, результатом этого учебника я пользовался самозаверяющий сертификат с использованием OpenSSL. Yep самоподписанный , это была проблема. Браузер не мог доверять серверу из-за его сертификата, который подписан сам по себе. Ну, я бы тоже не сделал этого …

Сертификат должен быть подписан внешним доверенным центром сертификации (CA). Поэтому я наткнулся на Let’s Encrypt , который делает всю работу за вас, и еще проще настроить, и самое лучшее: это абсолютно бесплатно.

Установка

1) Удалите старые файлы ssl cert, которые вы создали с помощью OpenSSL

2) Откройте backports, чтобы получить сертификат certbot на Debian. Вы должны знать, что это откроет отверстие для незавершенного программного обеспечения! Установите только пакеты, когда вы знаете о том, что вы делаете.

3) Обновите свою систему linux

4) Установить certbot

5) Настройте имя сервера Apache и ServerAlias ​​

6) Изменить конфигурационный файл apache

7) Проверьте правильность синтаксиса

8) Если файл конфигурации выглядит нормально, перезапустите сервер apache

9) Настройте сертификат с помощью certbot и следуйте инструкциям на экране.

Обновление

Все сертификаты по шифрованию Let’s Encrypt действительны в течение 3 месяцев. Чтобы обновить его, вы можете вручную запустить

Или автоматизировать эту службу как задание cron

и введите следующую строку, чтобы вызвать обновление каждый понедельник в 2:30 утра.

Я надеюсь, что это или один из других замечательных ответов поможет вам. Что касается меня, это было решением, которое сработало для меня. Здесь вы можете прочитать более подробный учебник: https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-debian-8

2

Если вы не видите никаких других ошибок SSL,
и если вы попытались установить «Debug LogLevel» в файле httpd.conf,
это сообщение об ошибке также может предложить «Прослушать 443» отсутствует в файле httpd.conf.

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

Последнее не кажется истинным в вашем случае. Как говорит Джейкоб, вам нужно указать правильное имя хоста как общее имя (или псевдоним) при создании CSR .

Чтобы узнать, какие имена в настоящий момент находятся в сертификате:

Если на компьютере установлено несколько сертификатов и обслуживается на одном IP-адресе, выполните следующие действия:

(где значения $ {…} являются заполнителями, которые вы должны заменить соответствующими значениями).

Я столкнулся с этой проблемой недавно, когда мой самозаверенный сертификат истек. Я googled и просто скопировал команду для создания нового сертификата с одного веб-сайта.

В моем конфигурационном файле apache: /etc/apache2/sites-available/default-ssl.conf. Файл сертификата & ключевой файл ссылается на следующее имя файла.

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

Итак, вот команда, которую я должен был использовать & напечатано правильно.

Назначение импортного сертификата веб-сайту

  1. Выберите Начните, указать на административные средства, а затем выберите службы IIS (IIS) Manager.
  2. В левой области выберите сервер.
  3. В правой области дважды щелкните веб-сайты.
  4. В правой области щелкните правой кнопкой мыши веб-сайт, на который необходимо назначить сертификат, а затем выберите Свойства.
  5. Выберите службу безопасности каталогов и выберите сертификат сервера.
  6. На странице Welcome to the Web Certificate Wizard выберите Далее.
  7. На странице Сертификат сервера выберите Назначение существующего сертификата, а затем выберите Далее.
  8. На странице Доступные сертификаты выберите установленный сертификат, который необходимо назначить этому веб-сайту, а затем выберите Далее.
  9. На странице Порт SSL настройте номер порта SSL. По умолчанию порт 443 подходит для большинства ситуаций.
  10. Нажмите кнопку Далее.
  11. На странице Сводка сертификатов просмотрите сведения о сертификате и выберите Далее.
  12. На странице Завершение мастера сертификата веб-сервера выберите Готово и выберите ОК.

Теперь можно настроить элементы веб-сайта для использования безопасных коммуникаций.

Получение сертификата

Чтобы начать процесс получения сертификата, необходимо создать CSR. Это можно сделать с помощью консоли управления IIS; поэтому для создания CSR необходимо установить IIS. CSR — это, по сути, сертификат, который создается на сервере, который проверяет сведения о сервере на компьютере при запросе сертификата от сторонного ЦС. CSR — это просто зашифрованное текстовое сообщение, которое шифруется с помощью пары ключей общего и частного доступа.

Как правило, следующие сведения о компьютере включаются в CSR, который вы создаете:

  • Организация
  • Организационный блок
  • Страна
  • Состояние
  • Локальность
  • Общее имя

Примечание

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

Создание CSR

  1. Доступ к консоли управления IiS Microsoft (MMC). Для этого щелкните правой кнопкой мыши «Мой компьютер» и выберите Управление. Это открывает консоль управления компьютером. Расширь раздел «Службы и приложения». Найдите IIS и расширь консоль IIS.

  2. Выберите определенный веб-сайт, на котором необходимо установить сертификат сервера. Щелкните правой кнопкой мыши сайт и выберите Свойства.

  3. Выберите вкладку Directory Security. В разделе Безопасная связь выберите сертификат Server. Это запускает мастер сертификата веб-сервера. Нажмите кнопку Далее.

  4. Выберите Создание нового сертификата и выберите Далее.

  5. Выберите Подготовьте запрос сейчас, но отправьте его позже и выберите Далее.

  6. В поле Имя введите имя, которое можно запомнить. Он будет по умолчанию называться веб-сайтом, для которого создается CSR.

    Примечание

    При генерации CSR необходимо указать немного длины. Длина ключа шифрования определяет силу зашифрованного сертификата, который отправляется в сторонний ЦС. Чем больше длина бита, тем сильнее шифрование. Большинство сторонних CAs предпочитают не менее 1024 битов.

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

  8. Раздел Общее имя сайта отвечает за привязку сертификата к веб-сайту. Для сертификатов SSL введите имя хост-компьютера с доменным именем. Для серверов Интрасети можно использовать имя NetBIOS компьютера, на который размещен сайт. Выберите Далее, чтобы получить доступ к географической информации.

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

  10. Сохраните файл как .txt файл.

  11. Подтвердите сведения о запросе. Выберите Далее, чтобы закончить, и выйти мастер сертификата веб-сервера.

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

  • Создайте приложение службы приложений.
  • Убедитесь, что частный сертификат соответствует всем .
  • Только бесплатный сертификат:
    • Сопоставьте домен, для которого требуется предоставить сертификат, со Службой приложений. Дополнительные сведения см. в статье Руководство по сопоставлению существующего настраиваемого DNS-имени со Службой приложений Azure.
    • Убедитесь, что для корневого домена (например, contoso.com) в вашем приложении не настроены ограничения IP-адресов. Создание сертификатов и периодическое возобновление действия для корневого домена зависят от доступности вашего приложения из Интернета.

Управление сертификатами Службы приложений

В этом разделе показано, как управлять .

Также см. раздел .

Переназначение ключа сертификата

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

Для запуска процесса щелкните Переназначение ключа. Этот процесс может занять от 1 до 10 минут.

При создании ключа развертывается новый сертификат, выданный центром сертификации.

Возможно, потребуется .

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

Примечание

Если не щелкнуть Синхронизировать, то Служба приложений автоматически синхронизирует сертификат в течение 24 часов.

Экспорт сертификата

Так как Сертификаты службы приложений представляют собой секрет Key Vault, вы можете экспортировать его копию в PFX-файл и использовать его для других служб Azure или за пределами Azure.

Чтобы экспортировать сертификат Службы приложений в виде PFX-файла, выполните приведенные ниже команды в Cloud Shell. Вы можете также выполнить их локально, если установлен Azure CLI. Замените заполнители именами, которые использовались при .

Скачанный файл appservicecertificate.pfx — это необработанный файл PKCS12, содержащий открытый и закрытый сертификаты. В каждом запросе используйте пустую строку для пароля импорта и парольной фразы PEM.

Удаление сертификата

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

Выберите сертификат на странице , а затем в области навигации слева выберите Блокировки.

Найдите для сертификата блокировку типа Удаление. Справа от нее выберите Удалить.

Теперь можно удалить сертификат Службы приложений. В левой области навигации выберите Обзор > Удалить. В диалоговом окне подтверждения введите имя сертификата и выберите ОК.

Создать тестовый SSL сервер.

Команда OpenSSL s_server реализует общий SSL/TLS-сервер. Она должна использоваться только для целей тестирования. В приведенном ниже примере данный сервер прослушивает соединения на порту 8080 и возвращает отформатированную HTML страницу статуса, который включает много информации о ciphers:

$ openssl s_server -key key.pem -cert cert.pem -accept 8080 -www

Конвертирование сертификатов с DER в PEM формат.

# openssl x509 -inform der -in LN.der -out LN.pem

Как правило, при покупке SSL сертификатов, его отдают вам в формате .der и если вам нужно использовать его в веб-сервере или .pem формате, вы можете использовать команду выше, чтобы преобразовать такие сертификаты.

Конвертирование сертификатов с PEM в DER формат.

В случае, если вам необходимо изменить .pem формат в .der:

# openssl x509 -outform der -in linux-notes.pem -out linux-notes.der

Конвертирование сертификата и приватного ключа  в PKCS#12 фотмат.

# openssl pkcs12 –export –out sslcert.pfx –inkey key.pem –in sslcert.pem

Если вам необходимо использовать сертификат с приложением Java или с любым другим, кто принимает формат PKCS# 12.

Совет: Вы можете включить «chain certificate» используя «-chain» опцию:

# openssl pkcs12 -export -out my_cert.pfx -inkey my_key.pem -in your_cert.pem -chain the_cert.pem

Создание CSR используя  приватный ключ (private key).

# openssl req -out some_cert.csr -key exists.key -new

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

Проверьте содержимое сертификата в PKCS12 формате.

# openssl pkcs12 -info -nodes -in my_certificate.p12

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

Получить SHA-1 отпечаток сертификата или CSR

Чтобы получить отпечаток SHA1 сертификата с использованием OpenSSL, используйте команду, приведенную ниже:

$ openssl dgst -sha1 my_cert.der

Чтобы получить SHA1 отпечаток пальца CSR с использованием OpenSSL, используйте команду, приведенную ниже:

$ openssl dgst -sha1 the_csr.der

Получить MD5 отпечаток сертификата или CSR

Чтобы получить отпечаток MD5 сертификата с использованием OpenSSL, используйте команду, приведенную ниже:

$ openssl dgst -md5 cert.der

Чтобы получить MD5 отпечаток пальца CSR с использованием OpenSSL, используйте команду, приведенную ниже:

$ openssl dgst -md5 my_csr.der

Тестирование SSL сертификата по URL.

# openssl s_client -connect linux-notes.org:443 -showcerts

Я использую это довольно часто для проверки SSL-сертификатов по URL с сервера. Это очень удобно для проверки некоторых деталей протокола, шифров и CERT.

Узнать версию OpenSSL

 # openssl version

Поверка PEM сертификата на завершение (Expiration Date).

# openssl x509 -noout -in cert.pem -dates

Пример:

# openssl x509 -noout -in bestflare.pem -dates
notBefore=Jul 4 14:02:45 2015 GMT
notAfter=Aug 4 09:46:42 2015 GMT

Проверить поддержку SSL версии V2/V3  по URL.

Проверка SSL версии V2:

# openssl s_client -connect linux-notes.org:443 -ssl2

Проверка SSL версии V3:

# openssl s_client -connect linux-notes.org:443 -ssl3

Проверка TLS 1.0:

# openssl s_client -connect linux-notes.org:443 -tls1

Проверка TLS 1.1:

# openssl s_client -connect linux-notes.org:443 -tls1_1

Проверка TLS 1.2:

# openssl s_client -connect linux-notes.org:443 -tls1_2

Какой алгоритм используется в сертификате (проверка).

$ openssl req -noout -text -in mycert.csr | grep 'Signature Algorithm'

Или, используя URL:

openssl s_client -connect linux-notes.org:443 < /dev/null 2>/dev/null | openssl x509 -text -in /dev/stdin | grep "Signature Algorithm"

Получить сертификат по URL

Команда что ниже, сохранит сертификат в файл прямо по URL сайта:

$ echo -n | openssl s_client -connect linux-notes.org:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > pem.cert

Если веб-сервер имеет несколько сертификатов на один IP-адрес, то вам нужно будет сообщить OpenSSL, какой сертификат будет использоваться, пример ниже:

$ echo -n | openssl s_client -connect linux-notes.org:443 -servername linux-notes.org | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > pem.cert

Вот и все, много полезностей и все в одной статье «Примеры использования OpenSSL в Unix/Linux».

Требования к сертификату LDAPS

Чтобы включить LDAPS, необходимо установить сертификат, отвечающий следующим требованиям:

  • Сертификат LDAPS расположен в хранилище персональных сертификатов локального компьютера (программным образом известном как хранилище сертификатов MY компьютера).

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

  • Расширение использования ключей включает идентификатор проверки подлинности сервера (1.3.3.6.1.5.5.7.3.1) (также известный как OID).

  • Полное доменное имя контроллера домена Active Directory (например, dc01.contoso.com) должно отображаться в одном из следующих мест:

    • Общее имя (CN) в поле Subject.
    • Запись DNS в расширении Альтернативное имя субъекта.
  • Сертификат был выдан ЦС, который доверяет контроллеру домена и клиентам LDAPS. Доверие устанавливается путем настройки клиентов и сервера для доверия корневому ЦС, к которому цепи выпуска ЦС.

  • Для создания ключа используйте поставщика криптографических служб Schannel (CSP).

Импорт сертификата

Получив сертификат от ЦС, выполните указанные ниже действия.

Чтобы импортировать запрос сертификата:

  1. В центре администрирования Exchange на странице Сервер > Сертификаты выберите запрос на сертификат, созданный на предыдущих этапах.

  2. В области сведений о запросе на сертификат в разделе Состояние выберите команду Завершить.

  3. On the complete pending request page, specify the path to the SSL certificate file > OK.

  4. Выберите только что добавленный сертификат, а затем выберите значок Edit .

  5. На странице сертификата выберите элемент Службы.

  6. Выберите службы, которые хотите назначить для этого сертификата. Как минимум следует выбрать SMTP и IIS. Нажмите кнопку Сохранить.

  7. Если появляется предупреждение Перезаписать существующий сертификат SMTP по умолчанию?, выберите Да.

Подтверждение прав владения доменом

Необходимо пройти процесс валидации домена для выпуска сертификата. С помощью этой процедуры подтверждается право на владение доменом.

Возможны последующие проверки:

  • проверка организации;
  • расширенная проверка.

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

Txt запись в DNS

Вам будет предложено добавить запись типа TXT в DNS записи домена

Рассмотрим, как это делается в isp manager

  1. Во вкладке домены нужно выбрать доменные имена

  2. Просмотреть NS записи домена

  3. Создать новую ресурсную запись

  4. Выбрать тип txt и в поле «Значение» вставить текст записи

TXT запись может появиться не сразу, обычно это происходит в течение часа.

Проверить DNS записи домена можно с помощью утилиты dig. Сервисов существует много, возьмем, например, этот.

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

После добавления записи не забудьте вернуться в административную панель хостинга и нажать кнопку «Проверить добавление записи».

Cname запись в DNS

Нужно будет сделать то же самое, что и в предыдущем пункте, только выбрав тип записи CNAME.

Запись имеет вид:

_hash.yourdomain.com CNAME hash.comodoca.com.

Yourdomain.com – имя вашего домена

Подтверждение с помощью доменной почты

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

Файл на сервере

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

Два доменных имени для локального сайта

Иногда для сайта регистрируют два доменных имени. Например в разных зонах example.com и example.org . Для работы обоих доменных имён в личном кабинете нужно настроить виртуальные хосты вэб-сервера. Дополнение к выше приведённой инструкции:

  1. Откройте конфигурационный файл

    /app/asr_cabinet/cfg/etc/httpd/conf/httpd.conf
    
  2. Добавье в секцию имени хостов Section 3: Virtual Hosts строчку:

    NameVirtualHost *:443
    

    Так выглядит конечный результат:

    NameVirtualHost *:8888
    NameVirtualHost *:442
    NameVirtualHost *:441
    NameVirtualHost *:440
    NameVirtualHost *:444
    NameVirtualHost *:445
    NameVirtualHost *:8443
    NameVirtualHost *:443
    
  3. Добавьте опцию ServerName для первого домена в описание хоста:

    <VirtualHost *:443>
         DocumentRoot /var/wordpress/
         AddDefaultCharset utf-8
         ServerName example.com
        <Directory /var/wordpress>
                Options Indexes FollowSymLinks
                AllowOverride All
        </Directory>
        SSLEngine on
        SSLProtocol all -SSLv2
        SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
        SSLCACertificateFile /etc/pki/tls/certs/ca_bundle.crt
        SSLCertificateFile /etc/pki/tls/certs/ca.crt
        #SSLVerifyClient require
        SSLCertificateKeyFile /etc/pki/tls/private/ca.key
    </VirtualHost>
    
  4. Продублируйте блок VirtualHost с настройкой ServerName для второго домена:

    <VirtualHost *:443>
    ...
         ServerName example.com
    ...
    </VirtualHost>
    
    <VirtualHost *:443>
    ...
         ServerName example.org
    ...
    </VirtualHost>
    
  5. Проведите настройку сертификата для второго домене example.org как указано в разделе .
    Нужно учесть, что имена файлов сертификата для второго домена должны отличаться от первого.

    То есть, примерно так:

    <VirtualHost *:443>
    ...
         ServerName example.com
    ...
         SSLCertificateFile /etc/pki/tls/certs/ca_example_COM.crt
         SSLCertificateKeyFile /etc/pki/tls/private/ca_example_COM.key
         SSLCACertificateFile /etc/pki/tls/certs/ca_bundle_COM.crt
    ...
    </VirtualHost>
    
    <VirtualHost *:443>
    ...
         ServerName example.org
    ...
         SSLCertificateFile /etc/pki/tls/certs/ca_example_ORG.crt
         SSLCertificateKeyFile /etc/pki/tls/private/ca_example_ORG.key
         SSLCACertificateFile /etc/pki/tls/certs/ca_bundle_ORG.crt
    ...
    </VirtualHost>
    
  6. Перезапустите контейнер личного кабинета для применения настроек:

    /app/asr_cabinet/service restart
    
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: