C H A P I T R E  1

Introduction

Ce chapitre décrit la logique et l'objectif du logiciel Solaris Security Toolkit. Il couvre les composants clés, les fonctionnalités, les avantages et les plates-formes prises en charge. Ce chapitre contient des indications générales pour garder le contrôle de la version des modifications et des déploiements et fournit des informations importantes pour la personnalisation du logiciel Solaris Security Toolkit.

Ce chapitre traite des points suivants :


Sécurisation de systèmes à l'aide du logiciel Solaris Security Toolkit

Le logiciel Solaris Security Toolkit, couramment appelé kit d'outils JASS (JumpStart Architecture and Security Scripts), propose un mécanisme automatique, extensible et évolutif pour sécuriser et maintenir sécurisés les systèmes Solaris OS. À l'aide du logiciel Solaris Security Toolkit, vous pouvez durcir et réduire vos systèmes ou effectuer des audits de sécurité.

L'installation et la configuration du système doivent autant que possible être automatisées (l'idéal serait qu'elles soient 100 % automatiques). Ces instructions couvrent l'installation et la configuration du système d'exploitation, la configuration du réseau, les comptes utilisateurs, les applications et les modifications de sécurité. Les modifications de sécurité peuvent inclure le durcissement et/ou la réduction, selon le type d'usage du système. Le logiciel JumpStart est une technologie permettant d'automatiser les installations du SE Solaris. Le logiciel JumpStart permet l'installation de systèmes sur un réseau de manière entièrement automatique ou avec un minimum d'intervention humaine. Le logiciel Solaris Security Toolkit contient des profils et des scripts permettant l'implémentation et l'automatisation de la plupart des tâches associées au durcissement et à la réduction de systèmes sous Solaris dans les installations basées sur le logiciel JumpStart.

De plus, le logiciel Solaris Security Toolkit dispose d'un mode autonome. Ce mode donne accès à la même fonctionnalité de durcissement que le mode JumpStart, mais sur des systèmes déployés. Dans les deux modes, les modifications apportées peuvent - et doivent - être personnalisées afin de remplir les conditions de sécurité requises par votre système.

Indépendamment du mode d'installation de votre système, vous pouvez initialement utiliser le logiciel Solaris Security Toolkit pour durcir et réduire vos systèmes. Utilisez ensuite périodiquement le logiciel Solaris Security Toolkit pour s'assurer que le profil de sécurité des systèmes sécurisés n'a pas été modifié par accident ou par malveillance.



Remarque - Le terme audit désigne la procédure automatisée selon laquelle le logiciel Solaris Security Toolkit valide un niveau de sécurité en la comparant avec un profil de sécurité prédéfini. L'emploi de ce terme dans cet ouvrage ne garantit pas la complète sécurisation du système contrôlé après l'utilisation de cette option.




Description des composants du logiciel

Cette section contient une présentation de la structure des composants du logiciel Solaris Security Toolkit. Le logiciel Solaris Security Toolkit est un ensemble de fichiers et de répertoires. La FIGURE 1-1 illustre la structure du logiciel.


FIGURE 1-1 Structure des composants du logiciel

Diagramme illustrant la structure des composants logiciels.


En plus de ces répertoires et sous-répertoires, les fichiers suivants sont situés au niveau supérieur de la structure du logiciel Solaris Security Toolkit, dans /bin :

Répertoires

Les composants de l'architecture Solaris Security Toolkit sont organisés dans les répertoires suivants :

Chacun de ces répertoires est décrit dans cette section. Le cas échéant, chaque script, fichier de configuration ou sous-répertoire est listé et des renvois à d'autres chapitres sont fournis pour des informations détaillées.

La structure du répertoire Solaris Security Toolkit se base sur la structure illustrée dans l'ouvrage Sun BluePrints JumpStart Technology: Effective Use in the Solaris Operating Environment.

Répertoire Audit

Ce répertoire contient les scripts d'audit qui permettent de vérifier la conformité du système avec un profil ou un groupe de profils de sécurité préalablement défini. Les scripts de ce répertoire sont organisés en plusieurs catégories :

Pour une liste détaillée des scripts de chaque catégorie et une description de chaque script, reportez-vous au manuel le Solaris Security Toolkit 4.1 Reference Manual.

Répertoire Documentation

Ce répertoire contient des fichiers texte comprenant des informations destinées à l'utilisateur, telles que le fichier README.

Répertoire man

Ce répertoire contient des sous-répertoires comprenant les sections de pages de manuel relatives aux commandes, fonctions et pilotes. Il inclut également le fichier windex, index des commandes fourni à titre gracieux.

Pour de plus amples informations sur ces pages de manuel, consultez-les directement ou reportez-vous au manuel Solaris Security Toolkit 4.1 Man Page Guide.

Répertoire Drivers

Ce répertoire contient des fichiers d'information sur la configuration indiquant quels fichiers sont exécutés et installés quand vous utilisez le logiciel Solaris Security Toolkit. Ce répertoire contient des pilotes, des scripts et des fichiers de configuration.

Exemple de pilotes et de scripts présents dans le répertoire Drivers :

Tous les pilotes spécifiques au produit et certains autres pilotes comportent trois fichiers chacun :

Ces trois fichiers sont placés entre crochets dans la liste précédente ; par exemple, sunfire_15k_sc-{config|hardening|secure}.driver. Les noms de ces fichiers sont indiqués par souci de précision. Toutefois, pour exécuter un pilote, vous devez utiliser uniquement le nom-secure.driver. Ce pilote appelle automatiquement les pilotes associés.

L'architecture de Solaris Security Toolkit comprend des informations de configuration pour permettre l'utilisation des scripts driver, finish et audit dans différents environnements, sans besoin de les modifier. Toutes les variables utilisées dans les scripts finish et audit sont conservées dans un groupe de fichiers de configuration --ces fichiers de configuration sont importés par les pilotes, afin que les scripts finish et audit puissent disposer de ces variables quand elles sont appelées par les pilotes.

Le logiciel Solaris Security Toolkit contient trois fichiers principaux de configuration, qui se trouvent tous dans le répertoire Drivers :

Les scripts Finish appelés par les pilotes se trouvent dans le répertoire Finish. Les scripts Audit appelés par les pilotes se trouvent dans le répertoire Audit. Les fichiers installés par les pilotes sont extraits du répertoire Files. Pour de plus amples informations sur les scripts finish et audit, reportez-vous aux chapitres correspondants dans ce manuel.

La FIGURE 1-2 représente un organigramme du flux de contrôle du pilote.


FIGURE 1-2 Flux de contrôle du pilote

Diagramme illustrant le flux de contrôle du pilote.


Toutes les variables d'environnement des fichiers .init sont importées en premier. Une fois ces variables importées, le pilote passe à la deuxième partie pour la définition de JASS_FILES et JASS_SCRIPTS. Ces définitions sont facultatives ; il est possible de définir un seul environnement, les deux ou aucun. La troisième partie du pilote appelle driver.run pour l'exécution des tâches définies par les variables d'environnement JASS_FILE et JASS_SCRIPTS.

L'EXEMPLE DE CODE 1-1 illustre le flux de contrôle du pilote.


EXEMPLE DE CODE 1-1 Flux de contrôle du pilote
DIR="`/bin/dirname $0'"
 
export DIR
. ${DIR}/driver.init
 
JASS_FILES="
                         /etc/cron.d/cron.allow
                         /etc/default/ftpd
                         /etc/default/telnetd
"
 
JASS_SCRIPTS="
                         install-at-allow.fin
                         remove-unneeded-accounts.fin
"
. ${DIR}/driver.run

 

Cet exemple de code définit et exporte la variable d'environnement DIR de sorte que les pilotes reconnaissent le pilote de départ. Ensuite, la variable d'environnement JASS_FILES est définie comme celle contenant les fichiers copiés du répertoire JASS_HOME_DIR/Files sur le client. La variable d'environnement JASS_SCRIPTS est alors définie avec les scripts finish qui sont exécutés par le logiciel Solaris Security Toolkit. Enfin, le durcissement est exécuté en appelant le pilote driver.run. Une fois appelé, le pilote driver.run copie les fichiers spécifiés parJASS_FILES et exécute les scripts spécifiés par JASS_SCRIPTS.

Répertoire Files

Ce répertoire est utilisé par la variable d'environnement JASS_FILES et le script driver.run. Il stocke les fichiers copiés sur le client JumpStart.

Ce répertoire contient les fichiers suivants :

Répertoire Finish

Ce répertoire contient les scripts finish qui introduisent les modifications et les mises à jour du système lors de l'installation. Les scripts de ce répertoire sont organisés en plusieurs catégories :

Pour une liste détaillée des scripts de chaque catégorie et une description de chaque script, reportez-vous au manuel le Solaris Security Toolkit 4.1 Reference Manual.

Répertoire OS

Ce répertoire contient uniquement les images du SE Solaris. Ces images sont utilisées pendant l'installation du logiciel JumpStart comme source d'installation du client et pour fournir le scripts add_install_client et rm_install_client. Le script add_client accepte ces noms de répertoires supplémentaires.

Pour de plus amples informations sur le chargement et la modification des images de Solaris OS, reportez-vous à l'ouvrage Sun BluePrints JumpStart Technology: Effective Use in the Solaris Operating Environment.

Les conventions de dénomination de fichiers d'installation sont indiquées ci-après.

Solaris, SE

Utilisez la norme de dénomination suivante pour le SE Solaris :

Solaris_version os_4 chiffres de l'années_2 chiffres du mois de la version du CD-ROM

Par exemple, le nom de répertoire pour le CD-ROM de Solaris 8 OS, daté d'avril 2001, devra être Solaris_8_2001-04. En séparant les mises à jour et les versions du SE Solaris, il est possible d'exercer un contrôle précis pour les tests et les déploiements.

Trusted Solaris OS

Utilisez la norme de dénomination suivante pour Trusted Solaris OS :

Trusted_Solaris_version os_4 chiffres de l'années_2 chiffres du mois de la version du CD-ROM

Par exemple, si la date de la version du logiciel Trusted Solaris était février 2000, le répertoire devra avoir le nom : Trusted_Solaris_8_2000-02.

Solaris OS Intel Platform Edition

Utilisez la norme de dénomination suivante pour le répertoire du SE Solaris Intel Platform Edition :

Solaris_version os_4 chiffres de l'années_2 chiffres du mois de la version du CD-ROM_ia

Par exemple, si la date de la version de Solaris OS Intel Platform Edition était avril 2001, le répertoire devra avoir le nom : Solaris_8_2001-04_ia.

Répertoire Packages

Ce répertoire contient les packages pouvant être installés avec un script finish. Par exemple, le package Sun Javatrademark System Web Server, anciennement connu sous le nom Suntrademark ONE Web Server et auparavant iPlanettrademark Web Server, peut être stocké dans le répertoire Packages de sorte que le script finish approprié puisse installer le logiciel selon les besoins.

Plusieurs scripts finish inclus dans le logiciel Solaris Security Toolkit effectuent l'installation du logiciel et des tâches de configuration de base. Les scripts qui installent le logiciel depuis le répertoire Packages comprennent :

Répertoire Patches

Ce répertoire doit être utilisé pour le stockage de clusters de patchs recommandés et de sécurité pour le Se Solaris. Les patchs requis doivent être téléchargés et extraits dans ce répertoire.

Le stockage et l'extraction des patchs dans ce répertoire optimise l'installation. Lorsque les patchs ont été extraits dans ce répertoire, le script d'installation des patchs du logiciel Solaris Security Toolkit automatise l'installation et vous évite de devoir extraire manuellement les clusters de patchs chaque fois que vous installez un système.

Créez des sous-répertoires pour chaque version du SE Solaris utilisée. Par exemple, vous pouvez avoir des répertoires 2.5.1_Recommended et 2.6_Recommended dans le répertoire Patches.

Le logiciel Solaris Security Toolkit prend en charge les clusters de patchs de Solaris OS Intel Platform Edition. La convention d'attribution des noms pour ces clusters de patchs est la même que celle du service SunSolve OnLineSM.

Le format est Solaris_<release>_x86_Recommended. Le cluster de patchs de Solaris OS Intel Platform Edition pour Solaris 8 OS doit se trouver dans un répertoire nommé Solaris_8_x86_Recommended.

Répertoire Profiles

Ce répertoire contient tous les profils JumpStart. Ces profils renferment des informations de configuration utilisées par le logiciel JumpStart pour déterminer les clusters Solaris pour l'installation (par exemple, Core, End User, Developer ou Entire Distribution), la configuration du disque d'installation et le type d'installation (par exemple, autonome) à effectuer.

Les profils JumpStart sont listés et utilisés dans le fichier rules pour définir comment les systèmes spécifiques ou les groupes de systèmes sont construits.

Répertoire Sysidcfg

Le répertoire Sysidcfg, similaire au répertoire Profiles, contient des fichiers qui ne sont utilisés que lors d'installations en mode JumpStart. Ces fichiers automatisent les installations du SE Solaris en fournissant les informations d'installation requises. Les informations spécifiques au SE Solaris sont stockées dans une arborescence de répertoire séparée.

Chaque version du SE Solaris possède son propre répertoire. Le répertoire contenant chaque version est nommé Solaris_Version SE. Le logiciel Solaris Security Toolkit contient des exemples de fichiers sysidcfg pour les versions 2.5.1 à 9 du SE Solaris.

Les exemples de fichiers sysidcfg peuvent être étendus à d'autres types de fichiers (par ex. par réseau, hôte, etc.). Le logiciel Solaris Security Toolkit prend en charge des fichiers arbitraires sysidcfg.

Pour de plus amples informations sur les fichiers sysidcfg, reportez-vous à l'ouvrage Sun BluePrints JumpStart Technology: Effective Use in the Solaris Operating Environment.

Référentiel de données

Le référentiel de données est une variable d'environnement dans le répertoire JASS_REPOSITORY qui prend en charge les annulations Solaris Security Toolkit, enregistre les données relatives à chaque exécution, maintient un ensemble de fichiers modifiés par le logiciel et enregistre les données pour le journal d'exécution. La fonction d'annulation se base sur les informations enregistrées sans le référentiel de données.


Maintien du contrôle de version

Il est vital de garder le contrôle de la version pour tous les fichiers et scripts utilisés par le logiciel Solaris Security Toolkit pour deux raisons. D'abord, l'un des objectifs de cet environnement est de pouvoir recréer une installation du système. Cet objectif serait impossible sans un instantané de toutes les versions de fichiers utilisées pendant une installation. Ensuite, vu que ces scripts remplissent des fonctions de sécurité--ce qui est un facteur critique pour de nombreuses entreprises--, il faut faire extrêmement attention à n'implémenter que des modifications appropriées et testées.

Un package de contrôle de version Source Code Control System (SCCS) est inclus dans le package Solaris OS SUNWsprot. Vous pouvez utiliser un autre logiciel de contrôle de version disponible en freeware ou en vente dans le commerce pour gérer les informations relatives à la version. Quel que soit le produit de contrôle de version utilisé, établissez une procédure de gestion des mises à jour et capturez les informations de la version pour toute nouvelle création future éventuelle.

Utilisez une solution de gestion d'intégrité en plus du contrôle de version pour déterminer si le contenu des fichiers a été modifié. Bien que les utilisateurs privilégiés d'un système peuvent ne pas avoir recours au système de contrôle de version, ils ne peuvent pas facilement éviter d'utiliser le système de gestion de l'intégrité, qui maintient sa base de données d'intégrité sur un système distant. Les solutions de gestion de l'intégrité fonctionnent mieux si elles sont centralisées, parce que les bases de données locales pourraient être modifiées par malveillance.


Exécution de versions de Solaris OS prises en charge

Le support du logiciel Solaris Security Toolkit est assuré par Sun uniquement dans le cadre des systèmes d'exploitation Solaris 8 et Solaris 9. Bien que le logiciel fonctionne sur les systèmes d'exploitation Solaris 2.5.1, Solaris 2.6 et Solaris 7, le support Sun est uniquement disponible pour les systèmes d'exploitation susmentionnés.

Le logiciel Solaris Security Toolkit détecte automatiquement la version du système d'exploitation Solaris installée, puis exécute les tâches adaptées à cette version.


Exécution des versions de SMS prises en charge

Si vous disposez de System Management Services (SMS) pour gérer votre contrôleur système (SC), le support Sun est disponible pour le logiciel Solaris Security Toolkit 4.1 à condition que vous utilisiez les versions 1.3 à 1.4.1 de SMS.


Configuration et personnalisation du logiciel Solaris Security Toolkit

Le logiciel Solaris Security Toolkit contient des valeurs par défaut pour les scripts, les fonctions de structure et les variables qui implémentent toutes les indications de sécurité dans l'ouvrage Sun BluePrints intituléEnterprise Security: Solaris Operating Environment Security Journal, Solaris Operating Environment Versions 2.5.1, 2.6, 7, and 8 et les articles Sun BluePrints OnLine concernant la sécurité. Ces paramètres ne conviennent pas à tous les systèmes ; vous devez donc personnaliser le logiciel Solaris Security Toolkit pour remplir les conditions de sécurité requises pour vos systèmes.

L'une des principales caractéristiques du logiciel Solaris Security Toolkit est que vous pouvez facilement le personnaliser en fonction de votre environnement, de vos systèmes et de vos besoins. Pour personnaliser le logiciel Solaris Security Toolkit, ajustez ses actions à l'aide de pilotes, de scripts finish, de scripts audit, de fonctions de structure, de variables d'environnement et modèles de fichiers.

La plupart des utilisateurs n'ont pas besoin de modifier le code de Solaris Security Toolkit. Toute modification pourrait avoir des conséquences négatives sur les prises en charge et les mises à jour. S'il est absolument nécessaire de modifier le code pour utiliser le logiciel Solaris Security Toolkit dans votre environnement, copiez ce code vers un fichier unique ou un nom de fonction, afin de pouvoir ensuite retrouver facilement les modifications (voir Instructions générales).

Vous trouverez tout au long de ce document des indications et des instructions pour la personnalisation du logiciel Security Toolkit. Vous trouverez des informations utiles sur la personnalisation des pilotes dans le manuel le Solaris Security Toolkit 4.1 Reference Manual. La personnalisation comporte la modification et la création de fichiers et de variables.

Les chapitres suivants donnent des exemples de personnalisation du logiciel Solaris Security Toolkit. Ces exemples ne sont que quelques illustrations de personnalisation du logiciel Solaris Security Toolkit ; les possibilités de personnalisation sont très nombreuses.

Les sections suivantes contiennent des informations que vous devez impérativement connaître avant de tenter toute personnalisation du logiciel Solaris Security Toolkit. Ces informations se basent sur l'expérience acquise après de nombreux déploiements et vous éviteront nombre d'embûches et de pièges.

Stratégies et conditions requises

La personnalisation et le déploiement du logiciel Solaris Security Toolkit nécessitent une bonne planification pour obtenir un résultat conforme aux attentes de votre entreprise et s'assurer que la configuration de la plate-forme est correcte.

En phase de planification, veillez à recueillir le maximum de données, y compris sur les politiques et les normes de sécurité, les réglementations et normes industrielles ainsi que les pratiques préférées des vendeurs.

En plus de ces informations, il est essentiel d'examiner les conditions de fonctionnement et d'application de manière à s'assurer que la configuration résultante n'aura aucune conséquence négative sur la capacité de la plate-forme à remplir les fonctions commerciales prévues.

Instructions générales

Pour la personnalisation du logiciel Solaris Security Toolkit, respectez les instructions générales suivantes. La compréhension et le respect de ces instructions simplifiera le déploiement tout en le rendant plus efficace.

     

Remarque - Sachez que si vous supprimez SUNWjass à l'aide de la commande pkgrm, les fichiers user.init et user.run, s'ils existent, ne seront pas supprimés. Ce comportement a lieu pour tous les fichiers du client qui sont ajoutés à la structure du répertoire Solaris Security Toolkit et qui ne sont pas inclus dans la distribution. Les fichiers dans le répertoire Files inclus dans la distribution de Solaris Security Toolkit et les fichierssysidcfg existent et seront donc supprimés.