Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
divers:openssl [2017/01/10 00:46] – [Lecture du contenu d'un certificat] fabien.rico | divers:openssl [2018/01/08 00:54] (Version actuelle) – [Requête de signature] fabien.rico | ||
---|---|---|---|
Ligne 6: | Ligne 6: | ||
Pour authentifier un serveur, il faut un certificat valide c'est à dire un document contenant la description du serveur (notamment son identifiant et ses noms alternatifs) ainsi que sa clef publique et une signature d'une autorité de certification. | Pour authentifier un serveur, il faut un certificat valide c'est à dire un document contenant la description du serveur (notamment son identifiant et ses noms alternatifs) ainsi que sa clef publique et une signature d'une autorité de certification. | ||
- | * Pour générer une clef secrète pour le serveur (2048 bits) : | + | * La commande suivante permet de générer une clef secrète pour le serveur (2048 bits) : |
openssl genrsa -out server.key 2048 | openssl genrsa -out server.key 2048 | ||
- | * Pour générer la requète | + | * La commande suivante permet de générer la requête |
openssl req -config openssl.cnf -nodes -new -key server.key -out server.csr | openssl req -config openssl.cnf -nodes -new -key server.key -out server.csr | ||
- | Ici le fichier '' | + | Ici le fichier '' |
* Dans la section '' | * Dans la section '' | ||
Ligne 28: | Ligne 28: | ||
subjectAltName = @alt_names | subjectAltName = @alt_names | ||
- | * Enfin, il faut une section '' | + | * Enfin, il faut une section '' |
[ alt_names ] | [ alt_names ] | ||
Ligne 37: | Ligne 37: | ||
IP.2 = ... | IP.2 = ... | ||
- | Les champs '' | + | Bien surt, les champs '' |
Attention, il est préférable que le le '' | Attention, il est préférable que le le '' | ||
- | Une fois la requète | + | Une fois la requête |
==== CA ==== | ==== CA ==== | ||
Ligne 65: | Ligne 65: | ||
Un certificat, une clef ou un requête sont simplement formé par un paragraphe en base64 entre 2 lignes qui décrivent le contenu. Par exemple : | Un certificat, une clef ou un requête sont simplement formé par un paragraphe en base64 entre 2 lignes qui décrivent le contenu. Par exemple : | ||
- | | + | |
+ | | ||
+ | | ||
MIIDxzCCAq8CAQAwgasxCzAJBgNVBAYTAkZSMR0wGwYDVQQIDBRSaG9uZS1BbHBl | MIIDxzCCAq8CAQAwgasxCzAJBgNVBAYTAkZSMR0wGwYDVQQIDBRSaG9uZS1BbHBl | ||
cy1BdXZlcmduZTENMAsGA1UEBwwETHlvbjEMMAoGA1UECgwDVFBSMQ0wCwYDVQQL | cy1BdXZlcmduZTENMAsGA1UEBwwETHlvbjEMMAoGA1UECgwDVFBSMQ0wCwYDVQQL | ||
- | DARTSVJWMScwJQYDVQQDDB53d3cuZ3JvdXBlMS5zZWN1LnVuaXYtbHlvbjEuZnIx | ||
- | KDAmBgkqhkiG9w0BCQEWGWZhYmllbi5yaWNvQHVuaXYtbHlvbjEuZnIwggEiMA0G | ||
- | CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDN9EXuO3KTIW6T13brKcHD+SEXJdZs | ||
CC6RaOwOoyoceMR+uMiWPORYmtqsnRfu24WDisNu2Sw8rCipOOCtm6FxylNZAxBt | CC6RaOwOoyoceMR+uMiWPORYmtqsnRfu24WDisNu2Sw8rCipOOCtm6FxylNZAxBt | ||
21vfhPpFdF1Z0oKyajGCOea8bp2spz3YfBudQ4iOP/ | 21vfhPpFdF1Z0oKyajGCOea8bp2spz3YfBudQ4iOP/ | ||
d96YQwDgqg+UP6fKptzq9O3Huy8yI/ | d96YQwDgqg+UP6fKptzq9O3Huy8yI/ | ||
+ | pgYDVR0RBIGeMIGbgh9hdXRoLmdyb3VwZTEuc2VjdS51bml2LWx5b24xLmZygiFy | ||
+ | ZWxvYWQuZ3JvdXBlMS5zZWN1LnVuaXYtbHlvbjEuZnKCIm1hbmFnZXIuZ3JvdXBl | ||
0XMY5DI42noZfH/ | 0XMY5DI42noZfH/ | ||
inFlDmugu7wBPTJzyO4C87gZbhCC68jVT9dI3teuU51RAZPv+tGq1FJpAgMBAAGg | inFlDmugu7wBPTJzyO4C87gZbhCC68jVT9dI3teuU51RAZPv+tGq1FJpAgMBAAGg | ||
gdUwgdIGCSqGSIb3DQEJDjGBxDCBwTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DCB | gdUwgdIGCSqGSIb3DQEJDjGBxDCBwTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DCB | ||
- | pgYDVR0RBIGeMIGbgh9hdXRoLmdyb3VwZTEuc2VjdS51bml2LWx5b24xLmZygiFy | ||
- | ZWxvYWQuZ3JvdXBlMS5zZWN1LnVuaXYtbHlvbjEuZnKCIm1hbmFnZXIuZ3JvdXBl | ||
MS5zZWN1LnVuaXYtbHlvbjEuZnKCIHRlc3QxLmdyb3VwZTEuc2VjdS51bml2LWx5 | MS5zZWN1LnVuaXYtbHlvbjEuZnKCIHRlc3QxLmdyb3VwZTEuc2VjdS51bml2LWx5 | ||
b24xLmZygglsb2NhbGhvc3SHBKwSAAIwDQYJKoZIhvcNAQELBQADggEBABQIIt9E | b24xLmZygglsb2NhbGhvc3SHBKwSAAIwDQYJKoZIhvcNAQELBQADggEBABQIIt9E | ||
Ligne 90: | Ligne 89: | ||
Il est toujours utile de vérifier le contenu d'un certificat : | Il est toujours utile de vérifier le contenu d'un certificat : | ||
- | * pour un cer | + | * pour un certificat : |
- | | + | |
+ | | ||
+ | |||
+ | * pour une requête : | ||
+ | |||
+ | openssl req -in NOMFICHIER.csr -text |