Guide d'administration système : services IP

Chapitre 24 Protocole IKE (référence)

Ce chapitre aborde les sujets suivants :

Pour plus d'informations sur l'implémentation du protocole IKE, reportez-vous au Chapitre 23Configuration du protocole IKE (tâches). Pour obtenir une présentation du protocole, reportez-vous au Chapitre 22Protocole IKE (présentation).

Utilitaire de gestion du service IKE

Service svc:/network/ipsec/ike:default : l'utilitaire de gestion des services (SMF) fournit le service ike qui permet de gérer IKE. Par défaut, ce service est désactivé. Avant d'activer ce service, vous devez créer un fichier de configuration IKE, /etc/inet/ike/config.

Les propriétés suivantes du service ike sont configurables :

Pour plus d'informations sur l'utilitaire SMF, reportez-vous au Chapitre 18, Managing Services (Overview) du System Administration Guide: Basic Administration. Voir aussi les pages de manuel smf(5), svcadm(1M) et svccfg(1M).

Démon IKE

Le démon in.iked automatise la gestion des clés cryptographiques pour IPsec sur les systèmes Solaris. Il négocie avec un système distant exécutant le même protocole pour fournir, de manière protégée, des numéros de clé authentifiés destinés aux associations de sécurité (SA). Le démon doit s'exécuter sur tous les systèmes qui sont censés communiquer en toute sécurité.

Par défaut, le service svc:/network/ipsec/ike:default n'est pas activé. Après que vous avez configuré le fichier /etc/inet/ike/config et activé le service ike, le démon in.iked se lance à l'initialisation du système.

Une fois le démon IKE en cours d'exécution, le système s'authentifie auprès de son entité IKE homologue lors de la phase 1. L'homologue, ainsi que les méthodes d'authentification, sont définis dans le fichier de stratégie IKE. Le démon crée alors les clés pour la phase 2. Les clés IKE sont actualisées automatiquement à un intervalle spécifié dans le fichier de stratégie. Le démon in.iked est à l'écoute des demandes IKE entrantes émanant du réseau et des demandes de trafic hors bande via le socket PF_KEY. Pour plus d'informations, reportez-vous à la page de manuel pf_key(7P).

Le démon IKE est pris en charge par deux commandes. La commande ikeadm peut être utilisée pour afficher et modifier temporairement la stratégie IKE. Pour modifier de manière définitive la stratégie IKE, vous devez modifier les propriétés du service ike. Pour connaître la procédure, reportez-vous à la section Affichage des clés IKE prépartagées.

et la commande ikecert d'afficher et de gérer les bases de données de clés publiques. Cette dernière gère les bases de données ike.privatekeys et publickeys locales, ainsi que les opérations de clés publiques et le stockage de ces clés sur du matériel.

Fichier de stratégie IKE

Le fichier de configuration de la stratégie IKE, /etc/inet/ike/config, gère les clés des interfaces protégées dans le fichier de stratégie IPsec, /etc/inet/ipsecinit.conf. Le fichier de stratégie IKE gère les clés pour IKE et pour les SA IPsec. Le démon IKE requiert lui-même des numéros de clé lors de la phase 1.

La gestion des clés avec IKE inclut des règles et des paramètres globaux. Les règles IKE identifient les systèmes ou réseaux sécurisés par les numéros de clé. Elles spécifient également la méthode d'authentification. Les paramètres globaux incluent des éléments tels que le chemin vers un accélérateur matériel connecté. Pour consulter des exemples de fichiers de stratégie IKE, reportez-vous à la section Configuration du protocole IKE avec des clés prépartagées (liste des tâches). Pour des exemples et une description des entrées de stratégies IKE, consultez la page de manuel ike.config(4).

Les SA IPsec prises en charge par IKE protègent les datagrammes IP conformément aux stratégies paramétrées dans le fichier de configuration des stratégies IPsec, /etc/inet/ipsecinit.conf. Le fichier de stratégie IKE détermine si la confidentialité de transmission parfaite (PFS, perfect forward security) est utilisée lors de la création des SA IPsec.

Le fichier ike/config peut inclure le chemin vers une bibliothèque implémentée conformément au standard RSA Security Inc. PKCS #11 Cryptographic Token Interface (Cryptoki). IKE utilise la bibliothèque PKCS #11 pour accéder au matériel d'accélération et de stockage des clés.

En matière de sécurité, les considérations concernant le fichier ike/config sont similaires à celles concernant le fichier ipsecinit.conf. Pour plus d'informations, reportez-vous à la section Considérations de sécurité à propos de ipsecinit.conf et ipsecconf.

Commande d'administration du protocole IKE

La commande ikeadm permet d'effectuer les opérations suivantes :

Pour consulter des exemples et une description complète des options de cette commande, reportez-vous à la page de manuel ikeadm(1M)

Le niveau de privilège du démon IKE en cours d'exécution détermine les aspects du démon IKE susceptibles d'être affichés et modifiés. Trois niveaux de privilège sont possibles.

Niveau base

Vous ne pouvez ni afficher ni modifier les numéros de clé. Le niveau base est le niveau de privilège par défaut.

Niveau modkeys

À ce niveau, vous pouvez supprimer, modifier et ajouter des clés prépartagées.

Niveau keymat

Ce niveau vous permet d'afficher les numéros de clé actuels à l'aide de la commande ikeadm.

Pour modifier temporairement un privilège, vous pouvez utiliser la commande ikeadm. Pour une modification permanente, modifiez la propriété admin_privilege du service ike. Pour connaître la procédure, reportez-vous à la section Procédure de gestion des services IKE et IPsec.

En matière de sécurité, les considérations concernant la commande ikeadm sont similaires à celles concernant la commande ipseckey. Pour plus d'informations, reportez-vous à la section Considérations de sécurité pour la commande ipseckey.

Fichiers de clés prépartagées IKE

Lorsque vous créez des clés manuellement, elles sont stockées dans des fichiers du répertoire /etc/inet/secret. Le fichier ike.preshared contient les clés prépartagées des SA ISAKMP (Internet Security Association and Key Management Protocol) et le fichier ipseckeys contient les clés prépartagées des SA IPsec. Ces fichiers sont protégés en mode 0600 et le répertoire secret en mode 0700.


Remarque –

Les clés prépartagées ne peuvent être stockées sur des composants matériels. Elles sont générées et stockées sur le système.


Commandes et bases de données de clés publiques IKE

La commande ikecert permet de manipuler les bases de données de clés publiques du système local. Utilisez-la lorsque le fichier ike/config requiert des certificats de clés publiques. Ces bases de données étant utilisées par IKE pour authentifier la phase 1 de l'échange, elles doivent être alimentées avant l'activation du démon in.iked. Trois sous-commandes permettent de gérer chacune des trois bases de données : certlocal, certdb et certrldb.

La commande ikecert permet aussi de gérer le stockage des clés. Elles peuvent être stockées sur disque, sur une carte Sun Crypto Accelerator 6000 ou &sca 4; connectée, ou dans un fichier keystore de clés softtoken. Ce fichier est disponible lorsque le metaslot de la structure cryptographique de Solaris est utilisé pour communiquer avec le matériel. La commande ikecert utilise la bibliothèque PKCS #11 pour localiser le lieu de stockage des clés.

Pour plus d'informations, consultez la page de manuel ikecert(1M) Pour plus d'informations sur le metaslot et sur le fichier keystore de clés softtoken, reportez-vous à la page de manuel cryptoadm(1M).

Commande ikecert tokens

L'argument tokens répertorie les ID de jetons disponibles. Les ID de jetons permettent aux commandes ikecert certlocal et ikecert certdb de générer des certificats de clés publiques et des demandes de certificats. Ces certificats et demandes de certificats peuvent également être stockés par la structure cryptographique dans le fichier keystore de clés softtoken ou sur une carte Sun Crypto Accelerator 6000 ou &sca 4; connectée. La commande ikecert utilise la bibliothèque PKCS #11 pour déterminer l'emplacement de stockage des certificats.

Commande ikecert certlocal

La sous-commande certlocal gère la base de données des clés privées. Les options de cette sous-commande permettent d'ajouter, d'afficher et de supprimer des clés privées. Cette sous-commande permet également de créer un certificat autosigné ou une demande de certificat. L'option -ks crée un certificat autosigné et l'option-kc une demande de certificat. Les clés sont stockées sur le système, dans le répertoire /etc/inet/secret/ike.privatekeys, ou sur un composant matériel connecté (option -T).

Lorsque vous créez une clé privée, les options de la commande ikecert certlocal doivent avoir des entrées connexes dans le fichier ike/config. Le tableau ci-dessous détaille les correspondances entre les options ikecert et les entrées ike/config.

Tableau 24–1 Correspondances entre les options ikecert et les entrées ike/config

Option ikecert

Entréeike/config

Description 

-A nom-alternatif-sujet

cert_trust nom-alternatif-sujet

Pseudonyme identifiant le certificat de manière unique. Il peut s'agir d'une adresse IP, d'une adresse e-mail ou d'un nom de domaine. 

-D, nom-distinctif-X.509

nom-distinctif-X.509

Nom complet de l'autorité de certification, incluant le pays (C), le nom de l'organisation (ON), l'unité d'organisation (OU) et le nom commun (CN). 

-t dsa-sha1

auth_method dss_sig

Méthode d'authentification légèrement plus lente que RSA.

-t rsa-md5 et

-t rsa-sha1

auth_method rsa_sig

Méthode d'authentification légèrement plus rapide que la méthode DSA.

La clé publique RSA doit être suffisamment importante pour chiffrer la charge utile la plus lourde. Les charges les plus lourdes sont habituellement les données d'identité (par exemple, le nom distinctif X.509).

-t rsa-md5 et

-t rsa-sha1

auth_method rsa_encrypt

Le chiffrement RSA met les identités d'IKE à l'abri des écoutes électroniques, mais implique que les homologues IKE connaissent leurs clés publiques respectives. 

-T

pkcs11_path

La bibliothèque PKCS #11 prend en charge l'accélération des clés sur les cartes Sun Crypto Accelerator 1000, Sun Accelerator 6000 et Sun Crypto Accelerator 4000. La bibliothèque fournit également les jetons qui gèrent le stockage des clés sur les cartes Sun Crypto Accelerator 6000 et Sun Crypto Accelerator 4000.

Lorsque vous émettez une demande de certificat à l'aide de la commande ikecert certlocal -kc, vous envoyez la sortie de cette commande à un fournisseur de PKI ou à une AC. Si votre entreprise possède sa propre PKI, vous envoyez cette sortie à votre administrateur de PKI. Le fournisseur de PKI, l'AC ou votre administrateur de PKI crée alors les certificats. Ceux qui vous sont transmis par le fournisseur de PKI ou l'AC sont entrés dans la sous-commande certdb. La liste de révocation de certificats (LRC) que le fournisseur de PKI vous envoie est entrée dans la sous-commande certrldb.

Commande ikecert certdb

La sous-commande certdb gère la base de données des clés publiques. Les options de cette sous-commande vous permettent d'ajouter, d'afficher et de supprimer des certificats et des clés publiques. Cette sous-commande accepte l'entrée de certificats générés par la commande ikecert certlocal -ks sur un système distant. Pour plus d'informations sur cette procédure, reportez-vous à la section Configuration du protocole IKE avec des certificats de clés publiques autosignés. Cette commande accepte également l'entrée de certificats émanant de fournisseurs PKI ou d'AC. Pour plus d'informations sur cette procédure, reportez-vous à la section Configuration du protocole IKE avec des certificats signés par une AC.

Les certificats et les clés publiques sont stockés sur le système, dans le répertoire /etc/inet/ike/publickeys . L'option -T permet de stocker les certificats, les clés privées et les clés publiques sur les composants matériels connectés.

Commande ikecert certdb

La sous-commande certrldb gère la base de données des listes de révocation de certificats (LRC), /etc/inet/ike/crls. Cette base de données met à jour les listes de révocation des clés publiques. Les certificats qui ne sont plus valides figurent dans ces listes. Lorsqu'un fournisseur de PKI vous fait parvenir une LRC, vous pouvez l'installer dans cette base de données à l'aide de la commande ikecert certrldb. Pour plus d'informations sur cette procédure, reportez-vous à la section Traitement des listes de révocation de certificats.

Répertoire /etc/inet/ike/publickeys

Le répertoire /etc/inet/ike/publickeys contient la partie publique des biclés et leur certificat, qui sont stockés dans des fichiers ou à des emplacements. Ce répertoire est protégé en mode 0755 et peut être alimenté à l'aide de la commande ikecert certdb. L'option -T permet de stocker les clés sur une carte Sun Crypto Accelerator 6000 ou &sca 4; plutôt que dans le répertoire publickeys.

Les emplacements contiennent, sous forme chiffrée, le nom distinctif X.509 des certificats qui ont été générés sur un autre système. Si vous utilisez des certificats autosignés, vous devez indiquer le certificat que l'administrateur du système distant vous a envoyé comme entrée de commande. Si vous utilisez des certificats d'une AC, vous installez deux certificats signés d'une AC dans la base de données. Vous installez un certificat basé sur la requête de signature de certificat envoyée à l'AC. Vous installez également un certificat de l'AC.

Répertoire /etc/inet/secret/ike.privatekeys

Le répertoire /etc/inet/secret/ike.privatekeys contient des fichiers de clés privées qui font partie de biclés, c'est-à-dire les numéros de clé des SA ISAKMP. Ce répertoire est protégé en mode 0700. La commande ikecert certlocal permet d'alimenter le répertoire ike.privatekeys. Les clés privées sont effectives uniquement lors de l'installation de leur clé publique homologue, de certificats autosignés ou de certificats AC. Les clés publiques homologues sont stockées dans le répertoire /etc/inet/ike/publickey s ou sur une carte Sun Crypto Accelerator 6000 ou &sca 4;.

Répertoire /etc/inet/ike/crls

Le répertoire /etc/inet/ike/crls contient les fichiers des listes de révocation de certificats (LRC). Chaque fichier correspond à un fichier de certificat public du répertoire /etc/inet/ike/publickeys. Les fournisseurs de PKI fournissent les LRC correspondant à leurs certificats. La commande ikecert certrldb permet d'alimenter la base de données.