A.2. Configuration IKE

A.2.1. Directive distante
A.2.2. Directive sainfo
A.2.3. Exemple de fichiers de configuration IKE

La configuration de base nécessaire à IPsec sur le Sun Ray Client est le fichier de configuration IKE qui est dérivé du fichier racoon.conf. Le fichier de configuration IKE détermine la manière d'établir une connexion sécurisée entre deux hôtes à l'aide du démon racoon. Pour Sun Ray Software, seul un sous-ensemble des directives et instructions dans le fichier de configuration IKE est requis. La documentation complète pour le fichier de configuration IKE est disponible dans la page de manuel racoon.conf.

Le fichier de configuration IKE contient un ensemble de directives, chacune se compose d'un mot-clé et d'un ensemble de paramètres. Certaines directives peuvent être suivies par un ensemble d'instructions imbriquées. Un fichier de configuration IKE doit être stocké dans le Trivial File System du microprogramme sur /ike/default.conf. L'utilisation du répertoire /ike est cohérente avec la stratégie selon laquelle le répertoire contenant un fichier indique son type ou son format.

Seules deux directives sont nécessaires pour le fichier de configuration IKE de Sun Ray :

Normalement, il peut y avoir plusieurs directives remote et sainfo, marquées d'un nom, d'une adresse ou du mot-clé anonyme par défaut. L'implémentation Sun Ray Software ne permet qu'une directive de chaque.

Les directives suivantes ne sont pas requises, mais elles sont prises en charge pour fournir une configuration plus avancée :

D'autres paramètres, comme l'emplacement de différents fichiers et ports auxiliaires, sont fixes en valeur.

A.2.1. Directive distante

La directive remotespécifie les paramètres pour les négociations IKE.

Les instructions suivantes sont prises en charge. Des remarques et restrictions spécifiques sont fournies le cas échéant.

  • ca_type : type de certificat racine (X509 uniquement) et nom de fichier de certificat racine.

  • certificate_type : type de certificat client (x509 uniquement), nom de fichier de clé privée et nom de fichier de certificat.

  • dpd : commutateur d'activation de la détection de pair hors service (DPD). La valeur par défaut est on.

  • dpd_delay : temps entre les requêtes présentes. 0 désactive la vérification. La valeur par défaut est 0.

  • dpd_maxfail : si dpd_delay est défini, cette instruction détermine le nombre maximum de preuve de vivacité de demande (sans réponse) avant de tenir compte que le pair est hors service. La valeur par défaut est 5.

  • dpd_retry : si dpd_delay est défini, cette instruction définit la durée (en secondes) d'attente pour obtenir une preuve de vivacité avant de considérer que la demande a échoué et d'en envoyer une autre. La valeur par défaut est 5.

  • exchange_mode : mode Exchange à utiliser comme initiateur IKE. Valeurs : principale, aggressive ou basique. Le mode agressif n'est pas pris en charge sur Oracle Solaris.

  • ike_frag : commutateur d'activation de la fragmentation IKE.

  • lifetime : durée de vie IKE proposée.

  • my_identifier : type et valeur de l'identifiant IKE pour la phase 1. Les types d'identifiant suivants sont autorisés :

    • address : adresse IP. Cette option est la valeur par défaut, bien que cela ne convienne pas aux clients Sun Ray qui obtiennent leurs adresses à l'aide de DHCP.

    • asn1dn : nom distinctif ASN.1. Cette valeur provient du champ Objet de certificat si aucune valeur n'est spécifiée.

    • fqdn : nom de domaine complet.

    • keyid : une chaîne arbitraire.

    • subnet : sous-réseau IP.

    • user_fqdn : nom d'utilisateur complet.

  • nat_traversal : commutateur d'activation de NAT transversal.

  • nonce_size : taille des circonstances utilisées dans l'échange IKE. La valeur par défaut est 16 octets.

  • peers_certfile : type de certificat pair stocké localement (X509 uniquement) et nom du fichier de certificat.

  • peers_identifier : type et la valeur de l'identificateur pair attendu. Les types d'identifiant suivants sont autorisés :

    • address : adresse IP. Ceci est la valeur par défaut.

    • asn1dn : nom distinctif ASN.1. Cette valeur provient du champ Objet de certificat si aucune valeur n'est spécifiée.

    • fqdn : nom de domaine complet.

    • keyid : une chaîne arbitraire.

    • subnet : sous-réseau IP.

    • user_fqdn : nom d'utilisateur complet.

  • proposal : liste des instructions d'offre. Une seule instruction d'offre est autorisée.

    • authentication_method : indiquez la méthode d'authentification utilisée. Valeurs : pre_shared_key ou rsasig.

      Le fichier de clés pré-partagé est utilisé lorsque le mode d'authentification est pre_shared_key, et que le fichier doit être enregistré dans le système de fichier TFS du microprogramme sur le fichier /preshared/keys. Le fichier de clés pré-partagé se compose de lignes contenant des paires d'id et de clés, séparées par un nombre d'espaces ou de caractères de tabulation. Les clés commençant par "0x" sont interprétées comme des chaînes hexadécimales. Tout fichier de certificat référencé doit être stocké dans le répertoire certs et les paires de clés publique/privée fournies dans des fichiers doivent être stockés dans le répertoire /keys.

    • dh_group : spécifiez le groupe utilisé pour l'exponentiation Diffie-Hellman. Valeurs : modp768, modp1024, modp1536, modp2048, modp3072, modp4096, modp6144 ou le numéro de group DH correspondant, 1, 2, 5, 14, 15, 16, 17 ou 18.

    • encryption_algorithm : spécifiez l'algorithme de chiffrement utilisé pour la négociation de phase 1. Valeurs : aes, 3des ou null. aes peut être suivi d'une taille de clé de 128, 192 ou 256 séparées d'un espace.

    • hash_algorithm : spécifiez l'algorithme de hachage utilisé pour la négociation de phase 1. Valeurs : md5 (obsolète), sha1, sha256, sha384 ou sha512. Oracle Linux 5.8 et Oracle Linux 6.3 ne prennent pas en charge l'algorithme de hachage sha384 ou sha512.

    • lifetime : spécifiez la durée de vie IKE.

  • remote_address : adresse IP distance de l'autre extrémité de la connexion.

  • proposal_check :type de vérification de proposition. Valeurs : claim, exact, obey ou strict.

  • send_cert : commutateur d'activation d'envoi de certificat client. La valeur par défaut est on.

  • send_cr : commutateur d'activation d'envoi de demande de certificat. La valeur par défaut est on.

  • verify_cert : commutateur de vérification de certificat de pair. La valeur par défaut est on.

  • verify_identifier - commutateur permettant d'activer la vérification de l'identité entre ID et du certificat. La valeur par défaut est off.

A.2.2. Directive sainfo

La directive sainfo est utilisée pour spécifier les paramètres de sécurité pour la création d'une IPsec Security Association (SA) utilisée pour protéger le trafic associé. Pour Sun Ray Software, seul le protocole Encapsulation Security Payload (ESP) est pris en charge et le protocole Authentication Header (AH) n'est pas pris en charge.

Une mise en oeuvre complète de la base de données Security Policy Database (SPD) pour Sun Ray Software n'est pas nécessaire car la communication entre le Sun Ray Client et les autres pairs requiert peu de sélections de commutateur, qui ont été intégrées dans le menu de configuration IPsec dans l'interface graphique de configuration du microprogramme.

Les instructions suivantes sont prises en charge. Des remarques et restrictions spécifiques sont fournies le cas échéant.

  • authentication_algorithm : spécifiez la liste des algorithmes d'authentification séparée par une virgule. Les valeurs comprennent les formes hmac des valeurs hash_algorithm, telles que hmac_md5, hmac_sha1, hmac_sha256, hmac_sha384 ou hmac_sha512.

  • encryption_algorithm : spécifiez le jeu des algorithmes de chiffrement séparés par une virgule qui peut être utilisé dans une offre de phase 2. Valeurs : aes ou 3des. La valeur aes peut être suivie d'une taille de clé, par exemple, aes 256.

  • lifetime : définissez le longueur d'un IPsec SA à utiliser.

  • pfs_group : définissez le groupe utilisé pour Perfect Forward Secrecy (PFS) dans la phase 2. Les mêmes valeurs sont utilisées en tant que dh_group. S'il n'est pas précisé, PFS n'est pas utilisé.

  • sha2_trunc : commutateur qui définit la coupure des hachagesde SHA-2 à 96 bites, plutôt que la taille 128 spécifiée dans RFC 4868. Il permet l'interopérabilité avec certains systèmes Oracle Linux qui font preuve de ce comportement. Il doit être activé lors de l'utilisation de l'algorithme de hachage sha256 pour Oracle Linux.

Les propositions générées durant la négociation de phase 2 comportent toutes les combinaisons possibles de encryption_algorithm et authentication_algorithm.

A.2.3. Exemple de fichiers de configuration IKE

Voici un exemple de fichier de configuration IKE Sun Ray utilisé pour spécifier la connexion entre un client Sun Ray avec une adresse IP fixe (10.213.25.230) et un serveur Sun Ray (10.213.21.43) qui utilise une clé pré-partagée.

remote address 10.213.21.43 {
        my_identifier address 10.213.25.230;
        exchange_mode main;
        proposal {
                authentication_method pre_shared_key;
                encryption_algorithm aes;
                hash_algorithm sha1;
                dh_group 2;
        }
        proposal_check claim;
}
sainfo address 10.213.25.230 address 10.213.21.43 {
        lifetime time 12 hour;
        encryption_algorithm aes;
        authentication_algorithm hmac_sha1;
}
Note

Si vous indiquez principal pour l'instruction exchange_mode, les identificateurs pour la connexion IKE doivent être des adresses IP lors de l'utilisation de clés pré-partagées.

Voici un autre exemple de fichier de configuration IKE Sun Ray pour l'authentification basée sur un certificat

remote anonymous {
        exchange_mode main;
        my_identifier asn1dn;
        ca_type x509 "cacert.pem";
        certificate_type x509 "mycert.pem" "mykey.pem";
        proposal {
                authentication_method rsasig;
                encryption_algorithm 3des;
                hash_algorithm md5;
                dh_group modp1024;
        }
        lifetime time 24 hour;
        proposal_check claim;
}
sainfo anonymous {
        authentication_algorithm hmac_sha1;
        encryption_algorithm aes;
        lifetime time 8 hour;
}