\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{geometry}
\geometry{top=15mm, bottom=15mm, left=1cm, right=1cm}
\usepackage[french]{babel}
\usepackage{pslatex}
\usepackage[colorlinks=true,urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[L]{Uubu.fr}
\fancyfoot[R]{ven. juin 20 12:59:31 CEST 2014}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={kdc.conf},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Fichier de configuration des services Kerberos},
CreationDate={D:20140620125931},
ModDate={D:20140620125931},
Keywords={Kerberos;sécurité;authentification}
}}
\begin{document}
 
\begin{center}
{\Huge kdc.conf }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Fichier de configuration des services Kerberos}
 
\vspace{10mm}
 
\hspace{1mm}  Ce fichier est un supplément à krb5.conf et est utilisé uniquement dans les KDC. Normalement, kdc.conf se trouve dans le répertoire d'état du KDC, \textbf{LOCALSTATEDIR/krb5kdc} mais peut être changé dans la variable \textbf{KRB5\_KDC\_PROFILE}. Noter qu'il faut redémarrer les services kdc pour prendre en comptes les changements.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Structure }
 
\
 
\hspace{1mm}  Les noms de sections sont entre crochets, chaque section peut contenir 0 ou plusieurs relations, sous la forme:
\vspace{5mm} \\
\hspace{1mm}  \textbf{foo = bar}
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Sections }
 
\
 
\hspace{1mm}  Le fichier kdc.conf peut contenir les sections suivantes:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} \texttt{[}kdcdefaults\texttt{]}]{Valeurs par défaut pour le fonctionnement du KDC}
\item[\hspace{1mm} \texttt{[}realms\texttt{]}]{Configuration et paramètres de base de données spécifique au domaine}
\item[\hspace{1mm} \texttt{[}dbdefaults\texttt{]}]{Paramètres de base de données par défaut}
\item[\hspace{1mm} \texttt{[}dbmodules\texttt{]}]{Paramètres par base de données}
\item[\hspace{1mm} \texttt{[}logging\texttt{]}]{Contrôle les logs des services Kerberos}
\end{description}
 
\vspace{1cm}{\huge [kdcdefaults] }
 
\
 
\hspace{1mm}  À une exception près, les relations dans cette section spécifient les valeur par défaut pour les variable du domaine à utiliser si la sous-section [realms] ne contient par de relation pour le tag.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} host\_based\_services]{}
\item[\hspace{1mm} kdc\_ports]{}
\item[\hspace{1mm} kdc\_tcp\_ports]{}
\item[\hspace{1mm} no\_host\_referral]{}
\item[\hspace{1mm} restrict\_anonymous\_to\_tgt]{}
\item[\hspace{1mm} kdc\_max\_dgram\_reply\_size]{Spécifie la taille de packet maximum que peut être envoyé en UDP. Défaut: 4096}
\end{description}
 
\vspace{1cm}{\huge [realms] }
 
\
 
\hspace{1mm}  Chaque tag dans cette section est le nom d'un domaine Kerberos. La valeur du tag est une sous-section où les relations définissent les paramètres du KDC pour ce domaine. L'exemple suivant montre comment définir un paramètre pour le domaine ATHENA.MIT.EDU:
\vspace{5mm} \\
 
 
{\ttfamily
\texttt{[}realms\texttt{]}\\ \hspace{2mm}ATHENA.MIT.EDU = \{\\ \hspace{2mm}\hspace{2mm}max\_renewable\_life = 7d 0h 0m 0s\\ \hspace{2mm}\}\\
}
\vspace{8mm}
 
\begin{description} \normalsize
\item[\hspace{1mm} acl\_file]{(chaîne). Emplacement du fichier d'acl que kadmind utilise pour déterminer quels principaux ont un accès privilégié à la base. Défaut: \textbf{LOCALSTATEDIR/krb5kdc.acl}}
\item[\hspace{1mm} database\_module]{(chaîne). Indique le nom de la section de configuration sous [dbmodules] pour les paramètres spécifiques à la base utilisé par la librairie. Défaut: le nom du domaine.}
\item[\hspace{1mm} database\_name]{(chaîne, déprécié) Spécifie l'emplacement de la base Kerberos pour ce domaine, si DB2 est utilisé et que la section de configuration [dbmodules] ne spécifie par un nom de base. Défaut: \textbf{LOCASTATEDIR/krb5kdc/principal}}
\item[\hspace{1mm} default\_principal\_expiration]{(chaîne, temps absolu). Spécifie le temps d'expiration par défaut des principaux créés dans ce domaine. Défaut: 0 qui signifie aucune expiration.}
\item[\hspace{1mm} default\_principal\_flags]{(Chaîne) Spécifie les attributs par défaut des principaux crées dans ce domaine. Le format est une liste de flags séparés par une ",", avec un "+" avant chaque flag à ajouter, et "-" à enlever. Défaut: les flag suivant sont permis \textbf{postdateable, forwardable, tgt-based, renewable, proxiable, dup-skey, allow-tickets, et service}. Les flags possibles sont:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} allow-tickets]{Le KDC va fournir de tickets pour ce principal}
\item[\hspace{6mm} dup-skey]{permet au principal d'obtenir une clé de session pour un autre utilisateur.}
\item[\hspace{6mm} forwardable]{Permet au principal d'obtenir des tickets forwardable}
\item[\hspace{6mm} hwauth]{Le principal doit utiliser un périphérique hardware pour la pré-authentification}
\item[\hspace{6mm} no-auth-data-required]{Empêche les données PAC et AD-SIGNEDPATH d'être ajoutés au ticket de service pour le principal}
\item[\hspace{6mm} ok-as-delegate]{Indique au client que les accréditifs peuvent et devraient être délégués en s'authentifiant auprès du service}
\item[\hspace{6mm} ok-to-auth-as-delegate]{Permet au principal d'utiliser des tickets S4USelf}
\item[\hspace{6mm} postdateable]{Permet au principal d'obtenir des tickets post-datés.}
\item[\hspace{6mm} preauth]{Le principal doit de pré-authentifier auprès du KDC avant de recevoir un ticket. Pour un principal de service, cela signifie que les tickets de service pour ce principal seront uniquement fournis aux clients avec un TGT qui a le bit preauthenticated mis.}
\item[\hspace{6mm} proxiable]{Permet au principal d'obtenir des tickets proxy}
\item[\hspace{6mm} pwchange]{Force le changement de mot de passe pour ce principal}
\item[\hspace{6mm} pwservice]{Marque ce principal comme service de changement de mot de passe. Devrait être utilisé uniquement dans des cas spéciaux, par exemple, si le mot de passe de l'utilisateur a expiré, alors l'utilisateur doit obtient des tickets pour ce principal sans passer par une authentification normal par mot de passe pour pouvoir changer le mot de passe.}
\item[\hspace{6mm} renewable]{Permet au principal d'obtenir des tickets renouvelable.}
\item[\hspace{6mm} service]{Permet au KDC de fournir des tickets de service pour ce principal}
\item[\hspace{6mm} tgt-based]{Permet au principal d'obtenir des tickets basés sur un TGT au lieu de répéter le process d'authentification utilisé pour obtenir ce TGT.}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{1mm} dict\_file]{(chaîne) Emplacement du fichier dictionnaire contenant les chaînes non permises pour un mot de passe.}
\item[\hspace{1mm} host\_based\_services]{(liste séparée par des espaces ou des virgules) Liste des services qui vont obtenir un traitement des référants basés sur l'hôte même si le principal du serveur n'est pas marqué comme basé sur l'hôte par le client.}
\item[\hspace{1mm} iprop\_enable]{(bool) Spécifie si la propagation incrémentale de la base est permise. Défaut: false.}
\item[\hspace{1mm} iprop\_master\_ulogsize]{(entier) Spécifie le nombre max d'entrées de log à retenir pour la propagation incrémentale. max: 2500, défaut: 1000}
\item[\hspace{1mm} iprop\_slave\_poll]{(chaîne de temps delta) Spécifie la fréquence des mises à jours les esclaves auprès du maître. Défaut: 2m (minutes)}
\item[\hspace{1mm} iprop\_port]{(numéro de port) Spécifie le numéro de port à utiliser pour la propagation incrémentale. Requis dans les configuration des maître et esclaves.}
\item[\hspace{1mm} iprop\_resync\_timeout]{(chaîne de temps delta). Spécifie le temps d'attente pour une propagation complète. Optionnel et est utilisé par les esclaves uniquement. Défaut: 5m.}
\item[\hspace{1mm} iprop\_logfile]{(Nom de fichier) Spécifie où se situe le fichier de log des mises à jours. Par défaut, utilise \textbf{database\_name.ulog}}
\item[\hspace{1mm} kadmind\_port]{(numéro de port) Port d'écoute du service kadmind. Défaut: 749}
\item[\hspace{1mm} key\_stash\_file]{(chaîne) Spécifie l'emplacement du fichier stash. Défaut: \textbf{LOCALSTATEDIR/krb5kdc/.k5.REALM}.}
\item[\hspace{1mm} kdc\_ports]{(liste séparée par des espaces ou des virgules) Liste de ports d'écoute du serveur Kerberos pour les requêtes UDP. Défaut: 88,750}
\item[\hspace{1mm} kdc\_tcp\_ports]{(liste séparée par des espaces ou des virgules) Liste de ports d'écoute du serveur Kerberos pour les requêtes TCP (Défaut: 88).}
\item[\hspace{1mm} master\_key\_name]{(chaîne) Spécifie le nom du principal associé avec la clé maître. Défaut: K/M}
\item[\hspace{1mm} master\_key\_type]{(Chaîne de type de clé) Spécifie le type de clé maître. Défaut: aes256-cts-hmac-sha1-96.}
\item[\hspace{1mm} max\_life]{(chaîne de temps) Spécifie le temps maximum pour lequel un ticket peut être valide dans le domaine. Défaut: 24heures.}
\item[\hspace{1mm} max\_renewable\_life]{(chaîne de temps) Spécifie le temps maximum durant lequel un ticket valide peut être renouvelé dans ce domaine. Défaut: 0}
\item[\hspace{1mm} no\_host\_referral]{(liste séparée par des espaces ou des virgules) Liste}
\item[\hspace{1mm} des\_crc\_session\_supported]{(bool) À true, le KDC assume que les principaux de service supportent des-cbc-crc pour les type de clé de session. Défaut: true.}
\item[\hspace{1mm} reject\_bad\_transit]{(bool) À true, le KDC vérifie la liste des domaines de transit pour les tickets inter-domaines avec le chemin de transit calculé depuis les noms des domaines et la section capaths de son fichier krb5.conf; si le chemin dans le ticket contient un domaine qui n'est pas dans le chemin calculé, le ticket ne sera pas délivré. Si cette valeur est à false, de tels tickets seront toujours émis. si le flag \textbf{disable-transited-check} est mis dans la requête entrante, cette vérification n'est pas effectuée. L'option \textbf{reject\_bad\_transit} force de telles requête à être toujours rejetées. Défaut: true}
\item[\hspace{1mm} restrict\_anonymous\_to\_tgt]{(bool) À true, le KDC rejète les demandes de tickets pour des principaux anonymes au principaux de service autre que le domaine du TGS. Cette option permet les PKINIT anonymes pour les tickets FAST sans autoriser l'authentification anonyme aux services. Défaut: false.}
\item[\hspace{1mm} supported\_enctypes]{(liste de key:salt) Spécifie les combinaisons key/salt par défaut des principaux pour ce domaine. Tout principal créé via kadmin aura des clé de ce type. Défaut: \textbf{aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal des3-cbc-sha1:normal arcfour-hmac-md5:normal}.}
\end{description}
 
\vspace{1cm}{\huge [dbdefaults] }
 
\
 
\hspace{1mm}  Cette section spécifie les valeur par défaut pour certains paramètres de base, à utiliser si la sous-section dbmodules ne contient pas de relation pour ce tag.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} ldap\_kerberos\_container\_dn]{}
\item[\hspace{1mm} ldap\_kdc\_dn]{}
\item[\hspace{1mm} ldap\_kadmind\_dn]{}
\item[\hspace{1mm} ldap\_service\_password\_file]{}
\item[\hspace{1mm} ldap\_servers]{}
\item[\hspace{1mm} ldap\_conns\_per\_server]{}
\end{description}
 
\vspace{1cm}{\huge [dbmodules] }
 
\
 
\hspace{1mm}  Cette section contient des paramètres utilisés par les bases du KDC et les modules. Chaque tag dans cette section est le nom d'un domaine Kerberos ou un nom de section spécifié par le paramètre \textbf{database\_module} du domaine. L'exemple suivant montre comment définir un paramètre de base pour le domaine ATHENA.MIT.EDU:
\vspace{5mm} \\
 
 
\hspace{1mm} [dbmodules]
 
{\ttfamily
\hspace{2mm}ATHENA.MIT.EDU = \{\\ \hspace{2mm}\hspace{2mm}disable\_last\_success = true\\ \hspace{2mm}\}\\
}
\vspace{8mm}
 
\begin{description} \normalsize
\item[\hspace{1mm} database\_name]{Ce tag spécifique à db2 indique l'emplacement de la base dans le système de fichier. Défaut: LOCALSTATEDIR/krb5kdc/principal}
\item[\hspace{1mm} db\_library]{Indique le nom du module de base à charger. peut être \textbf{db2} ou \textbf{kldap}}
\item[\hspace{1mm} disable\_last\_success]{À true, supprime les mises à jours KDC du champ "last successful authentication" des entrées de principal nécessitant une pré-authentification. Positionner ce flag peut améliorer les performances. (Les entrées de principal qui ne nécessitent par de pré-authentification ne mettent jamais ce champ)}
\item[\hspace{1mm} disable\_lockout]{À true, supprime les champs "last failed authentication" et "failed password attempts" des entrées de principal nécessitant une pré-authentification. peut améliorer les performances.}
\item[\hspace{1mm} ldap\_conns\_per\_server]{Indique le nombre de connexios à maintenir par serveur LDAP}
\item[\hspace{1mm} ldap\_kadmind\_dn]{Indique le bind DN par défaut pour le service kadmind. Cet objet devrait avoir les droits de lire et écrire dans la base Kerberos dans la base LDAP.}
\item[\hspace{1mm} ldap\_kdc\_dn]{Indique le bind DN par défaut pour le service krb5kdc. Cet objet devrait avoir les droits de lire dans la base Kerberos dans la base LDAP et d'écrire les données sauf si \textbf{disable\_lockout} et \textbf{disable\_last\_success} sont à true.}
\item[\hspace{1mm} ldap\_kerberos\_container\_dn]{Indique le DN de l'objet conteneur où les objets de domaine sont localisés.}
\item[\hspace{1mm} ldap\_servers]{Liste les serveur LDAP à contacter.}
\item[\hspace{1mm} ldap\_service\_password\_file]{Indique le fichier contenant les mots de passe stashed (créés par kdb5\_ldap\_util stashsrvpw) pour les objets \textbf{ldap\_kadmind\_dn} et \textbf{ldap\_kdc\_dn}.}
\item[\hspace{1mm} db\_module\_dir]{contrôle l'emplacement les modules de base de données. devrait être un chemin absolu. Ce tag pour être spécifié directement dans la section dbmodules.}
\end{description}
 
\vspace{1cm}{\huge [logging] }
 
\
 
\hspace{1mm}  Cette section indique comment krb5kdc et kadmind effectuent les logs. Les clés dans cette section sont les noms des services, qui peut être un parmi:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} admin\_server]{Spécifie comment kadmind effectue les logs}
\item[\hspace{1mm} kdc]{Spécifie comment krb5kdc effectue les logs}
\item[\hspace{1mm} default]{Spécifie comment les 2 services effectuent les logs.}
\end{description}
 
\hspace{1mm}  Les valeurs sont sous la forme suivante:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} FILE=filename ou FILE:filename]{Log les messages dans le fichier spécifié. si la 1ère forme est utilisée, le fichier est écrasé.}
\item[\hspace{1mm} STDERR]{Log les message sur stderr}
\item[\hspace{1mm} CONSOLE]{Log les messages dans la console}
\item[\hspace{1mm} DEVICE=<devicename>]{Log les messages dans le périphérique spécifié}
\item[\hspace{1mm} SYSLOG\texttt{[}:severity\texttt{[}:facility\texttt{]}\texttt{]}]{Los les messages dans syslog}
\end{description}
 
\hspace{1mm} Dans l'exemple suivant, les messages du KDC vont dans la console et dans syslog. Les messages de kadmind vont dans /var/adm/kadmin.log et dans le périphérique /dev/tty04
 
{\ttfamily
\texttt{[}logging\texttt{]}\\ \hspace{2mm}kdc = CONSOLE\\ \hspace{2mm}kdc = SYSLOG:INFO:DAEMON\\ \hspace{2mm}admin\_server = FILE:/var/adm/kadmin.log\\ \hspace{2mm}admin\_server = DEVICE=/dev/tty04\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge [otp] }
 
\
 
\hspace{1mm}  Chaque sous-section de [opt] est le nom du type de token OTP. Les tags dans la sous-section définis la configuration requise pour forwarder une requête OTP au serveur radius. Pour chaque type de token, les tags suivants peuvent être spécifiés:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} server]{Serveur où envoyer les requêtes RADIUS. Peut être un nom d'hôte et un port optionnel, une adresse IP ou un socket UNIX. Défaut LOCALSTATEDIR/krb5kdc/<name>.socket}
\item[\hspace{1mm} secret]{Indique le fichier qui peut être relatif à LOCALSTATEDIR/krb5kdc contenant le secret utilisé pour chiffré les packets RADIUS. Le secret devrait apparaître sur la première ligne du fichier. Si \textbf{server} indique un socket unix, ce tag est optionnel.}
\item[\hspace{1mm} timeout]{Entier qui spécifie le temps en secondes durant lequel de KDC devrait attendre pour contacter le serveur RADIUS. Ce tag est le temps total entre toutes les tentatives et devrait être inférieur au temps de validité de l'OTP. Défaut: 5 secondes}
\item[\hspace{1mm} retries]{Nombre de re-tentatives auprès du serveur RADIUS. Défaut: 3}
\item[\hspace{1mm} strip\_realm]{À true, le principal sans le domaine sera passé au serveur RADIUS, sinon le domaine est inclus. Défaut: true.}
\end{description}
 
\hspace{1mm} Dans l'exemple suivant, les requêtes sont envoyées à un serveur distant via UDP:
 
{\ttfamily
\texttt{[}otp\texttt{]}\\ \hspace{2mm}MyRemoteTokenType = \{\\ \hspace{2mm}\hspace{2mm}server = radius.mydomain.com:1812\\ \hspace{2mm}\hspace{2mm}secret = SEmfiajf42\$\\ \hspace{2mm}\hspace{2mm}timeout = 15\\ \hspace{2mm}\hspace{2mm}retries = 5\\ \hspace{2mm}\hspace{2mm}strip\_realm = true\\ \hspace{2mm}\}\\
}
\vspace{8mm}
 
\hspace{1mm} Un token par défaut implicite nommé DEFAULT est définis pour les type de token non spécifiés. Sa configuration est décrite ci-dessous.
 
{\ttfamily
\texttt{[}otp\texttt{]}\\ \hspace{2mm}DEFAULT = \{\\ \hspace{2mm}\hspace{2mm}strip\_realm = false\\ \hspace{2mm}\}\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Options PKINIT }
 
\
 
\hspace{1mm}  Cet valeurs peuvent être spécifiées dans [kdcdefaults] comme valeur par défaut, ou dans une sous-section de [realms]. Noter qu'une valeur spécifique à un domaine remplace, n'ajoute pas, une spécification kdcdefaults. L'ordre de recherche est:
\vspace{5mm} \\
 
 
\hspace{1mm} 1. sous-section de [realms]:
 
{\ttfamily
\hspace{2mm}\texttt{[}realms\texttt{]}\\ \hspace{2mm}\hspace{2mm}EXAMPLE.COM = \{\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}pkinit\_anchors = FILE:/usr/local/example.com.crt\\ \hspace{2mm}\hspace{2mm}\}\\
}
\vspace{8mm}
 
\hspace{1mm} 2. Valeur générique dans la section [kdcdefaults]:
 
{\ttfamily
\hspace{2mm}\texttt{[}kdcdefaults\texttt{]}\\ \hspace{2mm}\hspace{2mm}pkinit\_anchors = DIR:/usr/local/generic\_trusted\_cas/\\
}
\vspace{8mm}
 
\begin{description} \normalsize
\item[\hspace{1mm} pkinit\_anchors]{Spécifie l'emplacement des certificats de confiance racine que le client utilise pour signer les certificats KDC. Peut être spécifié plusieurs fois.}
\item[\hspace{1mm} pkinit\_dh\_min\_bits]{Taille de la clé Diffie-Hellman que le client va tenter d'utiliser. les valeur acceptable sont 1024, 2048 (défaut), et 4096.}
\item[\hspace{1mm} pkinit\_allow\_upn]{Spécifie que le KDC est prêt à accepter les certificats client avec un SAN UPN. Défaut: false. Sans cette option, le KDC accepte uniquement les certificats avec id-pkinit-san comme définis dans la rfc4556. Il n'y a actuellement aucune option pour désactiver la vérification SAN dans le KDC.}
\item[\hspace{1mm} pkinit\_eku\_checking]{spécifie quelle valeur d'Extended Key Usage le KDC est prêt à accepter dans les certificats client. Les valeurs reconnues sont:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} kpClientAuth]{C'est la valeur par défaut et spécifie que les certificats client doivent avoir le id-pkinit-KDKdc EKU comme définis dans la rfc4556.}
\item[\hspace{6mm} scLogin]{Les certificats client avec id-ms-sc-logon seront acceptés}
\item[\hspace{6mm} none]{Les certificats client ne seront pas vérifiés pour un EKU acceptable.}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{1mm} pkinit\_identity]{Spécifie l'emplacement des information d'identité X.509 du KDC. Cette option est requise si pkinit est supportée par le KDC}
\item[\hspace{1mm} pkinit\_kdc\_ocsp]{Spécifie l'emplacement de l'OCSP du KDC}
\item[\hspace{1mm} pkinit\_mapping\_file]{Spécifie le nom du fichier de mappage d'acl pkinit. Ce fichier map les principaux aux certificats qu'ils utilisent.}
\item[\hspace{1mm} pkinit\_pool]{Spécifie l'emplacement des certificats intermédiaires qui peuvent être utilisés par le KDC pour compléter le chaîne. Peut être spécifiée plusieurs fois}
\item[\hspace{1mm} pkinit\_revoke]{Spécifie l'emplacement de la CRL. Peut être spécifié plusieurs fois}
\item[\hspace{1mm} pkinit\_require\_crl\_checking]{Spécifie que la vérification de révocation est requise.}
\end{description}
 
\vspace{1cm}{\huge Types de chiffrement }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} des-cbc-crc]{DES cbc mode avec CRC-32 (weak)}
\item[\hspace{1mm} des-cbc-md4]{DES cbc mode avec RSA-MD4 (weak)}
\item[\hspace{1mm} des-cbc-md5]{DES cbc mode avec RSA-MD5 (weak)}
\item[\hspace{1mm} des-cbc-raw]{DES cbc mode raw (weak)}
\item[\hspace{1mm} des3-cbc-raw]{Triple DES cbc mode raw (weak)}
\item[\hspace{1mm} des3-cbc-sha1 des3-hmac-sha1 des3-cbc-sha1-kd]{Triple DES cbc mode avec HMAC/sha1}
\item[\hspace{1mm} des-hmac-sha1]{DES avec HMAC/sha1 (weak)}
\item[\hspace{1mm} aes256-cts-hmac-sha1-96 aes256-cts AES-256]{CTS mode avec 96-bit SHA-1 HMAC}
\item[\hspace{1mm} aes128-cts-hmac-sha1-96 aes128-cts AES-128]{CTS mode avec 96-bit SHA-1 HMAC}
\item[\hspace{1mm} arcfour-hmac rc4-hmac arcfour-hmac-md5]{RC4 avec HMAC/MD5}
\item[\hspace{1mm} arcfour-hmac-exp rc4-hmac-exp arcfour-hmac-md5-exp]{Exportable RC4 avec HMAC/MD5 (weak)}
\item[\hspace{1mm} camellia256-cts-cmac camellia256-cts]{Camellia-256 CTS mode avec CMAC}
\item[\hspace{1mm} camellia128-cts-cmac camellia128-cts]{Camellia-128 CTS mode avec CMAC}
\item[\hspace{1mm} des]{Fammille DES: des-cbc-crc, des-cbc-md5, and des-cbc-md4 (weak)}
\item[\hspace{1mm} des3]{Famille triple DES: des3-cbc-sha1}
\item[\hspace{1mm} aes]{Famille AES: aes256-cts-hmac-sha1-96 and aes128-cts-hmac-sha1-96}
\item[\hspace{1mm} rc4]{Famille RC4: arcfour-hmac}
\item[\hspace{1mm} camellia]{Famille Camellia: camellia256-cts-cmac and camellia128-cts-cmac}
\end{description}
 
\hspace{1mm}  La chaîne \textbf{DEFAULT} peut être utilisé pour les type de jeu par défaut pour les variables en question. Les types ou familles peuvent être supprimées de la liste courante en les préfixant avec un "-". Les types ou familles peuvent être préfixés avec un "+" pour la symétrie; il a la même signification que simplement lister le type ou la famille. Par exemple, \textbf{DEFAULT -des} sera le jeu de chiffrement par défaut avec les types DES supprimés, et \textbf{des3 DEFAULT} sera le jeu de chiffrement par défaut avec triple DES supprimé.
\vspace{5mm} \\
 
 
\hspace{1mm}  Alors que \textbf{aes128-cts} et \textbf{aes256-cts} sont supportés pour toutes les opérations Kerberos, ils ne sont pas supportés par d'anciennes versions de l'implémentation GSS-API.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Listes de keysalt }
 
\
 
\hspace{1mm}  Les clés Kerberos pour les utilisateurs sont généralement dérivés des mots de passe. Les commandes et les paramètres de configuration Kerberos qui affectent la génération de clés prennent la liste des paires enctype-salttype, appelés "liste keysalt". Chaque paire keysalt est un nom de type de chiffrement suivi par un nom de salttype, dans le format enc:salt. Par exemple:
\vspace{5mm} \\
\hspace{1mm}  \textbf{kadmin -e aes256-cts:normal,aes128-cts:normal}
\vspace{5mm} \\
\hspace{1mm}  va lancer kadmin pour qu'il génère par défaut des clé dérivés pour les types de chiffrement \textbf{aes256-cts} et \textbf{aes128-cts}, en utilisant un salt \textbf{normal}.
\vspace{5mm} \\
 
 
\hspace{1mm}  Pour s'assurer que les gens qui utilisent le même mot de passe n'aient pas la même clé, Kerberos 5 incorpore plus d'informations dans la clé en utilisant un salt. Les types de salt supportés sont les suivant:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} normal]{Défaut pour Kerberos v5}
\item[\hspace{1mm} v4]{Utilisé uniquement par Kerberos v4 (pas de salt)}
\item[\hspace{1mm} norealm]{Idem au défaut, sans utiliser d'information de domaine.}
\item[\hspace{1mm} onlyrealm]{Utilise seulement les information de domaine comme salt}
\item[\hspace{1mm} afs3]{AFS version 3, utilisé uniquement pour la compatibilité avec Kerberos v4}
\item[\hspace{1mm} special]{Génère un salt aléatoire.}
\end{description}
 
\vspace{1cm}{\huge Exemple }
 
\
 
\hspace{1mm} Exemple de fichier de configuration kdc.conf
 
{\ttfamily
\texttt{[}kdcdefaults\texttt{]}\\ \hspace{2mm}kdc\_ports = 88\\ \hspace{2mm}\\ \texttt{[}realms\texttt{]}\\ \hspace{2mm}ATHENA.MIT.EDU = \{\\ \hspace{2mm}\hspace{2mm}kadmind\_port = 749\\ \hspace{2mm}\hspace{2mm}max\_life = 12h 0m 0s\\ \hspace{2mm}\hspace{2mm}max\_renewable\_life = 7d 0h 0m 0s\\ \hspace{2mm}\hspace{2mm}master\_key\_type = des3-hmac-sha1\\ \hspace{2mm}\hspace{2mm}supported\_enctypes = des3-hmac-sha1:normal des-cbc-crc:normal des-cbc-crc:v4\\ \hspace{2mm}\hspace{2mm}database\_module = openldap\_ldapconf\\ \hspace{2mm}\}\\ \hspace{2mm}\\ \texttt{[}logging\texttt{]}\\ \hspace{2mm}kdc = FILE:/usr/local/var/krb5kdc/kdc.log\\ \hspace{2mm}admin\_server = FILE:/usr/local/var/krb5kdc/kadmin.log\\ \hspace{2mm}\\ \texttt{[}dbdefaults\texttt{]}\\ \hspace{2mm}ldap\_kerberos\_container\_dn = cn=krbcontainer,dc=mit,dc=edu\\ \hspace{2mm}\\ \texttt{[}dbmodules\texttt{]}\\ \hspace{2mm}openldap\_ldapconf = \{\\ \hspace{2mm}\hspace{2mm}db\_library = kldap\\ \hspace{2mm}\hspace{2mm}disable\_last\_success = true\\ \hspace{2mm}\hspace{2mm}ldap\_kdc\_dn = "cn=krbadmin,dc=mit,dc=edu"\\ \hspace{2mm}\hspace{2mm}ldap\_kadmind\_dn = "cn=krbadmin,dc=mit,dc=edu"\\ \hspace{2mm}\hspace{2mm}ldap\_service\_password\_file = /etc/kerberos/service.keyfile\\ \hspace{2mm}\hspace{2mm}ldap\_servers = ldaps://kerberos.mit.edu\\ \hspace{2mm}\hspace{2mm}ldap\_conns\_per\_server = 5\\ \hspace{2mm}\}\\
}
\vspace{8mm}
\end{flushleft}
\end{document}
