En utilisant OpenSSL sur Windows:
openssl genrsa -out privatekey.pem 1024 -->
Créé avec succès
openssl req -new -x509 -key privatekey.pem -out publickey.cer -days 365
---->
Affichage du message d'erreur en tant que
impossible de charger les informations de configuration depuis /usr/local/ssl/openssl.cnf
Après avoir installé OpenSSL, je devais créer une nouvelle variable d’environnement:
OPENSSL_CONF
C:\Program Files\OpenSSL\openssl.cnf
En PowerShell:
$env:OPENSSL_CONF = "${env:ProgramFiles}\OpenSSL\openssl.cnf"
Cette valeur diffère des versions d'installation précédentes (comme dans une édition précédente de cet article). N'oubliez pas non plus d'ajouter le dossier binaire openssl ${env:ProgramFiles}\OpenSSL
à votre chemin.
Vous devez spécifier le chemin absolu vers la configuration, quelque chose comme ceci:
openssl req -x509 -config "C:\OpenSSL-Win64\bin\openssl.cnf" ...
Dans Windows 10, il n'est pas nécessaire de redémarrer ni d'exécuter en mode administrateur, mais de définir à la place la configuration openssl comme suit:
set OPENSSL_CONF=C:\Program Files (x86)\GnuWin32\share\openssl.cnf
Bien sûr, si vous utilisez GnuWin32
Dans Windows, [ Scénario similaire ]
J'étais confronté au même problème, mais c'était lors d'une demande de demande de signature de certificat.
J'ai fait le ci-dessous, cela a fonctionné pour moi.
Une fois OpenSSL installé, exécutez la commande Invite en tant qu'administrateur après le redémarrage du système.
a fait, 1. [cas d'erreur]
C:\OpenSSL-Win64\bin>openssl req -new -key server.key -out server.csr
AVERTISSEMENT: impossible d'ouvrir le fichier de configuration: C:\OpenSSL-Win64\bin\openssl.cnf ET impossible de charger les informations de configuration à partir de C:\OpenSSL-Win64\bin\openssl.cnf
2. [Travaillé avec avertissement]
C:\OpenSSL-Win64\bin> openssl req -new -key server.key -out server.csr -config C:\OpenSSL-Win64\bin\openssl.cfg
[Message d'avertissement]: AVERTISSEMENT: impossible d'ouvrir le fichier de configuration: C:\OpenSSL-Win64\bin\openssl.cnf
Mais m'a invité pour le phrase de passe pour server.key Cela a fonctionné pour moi.
J'ai référé, Ce lien pour mon aide.
Je vous remercie.
Après avoir installé OpenSSL, vous devez redémarrer votre ordinateur et utiliser Run As Administrator
. Puis ses œuvres.
Le niquement ce qui a fonctionné pour moi dans cette situation était le auto-créé openssl.cnf fichier.
Voici les bases nécessaires pour cet exercice (modifiez-les au besoin):
#
# OpenSSL configuration file.
#
# Establish working directory.
dir = .
[ ca ]
default_ca = CA_default
[ CA_default ]
serial = $dir/serial
database = $dir/certindex.txt
new_certs_dir = $dir/certs
certificate = $dir/cacert.pem
private_key = $dir/private/cakey.pem
default_days = 365
default_md = md5
preserve = no
email_in_dn = no
nameopt = default_ca
certopt = default_ca
policy = policy_match
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
[ req ]
default_bits = 1024 # Size of keys
default_keyfile = key.pem # name of generated keys
default_md = md5 # message digest algorithm
string_mask = nombstr # permitted characters
distinguished_name = req_distinguished_name
req_extensions = v3_req
[ req_distinguished_name ]
# Variable name Prompt string
#------------------------- ----------------------------------
0.organizationName = Organization Name (company)
organizationalUnitName = Organizational Unit Name (department, division)
emailAddress = Email Address
emailAddress_max = 40
localityName = Locality Name (city, district)
stateOrProvinceName = State or Province Name (full name)
countryName = Country Name (2 letter code)
countryName_min = 2
countryName_max = 2
commonName = Common Name (hostname, IP, or your name)
commonName_max = 64
# Default values for the above, for consistency and less typing.
# Variable name Value
#------------------------ ------------------------------
0.organizationName_default = My Company
localityName_default = My Town
stateOrProvinceName_default = State or Providence
countryName_default = US
[ v3_ca ]
basicConstraints = CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
[ v3_req ]
basicConstraints = CA:FALSE
subjectKeyIdentifier = hash
J'espère que ça aide.
Avec les outils GnuWin32, j'ai trouvé le fichier openssl.cnf sous C:\gnuwin32\share
set OPENSSL_CONF=C:\gnuwin32\share\openssl.cnf
Pour moi sur Windows 8, j'ai simplement trouvé le fichier openssl.cnf et je l'ai copié sur le lecteur C. ensuite:
openssl req -new -key server.key -out server.csr -config C:\openssl.cnf
A parfaitement fonctionné.
Sous Windows 7, je n'avais pas besoin de redémarrer, exécutez simplement l'invite de commande en mode administrateur.
Dans mon cas, je dois définir le chemin du fichier openssl.cnf manuellement sur la commande à l'aide de l'option config
. Donc la commande
openssl req -x509 -config "C:\Users\sk\Downloads\openssl-0.9.8k_X64\openssl.cnf" -newkey rsa:4096 -keyout key.pem -out cert.pem -nodes -days 900
Si vous utilisez Win32 OpenSSL v1.1.0g, configurez cette variable d’environnement:
set OPENSSL_CONF=C:\OpenSSL-Win32\bin\cnf\openssl.cnf
Avant d’exécuter cette commande avec "server.key" , vous avez réussi à créer "server.csr" :
openssl req -new -key server.key -out server.csr
Pour moi, mettre variable avant d'appeler a fait l'affaire:
OPENSSL_CONF=/usr/ssl/openssl.cnf openssl req -new -x509 -key privatekey.pem -out publickey.cer -days 365