.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "CONFIG 5SSL" .TH CONFIG 5SSL "2015-12-31" "1.0.2a 1.0.2c" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NOM" .IX Header "NOM" config \- Fichiers de configuration de la bibliothèque OpenSSL \s-1CONF\s0 .SH "DESCRIPTION" .IX Header "DESCRIPTION" La bibliothèque OpenSSL \s-1CONF\s0 permet de lire les fichiers de configuration. Elle est utilisée pour le fichier de configuration maître \&\fBopenssl.cnf\fR d’OpenSSL et dans quelques autres endroits comme les fichiers \&\fB\s-1SPKAC\s0\fR et fichiers d'extension de certificat pour l'utilitaire \&\fBx509\fR. Les applications d’OpenSSL peuvent également utiliser la bibliothèque \s-1CONF\s0 pour leurs propres fins. .PP Un fichier de configuration est divisé en plusieurs sections. Chaque section commence par une ligne \fB[ nom_section ]\fR et se termine quand une autre section commence ou quand la fin de fichier est atteinte. Un nom de section peut contenir des caractères alphanumériques et des caractères de soulignement. .PP La première section d'un fichier de configuration est spéciale et est appelée la section par défaut (« \fBdefault\fR »), qui n’est généralement pas nommée et commence au début du fichier jusqu'à la première section nommée. Quand un nom est recherché, il est d'abord recherché dans une section nommée (s’il y en a) puis dans la section par défaut. .PP L'environnement est projeté dans une section appelée \fB\s-1ENV\s0\fR. .PP Des commentaires peuvent être inclus, précédés du caractère \fB#\fR. .PP Chaque section d’un fichier de configuration se compose de plusieurs paires de la forme \fInom\fR\fB=\fR\fIvaleur\fR. .PP La chaîne \fInom\fR peut contenir des caractères alphanumériques ainsi que quelques symboles de ponctuation comme \fB,\fR \fB.\fR \fB;\fR et \fB_\fR. .PP La chaîne \fIvaleur\fR est composée de la chaîne qui suit le caractère \fB=\fR jusqu'à la fin de la ligne avec tous les espaces de début et de fin supprimés. .PP La chaîne \fIvaleur\fR subit un développement de variable. Cela peut être fait en utilisant la forme \fB$\fR\fInom\fR ou \fB${\fR\fInom\fR\fB}\fR : cela substituera la valeur de la variable nommée dans la présente section. Une valeur d'une autre section peut aussi être remplacée en utilisant la syntaxe \&\fB$\fR\fIsection\fR\fB::\fR\fInom\fR ou \fB${\fR\fIsection\fR\fB::\fR\fInom\fR\fB}\fR. Avec la forme \&\fB\f(CB$ENV::\fB\fR\fInom\fR, les variables d'environnement peuvent être substituées. Des valeurs peuvent aussi être attribuées aux variables d'environnement en utilisant le nom \fB\s-1ENV::\s0\fR\fInom\fR, cela fonctionnera si le programme recherche des variables d'environnement en utilisant la bibliothèque \fB\s-1CONF\s0\fR au lieu d'appeler \fBgetenv\fR() directement. .PP Certains caractères peuvent être protégés à l'aide de n'importe quel type de guillemet ou du caractère \fB\e\fR . Si le dernier caractère d'une ligne est \&\fB\e\fR, une chaîne \fIvaleur\fR peut être répartie sur plusieurs lignes. De plus, les suites \fB\en\fR, \fB\er\fR, \fB\eb\fR et \fB\et\fR sont reconnues. .SH "CONFIGURATION DE BIBLIOTHÈQUE OPENSSL" .IX Header "CONFIGURATION DE BIBLIOTHÈQUE OPENSSL" Depuis OpenSSL 0.9.7, les applications peuvent configurer automatiquement certains aspects d’OpenSSL en utilisant le fichier de configuration maître d’OpenSSL ou éventuellement un fichier de configuration alternatif. L'utilitaire \fBopenssl\fR comprend cette fonctionnalité : une sous-commande utilise le fichier de configuration maître d’OpenSSL sauf si une option est utilisée dans la sous-commande pour utiliser un fichier de configuration alternatif. .PP Pour activer la configuration de bibliothèque, la section par défaut doit contenir une ligne appropriée qui pointe vers la section de configuration principale. Le nom par défaut est \fBopenssl_conf\fR, ce qui est utilisé par l'utilitaire \fBopenssl\fR. D'autres applications peuvent utiliser un autre nom comme \fBMonApplication_conf\fR. .PP La section de configuration devrait être composée d'un ensemble de paires nom valeur contenant des informations spécifiques de configuration du module. Le \fInom\fR représente le nom du \fImodule de configuration\fR, la signification de la \fIvaleur\fR est spécifique au module : elle peut, par exemple, représenter une autre section de configuration contenant des informations de configuration spécifiques au module. Par exemple : .PP .Vb 1 \& openssl_conf = openssl_init \& \& [openssl_init] \& \& oid_section = nouveaux_oid \& engines = section_moteurs \& \& [nouveaux_oid] \& \& ... nouveaux oid ... \& \& [section_moteurs] \& \& ... ce qui concerne les moteurs ... .Ve .PP Les caractéristiques de chaque module de configuration sont décrites ci-dessous. .SS "\s-1MODULE DE CONFIGURATION\s0 D’OBJET \s-1ASN1\s0" .IX Subsection "MODULE DE CONFIGURATION D’OBJET ASN1" Ce module a le nom de \fBoid_section\fR. La valeur de cette variable pointe vers une section contenant des paires nom valeur d’OID : le nom est le nom court et long d’OID, la valeur est la forme numérique de l'\s-1OID.\s0 Bien que certaines sous-commandes de l’utilitaire \fBopenssl\fR ont déjà leur propre fonctionnalité de section d’OBJET \s-1ASN1,\s0 ce n’est pas le cas de toutes. En utilisant le module de configuration d’OBJET \s-1ASN1 \s0\fBall\fR, les sous-commandes de l’utilitaire \fBopenssl\fR peuvent voir les nouveaux objets ainsi que les applications compatibles. Par exemple : .PP .Vb 1 \& [nouveaux_oid] \& \& un_nouvel_oid = 1.2.3.4 \& un_autre_oid = 1.2.3.5 .Ve .PP Avec OpenSSL 0.9.8, la valeur peut aussi être définie au nom long suivi d'une virgule et de la forme numérique de l'\s-1OID.\s0 Par exemple : .PP .Vb 1 \& nomCourt = nom long d\*(Aqun objet, 1.2.3.4 .Ve .SS "\s-1MODULE DE CONFIGURATION DU MOTEUR\s0" .IX Subsection "MODULE DE CONFIGURATION DU MOTEUR" Ce module de configuration du \s-1MOTEUR\s0 a le nom \fBengines\fR. La valeur de cette variable pointe vers une section contenant des informations de configuration du moteur. .PP La section pointée par \fBengines\fR est un tableau de noms de moteur (consultez \fBengine_id\fR ci-dessous) et d'autres sections contenant les informations de configuration spécifiques à chaque \s-1MOTEUR.\s0 .PP Chaque section spécifique au \s-1MOTEUR\s0 est utilisée pour définir des algorithmes par défaut, charger dynamiquement, effectuer l'initialisation et envoyer des contrôles. Le fonctionnement réel effectué dépend du nom de la \&\fIcommande\fR qui est le nom de la paire nom valeur. Les commandes actuellement prises en charge sont répertoriées ci-dessous. .PP Par exemple : .PP .Vb 1 \& [section_moteurs] \& \& # Configurer le MOTEUR nommé « truc » \& truc = section_truc \& # Configurer le MOTEUR nommé « bidule » \& bidule = section_bidule \& \& [section_truc] \& ... commandes spécifiques au MOTEUR truc ... \& \& [section_bidule] \& ... commandes spécifiques au MOTEUR bidule ... .Ve .PP La commande \fBengine_id\fR est utilisée pour donner le nom du \s-1MOTEUR.\s0 Si utilisée, cette commande doit être la première. Par exemple : .PP .Vb 3 \& [section_moteurs] \& # Cela devrait normalement gérer un MOTEUR nommé « truc » \& truc = section_truc \& \& [section_truc] \& # Remplacer le nom par défaut et utiliser « montruc » à la place. \& engine_id = montruc .Ve .PP La commande \fBdynamic_path\fR charge et ajoute un \s-1MOTEUR\s0 à partir du chemin donné. Elle est équivalente à l'envoi des contrôles \fB\s-1SO_PATH\s0\fR avec l'argument de chemin suivi par \fB\s-1LIST_ADD\s0\fR avec la valeur 2 et \fB\s-1LOAD\s0\fR au \&\s-1MOTEUR\s0 dynamique. Si ce n'est pas le comportement voulu, des contrôles alternatifs peuvent être envoyés directement au \s-1MOTEUR\s0 dynamique en utilisant les commandes de contrôle. .PP La commande \fBinit\fR détermine s'il faut initialiser le moteur. Si la valeur est \fB0\fR, le moteur ne sera pas initialisé ; si \fB1\fR, une tentative immédiate d’initialiser le moteur est réalisée. Si la commande \fBinit\fR n'est pas présente, alors une tentative d’initialiser le moteur sera effectuée après le traitement de toutes les commandes de la section. .PP La commande \fBdefault_algorithms\fR définit les algorithmes par défaut qu’un \&\s-1MOTEUR\s0 fournira en utilisant les fonctions \fBENGINE_set_default_string\fR() .PP Si le nom ne correspond à aucun des noms de commande ci-dessus, il est supposé être une commande de contrôle envoyée au moteur. La valeur de la commande est l'argument de la commande de contrôle. Si la valeur est la chaîne \fB\s-1EMPTY\s0\fR, alors aucune valeur n'est envoyée à la commande. .PP Par exemple : .PP .Vb 1 \& [section_moteurs] \& \& # Configurer le MOTEUR nommé « truc » \& truc = section_truc \& \& [section_truc] \& # Charger le moteur à partir du DSO \& dynamic_path = /chemin/vers/moteur_truc.so \& # Un contrôle spécifique à truc \& un_ctrl = une_valeur \& # Un autre contrôle qui ne prend pas de valeur \& autre_ctrl = EMPTY \& # Fournir tous les algorithmes par défaut \& default_algorithms = ALL .Ve .SS "\s-1MODULE DE CONFIGURATION EVP\s0" .IX Subsection "MODULE DE CONFIGURATION EVP" Ce module porte le nom de \fBalg_section\fR qui pointe vers une section contenant les commandes d’algorithme. .PP Actuellement, la seule commande d’algorithme prise en charge est \&\fBfips_mode\fR dont la valeur devrait être une valeur booléenne telle que \&\fIon\fR ou \fIoff\fR. Si la valeur est \fIon\fR, cela entreprendra l’entrée en mode \&\s-1FIPS.\s0 Si l’appel échoue ou si la bibliothèque n’est pas compatible avec \&\s-1FIPS,\s0 une erreur surviendra. .PP Par exemple : .PP .Vb 1 \& alg_section = evp_settings \& \& [evp_settings] \& \& fips_mode = on .Ve .SH "NOTES" .IX Header "NOTES" Si un fichier de configuration tente de développer une variable qui n'existe pas, une erreur est signalée et le fichier ne sera pas chargé. Cela peut se produire si une tentative de développement de variable d’environnement inexistante est réalisée. Par exemple, dans une version précédente d’OpenSSL, le fichier de configuration maître par défaut utilisait la valeur de \fB\s-1HOME\s0\fR qui peut ne pas être définie sur les systèmes non \s-1UNIX\s0 et ainsi provoquer une erreur. .PP Cela peut être contourné en incluant une section \fBdefault\fR pour fournir une valeur par défaut : alors, si la recherche d’environnement échoue, la valeur par défaut sera utilisée à la place. Pour que cela fonctionne correctement la valeur par défaut doit être définie avant le développement dans le fichier de configuration. Consultez la section \fB\s-1EXEMPLES\s0\fR pour un exemple sur la façon de procéder. .PP Si une même variable est présente plusieurs fois dans la même section, alors elles seront toutes ignorées silencieusement sauf la dernière valeur. Dans certains cas, par exemple avec \s-1DN,\s0 le même champ peut se présenter plusieurs fois. Cela est habituellement contourné en ignorant tous les caractères précédant le premier \fB.\fR, par exemple .PP .Vb 2 \& 1.OU="Premier OU" \& 2.OU="Second OU" .Ve .SH "EXEMPLES" .IX Header "EXEMPLES" Voici un exemple de fichier de configuration utilisant certaines caractéristiques mentionnées précédemment. .PP .Vb 1 \& # Section par défaut \& \& HOME=/temp \& RANDFILE= ${ENV::HOME}/.rnd \& configdir=$ENV::HOME/config \& \& [ première_section ] \& \& # Contenu de la première section \& \& # Les guillemets permettent des espaces au début et à la fin \& truc = " n’importe quel nom de variable " \& \& bidule = Une chaîne qui peut \e \& s’étendre sur plusieurs lignes \e \& en incluant des caractères \e\e. \& \& message = Bonjour tout le monde\en \& \& [ deuxième_section ] .Ve .PP salutation = \f(CW$première_section::message\fR .PP L'exemple suivant montre comment développer les variables d'environnement en toute sécurité. .PP Soit une variable appelée \fBtmpfile\fR référant un nom de fichier temporaire. Le répertoire dans lequel il est placé peut être déterminé par les variables d'environnement \fB\s-1TEMP\s0\fR ou \fB\s-1TMP\s0\fR, mais aucune valeur ne peut leur être attribuée. Si vous incluez seulement les noms de variables d'environnement et que la variable n'existe pas, cela provoquerait une erreur lorsqu'une tentative de chargement du fichier de configuration est effectuée. En utilisant la section par défaut, les deux valeurs peuvent être recherchées avec \fB\s-1TEMP\s0\fR, en priorité, et \fB/tmp\fR utilisé si aucune n'est définie : .PP .Vb 5 \& TMP=/tmp \& # Valeur ci\-dessus utilisée si TMP n\*(Aqest pas dans l\*(Aqenvironnement \& TEMP=$ENV::TMP \& # Valeur ci\-dessus utilisée si TEMP n\*(Aqest pas dans l\*(Aqenvironnement \& tmpfile=${ENV::TEMP}/tmp.nom_fichier .Ve .PP Exemple de configuration de la bibliothèque OpenSSL pour entrer dans le mode \&\s-1FIPS :\s0 .PP .Vb 3 \& # Nom_appli par défaut doit correspondre au param « nom_appli » \& # (s’il existe) fourni à CONF_modules_load_file, etc. \& openssl_conf = openssl_conf_section \& \& [openssl_conf_section] \& # liste de modules de configuration \& alg_section = evp_sect \& \& [evp_sect] \& # Défini à « yes » pour entrer dans le mode FIPS si pris en charge \& fips_mode = yes .Ve .PP Remarque : dans l’exemple ci-dessus, une erreur surviendra pour les versions d’OpenSSL n’acceptant pas \s-1FIPS.\s0 .PP Configuration de bibliothèque OpenSSL plus complexe. Ajout d’OID et ne pas entrer en mode \s-1FIPS :\s0 .PP .Vb 3 \& # Nom_appli par défaut doit correspondre au param « nom_appli » \& # (s’il existe) fourni à CONF_modules_load_file, etc. \& openssl_conf = openssl_conf_section \& \& [openssl_conf_section] \& # liste de modules de configuration \& alg_section = evp_sect \& oid_section = new_oids \& \& [evp_sect] \& # Ceci sera sans effet car le mode FIPS par défaut est non activé. \& # Défini à « yes » pour entrer dans le mode FIPS si pris en charge \& fips_mode = no \& \& [new_oids] \& # Nouvel OID, nom court \& newoid1 = 1.2.3.4.1 \& # Nouvel OID, noms court et long \& newoid2 = New OID 2 long name, 1.2.3.4.2 .Ve .PP Les exemples ci-dessus peuvent être utilisés avec toute application prenant en charge la configuration de bibliothèque si « openssl_conf » est modifié pour correspondre au « nom_appli » adéquat. .PP Par exemple, si le second fichier exemple ci-dessus est sauvegardé dans « example.cnf », alors la ligne de commande : .PP .Vb 1 \& OPENSSL_CONF=example.cnf openssl asn1parse \-genstr OID:1.2.3.4.1 .Ve .PP produira : .PP .Vb 1 \& 0:d=0 hl=2 l= 4 prim: OBJECT :newoid1 .Ve .PP montrant que l’OID « newoid1 » a été ajouté en tant que « 1.2.3.4.1 ». .SH "BOGUES" .IX Header "BOGUES" Actuellement, aucun moyen ne permet d'inclure des caractères à l'aide de la forme octale \fB\ennn\fR. Les chaînes sont toutes terminées par \s-1NULL\s0 donc \s-1NULL\s0 ne peut pas faire partie de la valeur. .PP La protection n'est pas tout à fait correcte : si vous voulez utiliser des suites comme \fB\en\fR, vous ne pouvez pas utiliser de guillemets de protection sur la même ligne. .PP Les fichiers sont chargés en une seule passe. Cela signifie qu’un développement de variable ne fonctionnera que si les variables référencées sont définies précédemment dans le fichier. .SH "VOIR AUSSI" .IX Header "VOIR AUSSI" \&\fBca\fR(1), \fBreq\fR(1), \fBx509\fR(1) .SH "TRADUCTION" .IX Header "TRADUCTION" La traduction de cette page de manuel est maintenue par les membres de la liste . Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.