Skip to main content
Skip table of contents

Сoздание и использование TLS/SSL

Протокол SSL обеспечивает защищённый обмен данными за счёт следующих элементов – аутентификации и шифрования.

SSL использует:

  • Асимметричную криптографию для аутентификации ключей обмена.

  • Симметричный шифр для сохранения конфиденциальности.

  • Коды аутентификации сообщений для целостности сообщений.

Протокол SSL предоставляет безопасный канал, который имеет следующие основные свойства:

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

  • Канал аутентифицирован. Серверная сторона диалога всегда аутентифицируется, а клиентская делает это опционально.

  • Канал надёжен. Транспортировка сообщений включает в себя проверку целостности.

Создание TLS/SSL сертификата

Для создания или генерации сертификата:

  • Возможно использовать сервис «Let's Encrypt».

  • Приобрести сертификат у авторизованного сервиса.

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

Генерация самоподписанного сертификата

Пример генерации RSA сертификата с указанием домена:

BASH
# Selfsigned RSA certificate
openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 \
  -nodes -keyout example.com.key -out example.com.crt -subj "/CN=example.com" \
  -addext "subjectAltName=DNS:example.com,DNS:*.example.com,IP:10.0.0.1"

Генерация Elliptic curve сертификата:

BASH
# Selfsigned EC certificate
openssl req -x509 -newkey ec -pkeyopt ec_paramgen_curve:secp384r1 -days 3650 \
  -nodes -keyout example.com.key -out example.com.crt -subj "/CN=example.com" \
  -addext "subjectAltName=DNS:example.com,DNS:*.example.com,IP:10.0.0.1"
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.