Ignorer les liens de navigation | |
Quitter l'aperu | |
Administration d'Oracle Solaris : services de sécurité Oracle Solaris 11 Information Library (Français) |
Partie I Présentation de la sécurité
1. Services de sécurité (présentation)
Partie II Sécurité du système, des fichiers et des périphériques
2. Gestion de la sécurité de la machine (présentation)
Contrôle de l'accès à un système informatique
Maintenance de la sécurité physique
Gestion du contrôle de connexion
Gestion des informations de mot de passe
Contrôle de l'accès aux périphériques
Stratégie de périphériques (présentation)
Allocation des périphériques (présentation)
Contrôle de l'accès aux ressources de la machine
Limitation et surveillance du superutilisateur
Configuration du contrôle d'accès basé sur les rôles pour remplacer le superutilisateur
Prévention des mauvaises utilisations involontaires des ressources système
Définition de la variable PATH
Affectation d'un shell restreint à des utilisateurs
Restriction de l'accès aux données dans les fichiers
Restriction des fichiers exécutables setuid
Utilisation de la configuration Secure by Default
Utilisation des fonctions de gestion des ressources
Utilisation des zones Oracle Solaris
Contrôle de l'accès aux fichiers
Protection des fichiers par chiffrement
Utilisation des listes de contrôle d'accès
Partage de fichiers entre des machines
Restriction de l'accès root aux fichiers partagés
Authentification et autorisation pour l'accès à distance
Chiffrement et systèmes pare-feu
Génération de rapports sur les problèmes de sécurité
3. Contrôle de l'accès aux systèmes (tâches)
4. Service d'analyse antivirus (tâches)
5. Contrôle de l'accès aux périphériques (tâches)
6. Utilisation de l'outil de génération de rapports d'audit de base (tâches)
7. Contrôle de l'accès aux fichiers (tâches)
Partie III Rôles, profils de droits et privilèges
8. Utilisation des rôles et des privilèges (présentation)
9. Utilisation du contrôle d'accès basé sur les rôles (tâches)
10. Attributs de sécurité dans Oracle Solaris (référence)
Partie IV Services cryptographiques
11. Structure cryptographique (présentation)
12. Structure cryptographique (tâches)
13. Structure de gestion des clés
Partie V Services d'authentification et communication sécurisée
14. Authentification des services réseau (tâches)
17. Utilisation de Secure Shell (tâches)
19. Introduction au service Kerberos
20. Planification du service Kerberos
21. Configuration du service Kerberos (tâches)
22. Messages d'erreur et dépannage de Kerberos
23. Administration des principaux et des stratégies Kerberos (tâches)
24. Utilisation des applications Kerberos (tâches)
25. Service Kerberos (référence)
Partie VII Audit dans Oracle Solaris
En tant qu'administrateur système, vous pouvez contrôler et surveiller l'activité du système. Vous pouvez définir des limites quant aux utilisateurs pouvant utiliser les ressources. Vous pouvez consigner l'utilisation des ressources et surveiller qui utilise les ressources. Vous pouvez également configurer vos systèmes pour réduire l'utilisation inappropriée des ressources.
Votre système nécessite un mot de passe root pour l'accès superutilisateur. Dans la configuration par défaut, l'utilisateur ne peut pas se connecter à distance à un système en tant que root. Lors d'une connexion à distance, un utilisateur doit se connecter avec son nom d'utilisateur, puis utiliser la commande su pour se connecter en tant que root. Vous pouvez surveiller les personnes utilisant la commande su, en particulier les utilisateurs qui essaient d'obtenir un accès superutilisateur. Pour plus d'informations sur les procédures permettant de surveiller le superutilisateur et de limiter l'accès au superutilisateur, reportez-vous à la rubrique Contrôle et restriction du superutilisateur (tâches).
Fonction d'Oracle Solaris, le contrôle d'accès basé sur les rôles (RBAC) est conçu pour distribuer les capacités du superutilisateur à des rôles d'administration. Le superutilisateur, utilisateur root, a accès à toutes les ressources du système. Avec RBAC, vous pouvez remplacer root par un ensemble de rôles disposant de pouvoirs discrets. Par exemple, vous pouvez configurer un rôle pour gérer la création des comptes utilisateur, et un autre rôle pour gérer les modifications d'un fichier du système. Lorsque vous avez établi un rôle pour gérer une fonction ou un ensemble de fonctions, vous pouvez supprimer ces fonctions des capacités de l'utilisateur root.
Chaque rôle exige qu'un utilisateur connu se connecte avec son nom d'utilisateur et son mot de passe. Une fois connecté, l'utilisateur endosse le rôle avec un mot de passe spécifique. Par conséquent, toute personne connaissant le mot de passe root a une capacité limitée d'endommager votre système. Pour plus d'informations sur le contrôle RBAC, reportez-vous à la section Contrôle d'accès basé sur les rôles (présentation).
Vous pouvez empêcher vos utilisateurs et vous-même de commettre des erreurs involontaires de l'une des façons suivantes :
Vous pouvez empêcher l'exécution d'un cheval de Troie en définissant correctement la variable PATH.
Vous pouvez affecter un shell restreint aux utilisateurs. Un shell restreint empêche les erreurs d'utilisateurs en orientant ceux-ci vers les parties du système dont ils ont besoin pour effectuer leurs tâches. Une configuration réalisée avec soin permet de vous assurer que les utilisateurs accèdent uniquement aux parties du système requises pour travailler efficacement.
Vous pouvez définir des autorisations restrictives sur les fichiers auxquels les utilisateurs n'ont pas besoin d'accéder.
Vous devez veiller à définir correctement la variable PATH. Autrement, vous risquez d'exécuter par mégarde un programme introduit par un tiers. Le programme intrusif peut corrompre vos données ou endommager votre système. Ce type de programme, qui crée un risque de sécurité, est appelé un cheval de Troie. Par exemple, un programme su de substitution peut être placé dans un répertoire public où, en tant qu'administrateur système, vous pouvez exécuter le programme de substitution. Un tel script ressemble exactement à la commande su standard. Etant donné que le script se supprime lui-même après l'exécution, vous disposez de peu de moyens de prouver que vous avez réellement exécuté un cheval de Troie.
La variable PATH est automatiquement définie à la connexion. Le chemin d'accès est défini par l'intermédiaire de vos fichiers d'initialisation, comme .bashrc et /etc/profile. Lorsque vous configurez le chemin de recherche d'utilisateur pour que le répertoire courant (.) apparaisse en dernier, vous êtes protégé contre l'exécution de ce type de cheval de Troie. La variable PATH du compte root ne doit absolument pas inclure le répertoire actuel.
Le shell standard permet à un utilisateur d'ouvrir des fichiers, exécuter des commandes, et ainsi de suite. Le shell restreint limite la capacité d'un utilisateur à changer de répertoires et exécuter des commandes. Le shell restreint est appelé avec la commande /usr/lib/rsh. Notez que le shell restreint n'est pas le shell distant, lequel est /usr/sbin/rsh.
Le shell restreint diffère d'un shell standard de l'une des manières suivantes :
L'utilisateur est limité à son répertoire personnel, de sorte qu'il ne peut pas utiliser la commande cd pour changer de répertoire. Par conséquent, l'utilisateur ne peut pas parcourir des fichiers système.
L'utilisateur ne peut pas modifier la variable PATH. Il peut donc utiliser uniquement des commandes dans le chemin d'accès défini par l'administrateur système. L'utilisateur ne peut pas non plus exécuter de commandes ou de scripts à l'aide d'un nom de chemin d'accès complet.
Le shell restreint vous permet de limiter la capacité d'un utilisateur à parcourir des fichiers système. Le shell crée un environnement restreint pour un utilisateur ayant besoin d'effectuer des tâches spécifiques. Cependant, le shell restreint n'est pas complètement sécurisé et vise uniquement à empêcher des utilisateurs non qualifiés de causer des dommages par inadvertance.
Pour plus d'informations sur le shell restreint, utilisez la commande man -s1m rsh pour voir la page de manuel rsh(1M).
Etant donné qu'Oracle Solaris est un environnement multiutilisateur, la sécurité du système de fichiers constitue le risque de sécurité le plus élémentaire sur un système. Vous pouvez utiliser des protections de fichier UNIX conventionnelles pour protéger vos fichiers. Vous pouvez également utiliser des listes de contrôle d'accès (ACL) qui assurent une plus grande sécurité.
Vous voulez peut-être permettre à certains utilisateurs de lire des fichiers et autoriser d'autres utilisateurs à modifier ou supprimer des fichiers . Il se peut que vous disposiez de données dont vous souhaitez qu'elles ne soient vues par personne d'autre. Chapitre 7, Contrôle de l'accès aux fichiers (tâches) explique comment définir les autorisations de fichier.
Les fichiers exécutables peuvent constituer des risques pour la sécurité. De nombreux programmes exécutables doivent être exécutés en tant que root pour fonctionner correctement. Ces programmes setuid s'exécutent lorsque l'ID utilisateur est défini sur 0. Toute personne exécutant ces programmes les exécute avec l'ID root. Un programme s'exécutant avec l'ID root pose un problème de sécurité potentiel si le programme n'a pas été écrit en tenant compte des questions de sécurité.
A l'exception des exécutables fournis par Oracle avec le bit setuid défini sur root, vous devez interdire l'utilisation des programmes setuid. Si vous ne pouvez pas interdire l'utilisation des programmes setuid, vous devez restreindre leur utilisation. Une administration sécurisée requiert quelques programmes setuid.
Pour plus d'informations, consultez Protection contre les problèmes de sécurité causés par les fichiers exécutables. Pour plus d'informations sur les procédures, reportez-vous à la section Protection contre les programmes présentant des risques de sécurité (liste des tâches).
Par défaut, lorsque Oracle Solaris est installé, un grand nombre de services réseau sont désactivés. Cette configuration est dite SDB, "sécurisée par défaut". Avec la configuration SBD, le seul service réseau acceptant les demandes réseau est le démon sshd. Tous les autres services réseau sont désactivés ou traitent uniquement des requêtes locales. Pour activer des services réseau spécifiques, comme ftp, utilisez l'utilitaire SMF (gestion des services) d'Oracle Solaris. Pour plus d'informations, reportez-vous aux pages de manuel netservices(1M) et smf(5).
Le logiciel Oracle Solaris offre des fonctions évoluées de gestion des ressources. Ces fonctions vous permettent d'allouer, de planifier, de surveiller et de limiter l'utilisation des ressources par les applications dans un environnement de consolidation du serveur. La structure de contrôle des ressources vous permet de définir des contraintes sur les ressources du système utilisées par les processus. Ces contraintes aident à prévenir les attaques par déni de service effectuées par un script tentant d'envahir les ressources du système.
Avec les fonctions de gestion des ressources d'Oracle Solaris, vous pouvez désigner des ressources pour des projets particuliers. Vous pouvez également régler de façon dynamique les ressources disponibles. Pour plus d'informations, reportez-vous à la Partie I, Gestion des ressources Oracle Solaris du manuel Administration Oracle Solaris : Oracle Solaris Zones, Oracle Solaris 10 Zones et gestion des ressources.
Les zones Oracle Solaris offrent un environnement d'exécution d'applications dans lequel les processus sont isolés du reste du système au sein d'une seule instance du SE Oracle Solaris. Cela empêche les processus exécutés dans une zone de contrôler ou d'affecter les processus exécutés dans d'autres zones. Ainsi, même un processus exécuté avec des capacités de superutilisateur ne peut affecter l'activité des autres zones.
Les zones Oracle Solaris sont idéales pour les environnements qui regroupent plusieurs applications sur un serveur unique. Pour plus d'informations, reportez-vous à la Partie II, Oracle Solaris Zones du manuel Administration Oracle Solaris : Oracle Solaris Zones, Oracle Solaris 10 Zones et gestion des ressources.
En tant qu'administrateur système, vous devez surveiller l'activité du système. Vous devez connaître tous les aspects de vos machines, y compris les éléments suivants :
Quelle est la charge normale ?
Qui a accès au système ?
Quand les individus accèdent-ils au système ?
Quels programmes s'exécutent habituellement sur le système ?
Grâce à ce type d'informations, vous pouvez utiliser les outils disponibles pour auditer l'utilisation du système et surveiller les activités des utilisateurs individuels. La surveillance est très utile lorsqu'une violation de sécurité est suspectée. Pour plus d'informations sur le service d'audit, reportez-vous au Chapitre 26, Audit (présentation).
En tant qu'administrateur système, vous devez vous assurer que les fichiers installés sur les systèmes que vous administrez n'ont pas subi de modifications inattendues. Dans les installations de grande taille, un outil de comparaison et de génération de rapports sur la pile de logiciels sur chacun de vos systèmes vous permet d'effectuer le suivi de vos systèmes. L'outil de génération de rapports d'audit de base (BART) permet de valider de manière exhaustive les systèmes en effectuant des vérifications d'un ou plusieurs systèmes dans le temps au niveau des fichiers. Les modifications apportées à un manifeste BART sur l'ensemble des systèmes ou pour un système au fil du temps peuvent valider l'intégrité de vos systèmes. BART assure la création et la comparaison de manifestes et fournit des règles pour les rapports d'écriture de script. Pour plus d'informations, reportez-vous au Chapitre 6, Utilisation de l'outil de génération de rapports d'audit de base (tâches).