[Kerberos] Mise en place
5. Services kerbérisés sur les machines Macos x
Copier le contenu du fichier krb5.conf du serveur et le coller dans un fichier nommé edu.mit.Kerberos qu’il faut placer dans /Library/Preference/.
Faire la demande d’un ticket (Kinit).
5.1. telnet kerbérisé
Dès lors, la commande telnet fonctionne.
5.2. ftp kerbérisé
Seul le client ftp Kerberizé existe en installant fetch :
1) Compléter les bibliothèques Kerberos en installant Mac OS X Kerberos Extras qui se trouve à l’adresse suivante : http://web.mit.edu/macdev/Development/MITKerberos/Common/Documentation/osx-kerberos-extras.html
2) Installer un logiciel procurant un ftp kerberizé, le seul existant étant fetch 4.0.3 et se trouve à l’adresse suivante : http://www.fetchsoftworks.com/
3) Lancer le logiciel fetch et préciser le nom du serveur possédant le service, le nom de l’utilisateur et le mode de securité (GSS permet d’utiliser Kerberos).
5.3. Obtention du ticket lors du login
Pour obtenir son TGT dès lors que l’on se loggue il faut :
- Que les deux mots de passe soient identiques.
- Ajouter la machine dans la base de donnée du KDC :
- Addprinc host/mymachine.laas.fr
- Puis l’ajouter aussi dans le fichier keytab Ktadd host/mymachine.laas.fr
- Copier le fichier krb5.keytab du serveur KDC dans /etc du client Mac OS X, pour qu’il ait le mot de passe de sa machine host.
- Pour obtenir un ticket (TGT) lors d’une ouverture de session, il faut configurer le fichier /etc/authorization
5.4. NFS kerbérisé
Celui-ci n’a pas été implémenté pour MacosX.
5.5. rlogin kerbérisé
Solution non trouvée.
Par contre, si on supprime dans le fichier pam.conf les authentifications classiques rlogin et qu’on ne laisse que celui qui appelle une bibliothèque kerberos, cela permettra de supprimer le problème de « non » confiance : Qu’est-ce que le problème de non-confiance : Si une personne en root sur sa machine fait un « su » de n’importe quel utilisateur, le système ne va pas lui demander de mot passe. Dès lors, il sera considéré comme cet utilisateur (localement), mais si il fait un rlogin sur une machine distante, celle-ci ne va pas lui demander de mot de passe car elle concédera qu’il s’est déjà identifier. Comme vous pouvez le comprendre cela pose un problème. Ici l’utilisation de Kerberos rendra obligatoire la possession d’un TGT, que seul le vrai utilisateur peut acquérir.
5.6. SSH kerbérisé
1) Pour openssl dans /usr/include/openssl/opensslv.h remplacer les lignes suivantes :
! #define OPENSSL_VERSION_NUMBER 0x0090605fL
! #define OPENSSL_VERSION_TEXT "OpenSSL 0.9.6e 30 Jul 2002"
par :
! #define OPENSSL_VERSION_NUMBER 0x0090609fL
! #define OPENSSL_VERSION_TEXT "OpenSSL 0.9.6i Feb 19 2003"
2) Pour zlib dans /usr/include/zconf.h supprimer la condition suivante :
! #if !defined(MACOS) && !defined(TARGET_OS_MAC)
typedef unsigned char Byte; /* 8 bits */
! #endif
3) Installation d’openssh
tar -xvf openssh.tar
Ajouter les lignes suivantes dans le fichier compat.h d’openssh :
#define SSH_BUG_FIRSTKEX 0x01000000
#define SSH_OLD_GSSAPI 0x02000000
#define SSH_BUG_GSSAPI_BER 0x04000000
Commenter la ligne suivante dans le fichier gss-serv-krb5.c d’openssh : //krb5_init_ets(krb_context) ; Et la lignes suivantes dans le fichier auth-krb5.c d’openssh : //krb5_init_ets(authctxt->krb5_ctx) ;
Puis installer :
./configure --with-kerberos5=/usr --prefix=/local/SSH
make
make install
Lancer le serveur ssh :
/local/SSH/sbin/sshd
Obtenir un TGT ; Kinit jfressar Connexion a la machine distante avec authentification Kerberos : /local/SSH/bin/ssh kerb
Si vous avez apprécié cet article, s'il vous plait, prenez le temps de laisser un commentaire ou de souscrire au flux afin de recevoir les futurs articles directement dans votre lecteur de flux.

Commentaires
Pas encore de commentaire.
Laisser un commentaire