Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье показано, как создать самозаверенный корневой сертификат и сгенерировать файлы сертификата клиента .pem с помощью OpenSSL. Если вместо этого нужны PFX-файлы и .cer, ознакомьтесь с инструкциями windows-PowerShell.
Prerequisites
Чтобы использовать эту статью, необходимо иметь компьютер под управлением OpenSSL.
Self-signed root certificate
В этом разделе показано, как создать самозаверяющий корневой сертификат. После создания сертификата экспортируйте файл данных данных открытого ключа корневого сертификата.
В следующем примере показано, как создать самозаверяющий корневой сертификат.
openssl genrsa -out caKey.pem 2048 openssl req -x509 -new -nodes -key caKey.pem -subj "/CN=VPN CA" -days 3650 -out caCert.pem
Print the self-signed root certificate public data in base64 format. Это формат, поддерживаемый Azure.
openssl x509 -in caCert.pem -outform der | base64 -w0 && echo
Сертификаты клиентов
Примечание.
Корпорация Майкрософт рекомендует использовать самый безопасный поток проверки подлинности. Поток проверки подлинности, описанный в этой процедуре, требует очень высокой степени доверия к приложению и несет риски, которые отсутствуют в других потоках. Этот поток следует использовать только в том случае, если другие более безопасные потоки, такие как идентификации с управлением, не являются приемлемыми.
В этом разделе описано, как создать сертификат пользователя (сертификат клиента). Файлы сертификатов создаются в локальном каталоге, в котором выполняются команды. Вы можете использовать один и тот же сертификат клиента на каждом клиентском компьютере или создать сертификаты, относящиеся к каждому клиенту. Важно, чтобы сертификат клиента подписан корневым сертификатом.
Чтобы создать сертификат клиента, используйте следующие примеры.
export PASSWORD="password" export USERNAME=$(hostnamectl --static) # Generate a private key openssl genrsa -out "${USERNAME}Key.pem" 2048 # Generate a CSR (Certificate Sign Request) openssl req -new -key "${USERNAME}Key.pem" -out "${USERNAME}Req.pem" -subj "/CN=${USERNAME}" # Sign the CSR using the CA certificate and CA key openssl x509 -req -days 365 -in "${USERNAME}Req.pem" -CA caCert.pem -CAkey caKey.pem -CAcreateserial -out "${USERNAME}Cert.pem" -extfile <(echo -e "subjectAltName=DNS:${USERNAME}\nextendedKeyUsage=clientAuth")
Чтобы проверить сертификат клиента, используйте следующий пример.
openssl verify -CAfile caCert.pem caCert.pem "${USERNAME}Cert.pem"
Следующие шаги
- To continue VPN Gateway configuration steps, see Point-to-site certificate authentication.