Vous pouvez empêcher toute connexion non autorisée à un système ou au réseau, par le biais de l'affectation d'un mot de passe et du contrôle de connexion. Un mot de passe est un mécanisme d'authentification simple. Tous les comptes sur un système doivent disposer d'un mot de passe. Un compte sans mot de passe rend l'ensemble du réseau accessible à un intrus ayant deviné un nom d'utilisateur. Un algorithme de mot de passe fort protège contre les attaques en force.
Lorsqu'un utilisateur se connecte à un système, la commande login vérifie le service de noms adéquat ou la base de données de service d'annuaire adéquate en fonction des informations présentes dans le service de commutation de noms, svc:/system/name-service/switch . Pour changer les valeurs dans un service de noms SMF, vous utilisez la base de données des commandes. Les services de noms indiquent l'emplacement des bases de données qui peuvent avoir une incidence sur la connexion :
files : désigne les fichiers /etc sur le système local
ldap : désigne le service d'annuaire LDAP sur le serveur LDAP
nis : désigne la base de données NIS sur le serveur maître NIS
dns : désigne le service de noms de domaine sur le réseau
Pour une description du service de noms, reportez-vous à la page de manuel nscd(1M). Pour plus d'informations sur les services de noms et les services d'annuaire, reportez- vous aux sections Utilisation des services de noms et d’annuaire Oracle Solaris 11.2 : DNS et NIS et Utilisation des services de noms et d’annuaire Oracle Solaris 11.2 : LDAP .
La commande login vérifie l'identifiant et le mot de passe indiqués par l'utilisateur. Si le nom d'utilisateur ne figure pas dans la base de données des mots de passe, la commande login refuse l'accès au système. Si le mot de passe ne correspond pas au nom d'utilisateur spécifié, la commande login refuse l'accès au système. Lorsque l'utilisateur fournit un nom d'utilisateur valide et son mot de passe correspondant, le système accorde à l'utilisateur l'accès au système.
Des modules PAM peuvent simplifier la connexion aux applications après une connexion réussie au système. Pour plus d'informations, voir Chapitre 1, Utilisation de modules d’authentification enfichables du manuel Gestion de Kerberos et d’autres services d’authentification dans Oracle Solaris 11.2 .
Des mécanismes d'authentification et d'autorisation sophistiqués sont disponibles sur les systèmes Oracle Solaris. Pour une description des mécanismes d'authentification et d'autorisation au niveau du réseau, reportez-vous à la section Authentification et autorisation pour l'accès à distance.
Lorsque des utilisateurs se connectent à un système, ils doivent fournir un nom d'utilisateur et un mot de passe. Bien que les informations de connexion soient publiquement connues, les mots de passe doivent être tenus secrets. Les mots de passe ne doivent être connus que des utilisateurs. Les utilisateurs doivent choisir leurs mots de passe avec soin et les modifier souvent.
Les mots de passe sont initialement créés lorsque vous configurez un compte utilisateur. Pour assurer la sécurité des comptes utilisateur, vous pouvez configurer le vieillissement du mot de passe afin d'obliger les utilisateurs à en changer régulièrement. Vous pouvez également désactiver un compte utilisateur en verrouillant le mot de passe. Pour plus d'informations sur l'administration des mots de passe, reportez-vous au Chapitre 1, Gestion des comptes et des environnements utilisateur du manuel Gestion des comptes utilisateur et des environnements utilisateur dans Oracle Solaris 11.2 et à la page de manuel passwd(1).
Si votre réseau utilise des fichiers locaux pour authentifier les utilisateurs, les informations du mot de passe sont conservées dans les fichiers /etc/passwd et /etc/shadow du système. Le nom de l'utilisateur et les autres informations apparentées sont conservés dans le fichier /etc/passwd. Les mots de passe chiffrés eux-mêmes sont conservés dans un fichier shadow séparé, /etc/shadow Cette mesure de sécurité empêche les utilisateurs d'accéder aux mots de passe chiffrés. Alors que le fichier /etc/passwd est accessible à tous ceux qui peuvent se connecter à un système, seul le compte root peut lire le fichier /etc/shadow. Vous pouvez utiliser la commande passwd pour modifier un mot de passe utilisateur sur un système local.
Si votre réseau utilise NIS pour authentifier des utilisateurs, les informations de mots de passe sont conservées dans la carte des mots de passe NIS. NIS ne prend pas en charge le vieillissement des mots de passe. Vous pouvez utiliser la commande passwd -r nis pour modifier le mot de passe d'un utilisateur qui est stocké dans une carte de mots de passe NIS.
Le service de noms LDAP d'Oracle Solaris stocke les informations de mot de passe et les informations en double dans le conteneur ou=people de la structure de répertoire LDAP. Sur le client du service de noms LDAP d'Oracle Solaris, vous pouvez utiliser la commande passwd -r ldap pour changer le mot de passe d'un utilisateur. Le service de noms LDAP stocke le mot de passe dans le référentiel LDAP.
La stratégie de mot de passe est appliquée sur le Oracle Directory Server Enterprise Edition. Plus précisément, le module pam_ldap du client suit les contrôles de stratégie de mot de passe mis en oeuvre sur Oracle Directory Server Enterprise Edition. Pour plus d'informations, reportez-vous à la section Modèle de sécurité des services de noms LDAP du manuel Utilisation des services de noms et d’annuaire Oracle Solaris 11.2 : LDAP .
Le chiffrement du mot de passe fort constitue une première barrière contre les attaques. Le logiciel Oracle Solaris fournit six algorithmes de chiffrement de mot de passe. Les algorithmes Blowfish et SHA permettent le chiffrement fiable des mots de passe.
La configuration des algorithmes de mot de passe de votre site est effectuée dans le fichier /etc/security/policy.conf. Dans le fichier policy.conf , les algorithmes sont nommés par leur identificateur, comme indiqué dans le tableau ci-après. Pour la mise en correspondance des identificateurs et des algorithmes, reportez-vous au fichier /etc/security/crypt.conf.
L'algorithme est inclus dans la liste des algorithmes autorisés à utiliser pour le chiffrement des mots de passe.
Identificateur non _unix_.
Pour connaître les procédures de changement d'algorithme pour le chiffrement des mots de passe, reportez-vous à la section Modification de l'algorithme par défaut pour le chiffrement de mot de passe.
La configuration des algorithmes par défaut dans le fichier policy.conf est la suivante :
# … # crypt(3c) Algorithms Configuration # # CRYPT_ALGORITHMS_ALLOW specifies the algorithms that are allowed to # be used for new passwords. This is enforced only in crypt_gensalt(3c). # CRYPT_ALGORITHMS_ALLOW=1,2a,md5,5,6 # To deprecate use of the traditional unix algorithm, uncomment below # and change CRYPT_DEFAULT= to another algorithm. For example, # CRYPT_DEFAULT=1 for BSD/Linux MD5. # #CRYPT_ALGORITHMS_DEPRECATE=__unix__ # The Oracle Solaris default is a SHA256 based algorithm. To revert to # the policy present in Solaris releases set CRYPT_DEFAULT=__unix__, # which is not listed in crypt.conf(4) since it is internal to libc. # CRYPT_DEFAULT=5 …
Si vous modifiez la valeur de CRYPT_DEFAULT, les mots de passe des nouveaux utilisateurs sont chiffrés avec l'algorithme associé à la nouvelle valeur.
Lorsque des utilisateurs existants modifient leur mot de passe, le chiffrement de leur ancien mot de passe a une incidence sur l'algorithme utilisé pour chiffrer le nouveau mot de passe. Par exemple, supposons que CRYPT_ALGORITHMS_ALLOW=1,2a,md5,5,6, et CRYPT_DEFAULT=6. Le tableau ci-dessous montre quel algorithme sera utilisé pour générer le mot de passe chiffré. L'identificateur le mot de passe se compose d'algorithme.
|
Pour plus d'informations sur la configuration des sélections d'algorithme, reportez-vous à la page de manuel policy.conf(4) Pour spécifier les algorithmes de chiffrement des mots de passe, consultez Modification de l'algorithme par défaut pour le chiffrement de mot de passe.
Le compte root fait partie de plusieurs comptes système spéciaux. Parmi ces comptes, seul le compte root est associé à un mot de passe et peut se connecter. Le compte nuucp peut se connecter pour les transferts de fichiers. Les autres comptes système protègent les fichiers ou exécutent des processus administratifs sans recourir aux pleins pouvoirs de root.
Mise en garde - Ne modifiez jamais la définition du mot de passe d'un compte système. Les comptes système dans Oracle Solaris sont fournis dans un état sûr et sécurisé. Il est interdit de modifier ou créer des fichiers système ayant une UID égale ou inférieure à 101. |
Le tableau suivant décrit certains comptes système et leur utilisation. Les comptes système exécutent des fonctions spéciales. Chaque compte de cette liste possède un ID utilisateur inférieur à 100. Pour obtenir la liste complète des systèmes de fichiers, utilisez la commande logins –s.
|
Les connexions à distance constituent une cible tentante pour les intrus. Oracle Solaris fournit plusieurs commandes pour surveiller, limiter et désactiver les connexions à distance. Pour plus d'informations sur les procédures, reportez-vous au tableau Table 3–1.
Par défaut, les connexions à distance ne peuvent ni contrôler ni lire certains périphériques système tels que la souris, le clavier, la mémoire graphique ou le périphérique audio. Pour plus d'informations, reportez-vous à la page de manuel logindevperm(4).