Guide du mécanisme d'authentification pour l'entreprise de Sun

Commandes de SEAM

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.

Aperçu des commandes compatibles 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 :

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 :


Remarque :

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 :

-a

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).)

-f

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".

-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".

-k secteur

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.

-K

Utiliser vos tickets pour authentifier l'hôte distant, mais sans vous connecter automatiquement.

-m mécanisme

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.

-x

Chiffrer cette session.

-X type_d'auth

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

 

 

 

 

-f

 

-F

 

 

-k

 

-K

 

 

 

 

-m

 

 

 

 

-x

 

-X

 

 

 

 

En outre, ftp permet de définir le niveau de protection pour une session à son invite :

clear

Règle le niveau de protection à "clear" (aucune protection). Il s'agit de la valeur par défaut.

private

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.

safe

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).

Transfert de tickets avec les options -f et -F

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.

Figure 6-2 Utilisation de tickets non-transférables

Graphic

(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.

Figure 6-3 Utilisation de tickets transférables

Graphic

Exemples -- Utilisation de commandes compatibles Kerberos

Les exemples suivants illustrent le fonctionnement des options des commandes compatibles Kerberos.

Exemple -- Utilisation des options -a, -f et -x avec telnet

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.

Exemple -- Utilisation de rlogin avec l'option -F

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
%

Exemple -- Définition du niveau de protection dans ftp

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.