JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Administration d'Oracle Solaris 11.1 : Services de sécurité     Oracle Solaris 11.1 Information Library (Français)
search filter icon
search icon

Informations document

Préface

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)

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.  Vérification de l'intégrité des fichiers à l'aide de BART (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)

Utilisation de RBAC (tâches)

Affichage et utilisation des valeurs par défaut RBAC (tâches)

Affichage et utilisation des valeurs par défaut RBAC (liste des tâches)

Affichage de tous les attributs de sécurité définis

Affichage des droits qui vous sont affectés

Prise d'un rôle

Modification des attributs de sécurité d'un utilisateur

Utilisation de vos droits d'administration

Personnalisation RBAC pour votre site (tâches)

Configuration initiale RBAC (liste des tâches)

Planification de votre implémentation RBAC

Création d'un rôle

Attribution de rôle

Audit des rôles

Création d'un profil de droits

Clonage et modification d'un profil de droits système

Création d'une autorisation

Ajout de propriétés RBAC aux anciennes applications

Dépannage de RBAC et de l'affectation de privilèges

Gestion de RBAC (tâches)

Gestion de RBAC (liste des tâches)

Modification du mot de passe d'un rôle

Modification des attributs de sécurité d'un rôle

Réorganisation des attributs de sécurité affectés

Limitation d'un administrateur aux droits affectés de manière explicite

Octroi à un utilisateur de l'autorisation d'utiliser son propre mot de passe pour prendre un rôle

Modification du rôle root en utilisateur

Utilisation des privilèges (tâches)

Création d'une liste des privilèges sur le système

Détermination des privilèges qui vous sont attribués directement

Détermination des commandes privilégiées que vous pouvez exécuter

Détermination de privilèges sur un processus

Détermination des privilèges requis par un programme

Application d'une stratégie de privilège étendue à un port

Exécution d'un script shell avec des commandes privilégiées

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.  Utilisation de modules d'authentification enfichables

15.  Utilisation de Secure Shell

16.  Secure Shell (référence)

17.  Utilisation de l'authentification simple et de la couche de sécurité

18.  Authentification des services réseau (tâches)

Partie VI Service Kerberos

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

26.  Audit (présentation)

27.  Planification de l'audit

28.  Gestion de l'audit (tâches)

29.  Audit (référence)

Glossaire

Index

Affichage et utilisation des valeurs par défaut RBAC (tâches)

Des droits sont affectés aux utilisateurs par défaut. Les droits pour tous les utilisateurs d'un système sont affectés dans le fichier /etc/security/policy.conf.

Affichage et utilisation des valeurs par défaut RBAC (liste des tâches)

Lors de l'installation d'Oracle Solaris, votre système est configuré avec des droits d'utilisateurs et des droits de processus. Sans autre configuration, utilisez la liste des tâches ci-dessous pour afficher et utiliser RBAC.

Tâche
Description
Voir
Affichez le contenu des bases de données d'attributs de sécurité.
Répertoriez toutes les autorisations, les profils de droits et les commandes avec les attributs de sécurité sur le système.
Affichez vos droits.
Dressez la liste de vos profils de droits, vos autorisations, vos privilèges et vos rôles affectés.
Prenez le rôle root.
L'utilisateur initial acquiert des droits d'administration.
Modifiez les droits d'un utilisateur.
Ajoutez des attributs de sécurité à un utilisateur standard ou les supprimez.
Connectez-vous en tant qu'administrateur.
Les utilisateurs auxquels des droits d'administration sont affectés disposent de plusieurs méthodes pour utiliser ces droits.

Affichage de tous les attributs de sécurité définis

Utilisez les commandes suivantes pour répertorier toutes les autorisations et tous les profils de droits et les commandes avec les attributs de sécurité sur le système. Pour répertorier tous les privilèges définis, reportez-vous à la section Création d'une liste des privilèges sur le système.

  1. Répertoriez toutes les autorisations.
    • Répertorie les noms de toutes les autorisations du service de noms.
      % auths info
          solaris.account.activate
          solaris.account.setpolicy
          solaris.admin.edit
      ...
          solaris.zone.login
          solaris.zone.manage
    • Répertorie les noms d'autorisation par profil de droits.
      % getent auth_attr | more
      solaris.:::All Solaris Authorizations::help=AllSolAuthsHeader.html
      solaris.account.:::Account Management::help=AccountHeader.html
      ...
      solaris.zone.login:::Zone Login::help=ZoneLogin.html
      solaris.zone.manage:::Zone Deployment::help=ZoneManage.html
  2. Répertoriez tous les profils de droits.
    • Répertorie les noms de tous les profils de droits du service de noms.
      % profiles -a
              Console User
              CUPS Administration
              Desktop Removable Media User
      ...
              VSCAN Management
              WUSB Management
    • Répertorie les définitions complètes de tous les profils de droits.
      % getent prof_attr | more
      All:::Execute any command as the user or role:help=RtAll.html
      Audit Configuration:::Configure Solaris Audit:auths=solaris.smf.value.audit;
      help=RtAuditCfg.html
      ...
      Zone Management:::Zones Virtual Application Environment Administration:
      help=RtZoneMngmnt.html
      Zone Security:::Zones Virtual Application Environment Security:auths=solaris.zone.*,
      solaris.auth.delegate;help=RtZoneSecurity.html ...
  3. Répertoriez toutes les commandes avec des attributs de sécurité.
    % getent exec_attr | more
    All:solaris:cmd:::*:
    Audit Configuration:solaris:cmd:::/usr/sbin/auditconfig:privs=sys_audit
    ...
    Zone Security:solaris:cmd:::/usr/sbin/txzonemgr:uid=0
    Zone Security:solaris:cmd:::/usr/sbin/zonecfg:uid=0 ...

Affichage des droits qui vous sont affectés

Utilisez les commandes suivantes pour afficher vos affectations RBAC. Pour afficher tous les droits qui peuvent être affectés, reportez-vous à la section Affichage de tous les attributs de sécurité définis.

  1. Répertoriez vos profils de droits.
    % profiles
    Basic Solaris User
    All

    Les profils de droits précédents sont affectés à tous les utilisateurs par défaut. Si vous êtes l'utilisateur initial, vous possédez une liste plus longue.

    % profiles Initial user
    System Administrator
    Audit Review
    ...
    CPU Power Management
    Basic Solaris User
    All
  2. Répertoriez vos autorisations.
    % auths
    solaris.device.cdrw,solaris.device.mount.removable,solaris.mail.mailq
    solaris.network.autoconf.read,solaris.admin.wusb.read
    solaris.smf.manage.vbiosd,solaris.smf.value.vbiosd

    Les autorisations sont incluses dans les profils de droits qui sont assignés à tous les utilisateurs par défaut.

  3. Répertoriez les rôles qui vous sont affectés.
    % roles
    root

    Ce rôle est affecté à l'utilisateur initial par défaut. Aucun rôle indique qu'aucun rôle ne vous est affecté.

  4. Répertoriez les privilèges dans votre shell par défaut.
    % ppriv $$
    1234:    /bin/csh
    flags = <none>
        E: basic
        I: basic
        P: basic
        L: all

    Le jeu de privilèges de base est affecté par défaut à tous les utilisateurs. Le jeu limite par défaut est constitué de tous les privilèges.

    % ppriv -vl basic
    file_link_any
            Allows a process to create hardlinks to files owned by a uid
            different from the process' effective uid.
    file_read
            Allows a process to read objects in the filesystem.
    file_write
            Allows a process to modify objects in the filesystem.
    net_access
            Allows a process to open a TCP, UDP, SDP or SCTP network endpoint.
    proc_exec
            Allows a process to call execve().
    proc_fork
            Allows a process to call fork1()/forkall()/vfork()
    proc_info
            Allows a process to examine the status of processes other
            than those it can send signals to.  Processes which cannot
            be examined cannot be seen in /proc and appear not to exist.
    proc_session
            Allows a process to send signals or trace processes outside its session.
  5. Répertoriez les privilèges sur les commandes dans vos profils de droits.
    % profiles -l
      Basic Solaris User
    ...
       /usr/bin/cdrecord.bin   privs=file_dac_read,sys_devices,
         proc_lock_memory,proc_priocntl,net_privaddr
       /usr/bin/readcd.bin     privs=file_dac_read,sys_devices,net_privaddr
       /usr/bin/cdda2wav.bin   privs=file_dac_read,sys_devices,
         proc_priocntl,net_privaddr
      All
       * 

    Les profils de droit d'un utilisateur peuvent comprendre des commandes qui s'exécutent avec des privilèges particuliers. Le profil d'utilisateur de base Solaris comprend des commandes permettant de lire et d'écrire sur des CD-ROM.

Exemple 9-1 Liste des autorisations d'un utilisateur

% auths username
solaris.device.cdrw,solaris.device.mount.removable,solaris.mail.mailq

Exemple 9-2 Liste des profils de droits d'un utilisateur ou d'un rôle

La commande suivante répertorie les profils de droits d'un utilisateur spécifique.

% profiles jdoe
jdoe: 
          Basic Solaris User
          All

La commande suivante répertorie les profils de droits d'un rôle cryptomgt.

% profiles cryptomgt
cryptomgt:
          Crypto Management
          Basic Solaris User
          All

La commande suivante répertorie les profils de droits du rôle root :

% profiles root
root:
          All
          Console User
          Network Wifi Info
          Desktop Removable Media User
          Suspend To RAM
          Suspend To Disk
          Brightness
          CPU Power Management
          Network Autoconf User
          Basic Solaris User

Exemple 9-3 Liste des rôles affectés à un utilisateur

La commande suivante répertorie les rôles affectés à un utilisateur spécifique.

% roles jdoe
root

Exemple 9-4 Liste des privilèges d'un utilisateur sur des commandes spécifiques

La commande suivante répertorie les commandes privilégiées dans les profils de droits d'un utilisateur standard.

% profiles -l jdoe
jdoe: 
  Basic Solaris User
...
   /usr/bin/cdda2wav.bin   privs=file_dac_read,sys_devices,
     proc_priocntl,net_privaddr
   /usr/bin/cdrecord.bin   privs=file_dac_read,sys_devices,
     proc_lock_memory,proc_priocntl,net_privaddr
   /usr/bin/readcd.bin     privs=file_dac_read,sys_devices,net_privaddr
...

Prise d'un rôle

Avant de commencer

Le rôle doit déjà vous être affecté. Par défaut, seul le rôle root existe.

  1. Dans une fenêtre de terminal, déterminez les rôles que vous pouvez prendre.
    % roles
    Comma-separated list of role names is displayed
  2. Utilisez la commande su pour prendre un rôle.
    % su - rolename
    Password: <Type rolename password>
    $

    La commande su - rolename change le shell en shell de profil pour le rôle. Un shell de profil reconnaît les attributs de sécurité, tels que les autorisations, les privilèges et les bits ID définis.

  3. (Facultatif) Vérifiez que vous prenez à présent un rôle.
    $ /usr/bin/whoami
    rolename

    Vous pouvez maintenant effectuer des tâches de ce rôle dans cette fenêtre de terminal.

  4. (Facultatif) Affichez les capacités de votre rôle.

    Pour obtenir un exemple de sortie, reportez-vous à la section Affichage des droits qui vous sont affectés.

    $ profiles -l
    verbose rights profiles output
    $ auths
    authorizations output

Exemple 9-5 Prise du rôle root

Dans l'exemple suivant, l'utilisateur initial prend le rôle root et répertorie les privilèges dans le shell du rôle.

% roles
root
% su - root
Password: <Type root password>
# Prompt changes to root prompt
# ppriv $$
1200:   pfksh
flags = <none>
        E: all
        I: basic
        P: all
        L: all

Pour plus d'informations sur les privilèges, reportez-vous à la section Privilèges (présentation).

Modification des attributs de sécurité d'un utilisateur

Les propriétés de l'utilisateur comprennent le shell de connexion, les profils de droits et les rôles. La méthode la plus sûre pour accorder des capacités d'administration à un utilisateur est de lui attribuer un rôle. Pour plus de détails, reportez-vous à la section Considérations relatives à la sécurité lors de l'affectation directe d'attributs de sécurité.

Avant de commencer

Dans la configuration par défaut, vous devez prendre le rôle root pour modifier les attributs de sécurité d'un utilisateur.

Après avoir configuré RBAC pour votre site, vous disposez d'autres possibilités. Pour modifier la plupart des attributs de sécurité d'un utilisateur, vous devez vous connecter en tant qu'administrateur disposant du profil de droits User Security (sécurité des utilisateurs). Pour affecter des indicateurs d'audit ou modifier le mot de passe d'un rôle, vous devez prendre le rôle root. Pour modifier d'autres attributs utilisateur, vous devez vous connecter en tant qu'administrateur disposant du profil de droits User Management (gestion des utilisateurs). Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d'administration.

Exemple 9-6 Création d'un utilisateur pouvant gérer DHCP

Dans cet exemple, l'administrateur de sécurité crée un utilisateur dans LDAP. Au moment de la connexion, l'utilisateur jdoe-dhcp peut gérer DHCP.

# useradd -P "DHCP Management" -s /usr/bin/pfbash -S ldap  jdoe-dhcp

Dans la mesure où pfbash est affecté à l'utilisateur comme shell de connexion, les attributs de sécurité dans le profil de droits DHCP Management (gestion DHCP) sont disponibles pour l'utilisateur dans son shell par défaut.

Exemple 9-7 Affectation d'autorisations directement à un utilisateur

Dans cet exemple, l'administrateur de sécurité créer un utilisateur local qui peut contrôler la luminosité de l'écran.

# useradd -c "Screened JDoe, local" -s /usr/bin/pfbash \
-A solaris.system.power.brightness  jdoe-scr

Cette autorisation est ajoutée aux affectations d'autorisation existantes de l'utilisateur.

Exemple 9-8 Suppression de privilèges du jeu limite d'un utilisateur

Dans l'exemple suivant, toutes les sessions dérivées de la connexion initiale de jdoe ne peuvent pas utiliser le privilège sys_linkdir. C'est-à-dire que l'utilisateur ne peut pas créer de liens physiques vers les répertoires, ni rompre un lien vers des répertoires et ce, même après avoir exécuté la commande su.

$ usermod -K 'limitpriv=all,!sys_linkdir' jdoe
$ userattr limitpriv jdoe
all,!sys_linkdir

Exemple 9-9 Affectation de privilèges directement à un utilisateur

Dans cet exemple, l'administrateur de sécurité confie à l'utilisateur jdoe un privilège très spécifique qui affecte le temps système.

$ usermod -K defaultpriv='basic,proc_clock_highres' jdoe

Les valeurs pour le mot-clé defaultpriv remplacent les valeurs existantes. Par conséquent, pour que l'utilisateur conserve les privilèges basic, la valeur basic est spécifiée. Dans la configuration par défaut, tous les utilisateurs disposent de privilèges de base. Pour obtenir la liste des privilèges, reportez-vous à l'Étape 4.

Utilisation de vos droits d'administration

Dans le rôle root, l'utilisateur initial dispose de tous les droits d'administration.

L'Étape 1 décrit l'administration du système si des droits d'administration vous ont été affectés. L'Étape 2 décrit comment les comptes non-root peuvent modifier un fichier système.

Avant de commencer

Vous disposez de droits qui ne sont pas affectés aux utilisateurs standard. Si vous n'êtes pas connecté en tant que root, vous devez obtenir un rôle, un profil de droits d'administration ou des autorisations ou privilèges spécifiques.

  1. Choisissez l'une des méthodes suivantes pour exécuter des commandes d'administration.

    Ouvrez une fenêtre de terminal.

    • Connectez-vous en tant que root
      % su -
      Password: Type the root password
      #

      Remarque - Cette méthode fonctionne aussi bien lorsque root est un utilisateur que lorsqu'il est un rôle. L'invite avec le signe dièse (#) indique que vous êtes maintenant l'utilisateur root.


    • Prenez un rôle qui vous a été affecté.

      Dans l'exemple suivant, vous prenez un rôle de configuration d'audit. Ce rôle inclut le profil de droits Audit Configuration (configuration d'audit).

      % su - audadmin
      Password: Type the audadmin password
      $

      Le shell dans lequel vous avez tapé cette commande est désormais dans le shell de profil. Dans ce shell, vous pouvez exécuter la commande auditconfig. Pour en savoir plus sur les shells de profil, reportez-vous à la section Shells de profil et RBAC.


      Astuce - Suivez les étapes décrites à la section Affichage des droits qui vous sont affectés pour afficher les capacités de votre rôle.


    • En tant qu'utilisateur, utilisez la commande pfbash pour créer un shell qui s'exécute avec des droits d'administration.

      Par exemple, le jeu de commandes ci-après vous permet de visualiser les valeurs de présélection d'audit et la stratégie d'audit dans le shell pfbash :

      % pfbash
      $ auditconfig -getflags
      active user default audit flags = ua,ap,lo(0x45000,0x45000)
      configured user default audit flags = ua,ap,lo(0x45000,0x45000)
      $ auditconfig -getpolicy
      configured audit policies = cnt
      active audit policies = cnt
    • En tant qu'utilisateur, utilisez la commande pfexec pour créer un processus qui s'exécute avec des droits d'administration.

      Exécutez la commande pfexec avec le nom d'une commande privilégiée de votre profil de droits. Par exemple, la commande suivante vous permet d'afficher les indicateurs d'audit présélectionnés de l'utilisateur :

      % pfexec auditconfig -getflags
      active user default audit flags = ua,ap,lo(0x45000,0x45000)
      configured user default audit flags = ua,ap,lo(0x45000,0x45000)

      Les mêmes limitations de privilèges s'appliquent à pfexec comme à pfbash. Cependant, pour exécuter une autre commande privilégiée, vous devez saisir pfexec une nouvelle fois avant de taper la commande privilégiée.

      % pfexec auditconfig -getpolicy
      configured audit policies = cnt
      active audit policies = cnt
    • En tant qu'utilisateur, utilisez la commande sudo pour créer un processus qui s'exécute avec des droits d'administration.

      Exécutez la commande sudo avec le nom d'une commande d'administration qui vous est affectée dans le fichier sudoers. Pour plus d'informations, reportez-vous aux pages de manuel sudo(1M) et sudoers(4).

  2. Pour modifier un système de fichiers, utilisez la commande pfedit.

    Si vous n'êtes pas connecté en tant qu'utilisateur root avec l'ID utilisateur 0, par défaut, vous ne pouvez pas modifier les fichiers système. Toutefois, si l'autorisation solaris.admin.edit/ path-to-system-file vous est affectée, vous pouvez modifier system-file . Par exemple, si l'autorisation solaris.admin.edit/etc/security/audit_warn vous est affectée, vous pouvez modifier le fichier audit_warn.

    $ pfedit /etc/security/audit_warn

    La commande utilise la valeur de $EDITOR pour déterminer l'éditeur de texte. Pour plus d'informations, reportez-vous à la page de manuel pfedit(1M). La commande pfedit est exécutée de façon utile par le rôle root , si l'audit est configuré pour auditer les événements AUE_PFEXEC.

Exemple 9-10 Mise en cache de l'authentification pour faciliter l'utilisation des rôles

Dans cet exemple, l'administrateur configure un rôle pour gérer la configuration d'audit et facilite son utilisation en mettant en cache l'authentification de l'utilisateur. Tout d'abord, l'administrateur crée et affecte le rôle.

# roleadd -K roleauth=user -P "Audit Configuration" audadmin
# usermod -R +audadmin jdoe

Quand jdoe utilise l'option -c lors du changement de rôle, un mot de passe est requis avant que la sortie auditconfig ne s'affiche :

% su - audadmin -c auditconfig option
Password:
auditconfig output

Si l'authentification n'est pas mise en cache, et jdoe réexécute immédiatement la commande, une invite de mot de passe s'affiche.

L'administrateur crée un fichier dans le répertoire pam.d pour contenir une pile su qui permet la mise en cache de l'authentification, de sorte que le mot de passe est requis initialement, mais ne l'est plus par la suite, après qu'un certain laps de temps s'est écoulé.

# pfedit /etc/pam.d/su
## Cache authentication for switched user
#
auth required           pam_unix_cred.so.1
auth sufficient         pam_tty_tickets.so.1
auth requisite          pam_authtok_get.so.1
auth required           pam_dhkeys.so.1
auth required           pam_unix_auth.so.1

Après avoir créé le fichier, l'administrateur vérifie les fautes de frappe, omissions ou répétitions dans les entrées.

L'administrateur doit fournir la pile su précédente entière. La module pam_tty_tickets.so.1 met en oeuvre le cache. Pour plus d'informations sur PAM, reportez-vous à la page de manuel pam.conf(4) et au Chapitre 14, Utilisation de modules d'authentification enfichables.

Une fois que l'administrateur a ajouté le fichier PAM su et réinitialisé le système, tous les rôles, y compris le rôle audadmin, sont invités une seule fois à saisir un mot de passe lors de l'exécution d'une série de commandes.

% su - audadmin -c auditconfig option
Password:
auditconfig output
% su - audadmin -c auditconfig option
auditconfig output
...