Kerberos V5 est un système à connexion unique. Cela signifie que vous n'avez à taper votre mot de passe qu'une seule fois, et les programmes Kerberos V5 effectueront l'authentification (et le chiffrement facultatif) pour vous, étant donné que Kerberos est incorporé à une série de programmes réseau existants familiers. Les applications Kerberos V5 sont des versions de programmes réseau UNIX existants, avec des caractéristiques Kerberos ajoutées.
Par exemple, lorsque vous utilisez un programme compatible Kerberos pour vous connecter à un hôte distant, le programme, le KDC et l'hôte distant effectuent une série de négociations rapides. Lorsque ces négociations sont terminées, votre programme a prouvé votre identité à l'hôte distant, et celui-ci vous a accordé l'accès.
Il faut noter que les commandes compatibles Kerberos tentent d'abord d'effectuer l'authentification avec Kerberos. Si l'authentification Kerberos échoue, une erreur se produit ou une authentification UNIX est tentée, selon les options utilisées avec la commande. Pour de plus amples renseignements, consultez la section Sécurité Kerberos dans les pages de manuel Kerberos.
Les services de réseau compatibles Kerberos sont des programmes qui se connectent à un autre ordinateur situé quelque part sur l'Internet. Ces programmes résident dans le répertoire /usr/krb5/bin ; réglez votre variable PATH de manière à ce que ces programmes précèdent les versions non-Kerberos. Ces programmes sont :
ftp
rcp
rlogin
rsh
telnet
Ces programmes possèdent toutes les caractéristiques originales de leurs équivalents non-Kerberos. Ils possèdent aussi des caractéristiques supplémentaires qui utilisent de manière transparente vos tickets Kerberos pour négocier l'authentification (et le chiffrement facultatif) avec l'hôte distant. Dans la plupart des cas, vous remarquerez que vous n'avez pas besoin de taper votre mot de passe pour les utiliser, étant donné que Kerberos fournira la preuve de votre identité.
Les programmes réseau Kerberos V5 vous offrent les options suivantes :
Transfert de vos tickets à un autre hôte (si vous avez initialement obtenu des tickets transférables)
Chiffrement des données transmises entre vous et l'hôte distant
Cette section suppose que vous êtes familier avec les versions non-Kerberos de ces programmes, et décrit les fonctionnalités Kerberos ajoutées par le progiciel Kerberos V5. Pour une description détaillée des commandes décrites dans cette section, consultez les pages de manuel correspondantes.
Les options Kerberos suivantes ont été ajoutées à ftp, rcp, rlogin, rsh et telnet :
Tenter d'effectuer une connexion automatique à l'aide de vos tickets existants. Utilise le nom d'utilisateur renvoyé par la commande getlogin(), sauf s'il diffère de l'ID d'utilisateur courant. (Pour des détails, consultez la page de manuel telnet(1).)
Transférer un ticket non retransférable à un hôte distant. Cette option est incompatible avec l'option -F (voir ci-dessous) ; elles ne peuvent donc pas être employées dans une même commande.
Vous voudrez probablement transférer un ticket si vous croyez que vous devrez vous authentifier à d'autres services Kerberos sur un troisième hôte -- par exemple, si vous désirez vous connecter avec rlogin à un autre ordinateur, puis y exécuter une autre commande rlogin vers un troisième ordinateur.
Vous devez absolument employer un ticket transférable si votre répertoire de base sur l'hôte distant est monté avec NFS au moyen de Kerberos V5 ; sinon, vous ne pourrez pas accéder à votre répertoire de base. (Par exemple, supposons que vous vous connectez initialement au Système 1. À partir du Système 1, vous vous connectez avec rlogin à votre ordinateur de base, le Système 2, qui monte votre répertoire de base depuis le Système 3. Si vous n'avez pas employé l'option -f ou -F avec rlogin, vous ne pourrez pas accéder à votre répertoire de base, étant donné que votre ticket ne peut pas être transféré au Système 3.)
Par défaut, la commande kinit obtient les tickets d'octroi de tickets ; il est toutefois possible que votre configuration de SEAM diffère à cet égard.
Pour de plus amples renseignements sur le transfert des tickets, voir "Transfert de tickets avec les options -f et -F".
Transférer une copie retransférable de votre ticket d'octroi de tickets vers un système distant. Cette option est similaire à -f (voir ci-dessus), mais elle permet d'accéder à un ordinateur supplémentaire (par exemple un quatrième ou un cinquième). L'option -F peut donc être considérée comme englobant l'option -f . L'option -F est incompatible avec l'option -f ; elles ne peuvent donc pas être employées dans une même commande.
Pour de plus amples renseignements sur le transfert des tickets, voir "Transfert de tickets avec les options -f et -F".
Demander des tickets pour l'hôte distant dans le secteur spécifié, plutôt que de déterminer le secteur lui-même au moyen du fichier krb5.conf.
Utiliser vos tickets pour authentifier l'hôte distant, mais sans vous connecter automatiquement.
Spécifier le mécanisme de sécurité GSS-API à utiliser, tel qu'indiqué dans le fichier /etc/gss/mech. La valeur par défaut est kerberos_v5.
Chiffrer cette session.
Désactiver le type d'authentification type_d'auth.
Tableau 6-1 indique les commandes possédant des options particulières (la lettre "X" signifie que la commande possède cette option).
Tableau 6-1 Options Kerberos pour les commandes de réseau|
|
ftp |
rcp |
rlogin |
rsh |
telnet |
|---|---|---|---|---|---|
|
-a |
|
|
|
|
X |
|
-f |
X |
|
X |
X |
X |
|
-F |
|
|
X |
X |
X |
|
-k |
|
X |
X |
X |
X |
|
-K |
|
|
|
|
X |
|
-m |
X |
|
|
|
|
|
-x |
|
X |
X |
X |
X |
|
-X |
|
|
|
|
X |
En outre, ftp permet de définir le niveau de protection pour une session à son invite :
Règle le niveau de protection à "clear" (aucune protection). Il s'agit de la valeur par défaut.
Règle le niveau de protection à "private." La confidentialité et l'intégrité des transmissions de données sont protégées par chiffrement. Il est cependant possible que le service de confidentialité ne soit pas disponible pour tous les utilisateurs de SEAM.
Règle le niveau de protection à "safe." L'intégrité des transmissions de données est protégée par une somme de contrôle cryptographique.
Vous pouvez également régler le niveau de protection à l'invite ftp en tapant le mot protect suivi d'un des niveaux de protection ci-dessus (clear, private ou safe).
Comme indiqué à la section "Aperçu des commandes compatibles Kerberos", certaines commandes vous permettent de transférer des tickets au moyen de l'option -f ou -F . Le transfert de tickets vous permet "d'enchaîner" vos transactions de réseau ; vous pouvez, par exemple, vous connecter avec la commande rlogin à un ordinateur, puis y exécuter la commande rlogin vers un autre. L'option -f vous permet de transférer un ticket, tandis que l'option -F vous permet de retransférer un ticket transféré.
À la Figure 6-2, l'utilisateur david obtient un ticket d'octroi de tickets non-transférable avec kinit. (Il est non-transférable parce que David n'a pas spécifié l'option -f .) Dans le scénario 1, il peut se reconnecter avec la commande rlogin à l'ordinateur B, mais il ne peut pas aller plus loin. Dans le scénario 2, la commande rlogin -f échoue parce que David tente de transférer un ticket non-transférable.

(En réalité, les fichiers de configuration de SEAM sont définis de manière à ce que kinit obtienne les tickets transférables par défaut. Cependant, votre configuration peut différer. À des fins d'explication, nous avons supposé que la commande kinit n'obtient pas de tickets d'octroi de tickets transférables sauf si elle est appelée avec kinit -f. Il est à noter que kinit ne possède pas d'option -F ; les tickets d'octroi de tickets sont soit transférables, soit non-transférables.)
À la Figure 6-3, david obtient les tickets d'octroi de tickets transférables avec kinit -f. Dans le scénario 3, il peut accéder à l'ordinateur C parce qu'il utilise un ticket transférable avec la commande rlogin. Dans le scénario 4, la deuxième commande rlogin échoue parce que le ticket n'est pas retransférable. En utilisant plutôt l'option -F , comme dans le scénario 5, la deuxième commande rlogin réussit, et le ticket peut être retransféré vers l'ordinateur D.

Les exemples suivants illustrent le fonctionnement des options des commandes compatibles Kerberos.
Dans cet exemple, l'utilisateur david s'est déjà connecté, et veut se connecter avec telnet à l'ordinateur denver.acme.com. Il utilise l'option -f pour transférer ses tickets existants, l'option -x pour chiffrer la session, et l'option -a pour effectuer automatiquement la connexion. Comme il n'a pas l'intention de recourir aux services d'un troisième hôte, il peut employer -f au lieu de -F.
% telnet -a -f -x denver.acme.com Essai de 128.0.0.5... Connecté à denver.acme.com. Caractère d'échappement '^]'. [ Kerberos V5 vous accepte comme "david@eng.acme.com" ] [ Kerberos V5 a accepté les références transférées ] SunOS 5.7: Mar Mai 21 00:31:42 EDT 1998 Bienvenue dans SunOS % |
On peut remarquer que l'ordinateur de david utilise Kerberos pour l'authentifier auprès de denver.acme.com, et l'a automatiquement connecté. Il avait une session chiffrée, une copie de son ticket déjà prête, et n'a pas eu besoin de taper son mot de passe. S'il avait utilisé une version non-Kerberos de telnet, il aurait été invité à taper son mot de passe, lequel aurait été envoyé sur le réseau sous forme non chiffrée -- si un intrus surveillait alors le trafic sur le réseau, il pourrait découvrir le mot de passe de david.
Si vous transférez vos tickets Kerberos, telnet (ainsi que les autres commandes décrites dans cette section) les détruit lors de la fermeture.
Dans cet exemple, julie veut se connecter à son propre ordinateur, lyon.acme.com. Elle transfère ses tickets existants avec -F, et chiffre la session avec -x. Elle choisit -F plutôt que -f parce qu'après s'être connectée à lyon , elle pourrait souhaiter effectuer d'autres transactions sur le réseau exigeant le retransfert de tickets. En outre, comme elle transfère ses tickets existants, elle n'a pas besoin de taper son mot de passe.
% rlogin lyon.acme.com -F -x Cette session rlogin utilise le chiffrement DES avec toutes les transmissions. Dernière connexion Lun Mai 19 15:19:49 de daffodil SunOS Release 5.7 (GENERIC) #2 Mar Nov 14 18:09:3 EST 1998 % |
Supposons maintenant que jean veut utiliser ftp pour obtenir son courriel du répertoire ~jean/MAIL sur l'ordinateur denver.acme.com, en chiffrant la session. L'échange pourrait s'effectuer comme ceci :
% ftp -f denver.acme.com Connecté à denver.acme.com 220 denver.acme.org serveur FTP (Version 6.0) prêt. 334 Utilisation du type d'authentification GSSAPI ; ADAT doit suivre GSSAPI accepté à titre de type d'authentification Authentification GSSAPI réussie Nom (daffodil.acme.org:jean) 232 GSSAPI utilisateur jean@MELPOMENE.ACME.COM est autorisé en tant que jean 230 Utilisateur jean connecté. Le type de système distant est UNIX. Utilisation du mode BINAIRE pour le transfert de fichiers. ftp> protect private 200 Niveau de protection réglé à Private ftp> cd ~jean/MAIL 250 CWD commande réussie. ftp> get RMAIL 227 Entrée dans le mode passif (128,0,0,5,16,49) 150 Ouverture de la connexion de données en mode BINAIRE pour RMAIL (158336 octets). 226 Transfert terminé. 158336 octets reçus en 1.9 secondes (1.4e+02 ko/s) ftp> quit % |
Afin de chiffrer la session, jean règle le niveau de protection à private.