J'ai besoin de configurer un serveur Apache 2 avec SSL.
J'ai mon fichier * .key, mais toute la documentation que j'ai trouvée en ligne, les fichiers * .crt sont spécifiés et mon autorité de certification ne m'a fourni qu'un fichier * .cer.
Les fichiers * .cer sont-ils identiques à * .crt? Sinon, comment puis-je convertir CER au format CRT?
CER
et lesCRT
extensions ne signifient rien. Différents fournisseurs de PKI utilisent différentes extensions pour la même chose. Si le fichier est binaire, il est probablement encodé en ASN.1 / DER. Si le fichier est lisible par l'homme avec-----BEGIN CERTIFICATE-----
, alors son PEM est encodé. De quoi avez-vous (DER ou PEM) et de quoi avez-vous besoin (DER ou PEM)?Réponses:
Les extensions de fichier pour les certificats cryptographiques ne sont pas vraiment aussi standardisées que vous le pensez. Windows par défaut traite le double-clic sur un
.crt
fichier comme une demande d'importation du certificat dans le magasin de certificats racine Windows, mais traite un.cer
fichier comme une demande uniquement pour afficher le certificat. Donc, ils sont différents en ce sens que Windows a une signification différente inhérente à ce qui se passe lorsque vous double-cliquez sur chaque type de fichier.Mais la façon dont Windows les gère lorsque vous double-cliquez dessus est à peu près la seule différence entre les deux. Les deux extensions représentent simplement qu'il contient un certificat public. Vous pouvez renommer un fichier de certificat pour utiliser une extension à la place de l'autre dans n'importe quel système ou fichier de configuration que j'ai vu. Et sur les plates-formes non Windows (et même sous Windows), les gens ne font pas particulièrement attention à l'extension qu'ils utilisent et les traitent tous les deux de manière interchangeable, car il n'y a pas de différence entre eux tant que le contenu du fichier est correct.
Ce qui rend les choses encore plus confuses, c'est qu'il existe deux manières standard de stocker des données de certificat dans un fichier: l'une est un encodage X.509 "binaire" et l'autre est un encodage base64 "texte" qui commence généralement par "
-----BEGIN CERTIFICATE-----
". Ceux-ci encodent les mêmes données mais de différentes manières. La plupart des systèmes acceptent les deux formats, mais si vous en avez besoin, vous pouvez convertir l'un en l'autre via openssl ou d'autres outils. Le codage dans un fichier de certificat est vraiment indépendant de l'extension que quelqu'un a donné au fichier.la source
Selon la documentation mod_ssl :
Le fichier de certificat doit être un fichier de certificat X.509 codé PEM:
la source
zscaler
, exécutéesvagrant
surwin
(vbox
homestead
), en installant nos certificats racine de confiance dans la boîte vagrant? Jescp
les ai utilisés, puis j'ai utilisé votre conversion et je les ai liés par un lien symbolique et j'ai/etc/ssl/certs
également copié le contenu dans leca-certificates.crt
fichier avant le réapprovisionnement, et j'obtiens toujours unegoogle-recaptcha
tls
ssl
erreurfile_get_contents
sur la boîte de développement.Fondamentalement, il existe deux types de codage de certificat CER, DER et Base64. Lorsque le type DER renvoie un certificat de chargement d'erreur (routines de codage asn1), essayez le PEM et cela fonctionnera.
openssl x509 -inform DER -in certificate.cer -out certificate.crt
openssl x509 -inform PEM -in certificate.cer -out certificate.crt
la source
Je suppose que vous avez un fichier .cer contenant des données de certificat codées PKCS # 7 et que vous souhaitez le convertir en données de certificat codées PEM (généralement un fichier .crt ou .pem). Par exemple, un fichier .cer contenant des données encodées PKCS # 7 ressemble à ceci:
Les données du certificat PEM ressemblent à ceci:
Il existe une commande OpenSSL qui convertira les fichiers .cer (avec les données PKCS # 7) en données PEM que vous vous attendez peut-être à rencontrer (le
BEGIN CERTIFICATE
bloc dans l'exemple ci-dessus). Vous pouvez forcer les données PKCS # 7 au format PEM par cette commande sur un fichier que nous appellerons certfile.cer:openssl pkcs7 -text -in certfile.cer -print_certs -outform PEM -out certfile.pem
Notez qu'un fichier .cer ou .pem peut contenir un ou plusieurs certificats (éventuellement toute la chaîne de certificats).
la source
CER est un certificat X.509 sous forme binaire, codé DER .
CRT est un certificat binaire X.509, encapsulé dans un encodage texte ( base 64 ).
Ce n'est pas le même encodage.
la source
La réponse à la question de savoir comment convertir un fichier .cer en fichier .crt (ils sont encodés différemment!) Est:
la source
openssl x509 -inform der -in certificate.cer -out certificate.pem
unable to load PKCS7 object
J'utilise la commande:
openssl x509 -inform PEM -in certificate.cer -out certificate.crt
Mais CER est un certificat X.509 sous forme binaire, encodé DER. CRT est un certificat binaire X.509, encapsulé dans un encodage texte (base 64).
Pour cette raison, vous devriez peut-être utiliser:
openssl x509 -inform DER -in certificate.cer -out certificate.crt
Et puis pour importer votre certificat:
Copiez votre autorité de certification dans dir:
/usr/local/share/ca-certificates/
Utilisez la commande:
sudo cp foo.crt /usr/local/share/ca-certificates/foo.crt
Mettez à jour le magasin CA:
sudo update-ca-certificates
la source
Si votre fichier cer a un format binaire, vous devez le convertir en
la source
Les fichiers .cer et .crt doivent être interchangeables en ce qui concerne leur importation dans un keystore.
Jetez un œil au contenu du fichier .cer. Effacez tout ce qui se trouve avant
-----BEGIN CERTIFICATE-----
et après la-----END CERTIFICATE-----
ligne. Vous vous retrouverez avec les lignes BEGIN / END avec un tas de trucs encodés en Base64 entre elles.Ensuite, importez-le simplement dans votre fichier de clés à l'aide de keytool.
la source
Fais juste
la source