Debe prevenir los inicios de sesión no autorizados en la red mediante la asignación de contraseñas o el control de inicios de sesión. Una contraseña es un mecanismo de autenticación simple. Todas las cuentas de un sistema deben tener una contraseña. Si una cuenta no tiene una contraseña, un intruso que adivina el nombre de un usuario puede acceder a toda la red. Un algoritmo de contraseña complejo protege contra ataques por fuerza bruta.
Cuando un usuario inicia sesión en un sistema, el comando login verifica que el servicio de nombres o la base de datos de servicio de directorios sean apropiados según la información en el servicio de cambio de nombres, svc:/system/name-service/switch. Para cambiar los valores en una base de datos de servicio de nombres, utilice los comandos SMF. Los servicios de nombres indican la ubicación de las bases de datos que afectan el inicio de sesión:
files: designa los archivos /etc en el sistema local
ldap: designa el servicio de directorios LDAP en el servidor LDAP
nis: designa la base de datos NIS en el servidor maestro NIS
dns: designa el servicio de nombre de dominio en la red
Para obtener una descripción del servicio de nombres, consulte la página del comando man nscd(1M). Para obtener información sobre servicios de nombres y servicios de directorios, consulte Trabajo con servicios de nombres y de directorio en Oracle Solaris 11.2: DNS y NIS y Trabajo con servicios de nombres y de directorio en Oracle Solaris 11.2: LDAP .
El comando login verifica el nombre de usuario y la contraseña proporcionados por el usuario. Si el nombre de usuario no está en la base de datos de contraseñas, el comando login niega el acceso al sistema. Si la contraseña no es correcta para el nombre de usuario especificado, el comando login niega el acceso al sistema. Cuando el usuario proporciona un nombre de usuario válido y la contraseña correspondiente, se le otorga acceso al sistema.
Los módulos PAM pueden optimizar el inicio de sesión a las aplicaciones después de iniciar sesión correctamente en el sistema. Para obtener más información, consulte Capítulo 1, Uso de módulos de autenticación conectables de Gestión de Kerberos y otros servicios de autenticación en Oracle Solaris 11.2 .
Los sistemas Oracle Solaris disponen de mecanismos de autorización y autenticación sofisticados. Para ver una explicación de los mecanismos de autorización y autenticación en el nivel de red, consulte Autenticación y autorización para acceso remoto.
Cuando los usuarios inician sesión en un sistema, deben proporcionar un nombre de usuario y una contraseña. Aunque los nombres de usuario son de conocimiento público, las contraseñas deben mantenerse en secreto. Únicamente cada usuario individual debe conocer su contraseña. Los usuarios deben seleccionar sus contraseñas con cuidado y cambiarlas con frecuencia.
Las contraseñas se crean inicialmente al configurar una cuenta de usuario. Para mantener la seguridad de las cuentas de usuario, puede configurar la caducidad de las contraseñas para forzar a los usuarios a que cambien las contraseñas regularmente. También puede desactivar una cuenta de usuario mediante el bloqueo de la contraseña. Para obtener información detallada sobre la administración de contraseñas, consulte el Capítulo 1, Acerca de las cuentas de usuario y los entornos de usuario de Gestión de las cuentas de usuario y los entornos de usuario en Oracle Solaris 11.2 y la página del comando man passwd(1).
Si la red utiliza archivos locales para autenticar usuarios, la información de contraseñas se conserva en los archivos /etc/passwd y /etc/shadow del sistema. Los nombres de usuarios y otra información se conservan en el archivo /etc/passwd. Las contraseñas cifradas se conserva en un archivo shadow separado, /etc/shadow. Esta medida de seguridad impide que un usuario obtenga acceso a las contraseñas cifradas. Mientras que el archivo /etc/passwd está disponible para cualquier persona que pueda iniciar sesión en un sistema, únicamente la cuenta root puede leer el archivo /etc/shadow. Puede utilizar el comando passwd para cambiar la contraseña de un usuario en un sistema local.
Si la red utiliza NIS para autenticar a los usuarios, la información de contraseñas se conserva en el mapa de contraseñas NIS. NIS no admite la caducidad de las contraseñas. Puede utilizar el comando passwd -r nis para cambiar la contraseña de un usuario que está almacenada en un mapa de contraseñas NIS.
El servicio de nombres LDAP de Oracle Solaris almacena información de contraseñas e información shadow en el contenedor ou=people del árbol de directorios LDAP. En el cliente del servicio de nombres LDAP de Oracle Solaris, puede utilizar el comando passwd -r ldap para cambiar la contraseña de un usuario. El servicio de nombres LDAP almacena la contraseña en el repositorio LDAP.
La política de contraseñas se aplica en Oracle Directory Server Enterprise Edition. En concreto, el módulo pam_ldap del cliente sigue los controles de políticas de contraseñas que se aplican en Oracle Directory Server Enterprise Edition. Para obtener más información, consulte Modelo de seguridad de servicios de nombres LDAP de Trabajo con servicios de nombres y de directorio en Oracle Solaris 11.2: LDAP .
El cifrado de contraseña seguro proporciona una barrera temprana contra un ataque. El software Oracle Solaris proporciona seis algoritmos de cifrado de contraseña. Los algoritmos Blowfish y SHA brindan un sólido cifrado de contraseñas.
Puede especificar la configuración de los algoritmos para su sitio en el archivo /etc/security/policy.conf. En el archivo policy.conf , los algoritmos se denominan según el identificador, como se muestra en la siguiente tabla. Para la asignación identificador-algoritmo, consulte el archivo /etc/security/crypt.conf.
El algoritmo se incluye en la lista de algoritmos permitidos que se utilizará para el cifrado de contraseñas.
El identificador no es _unix_.
Para conocer los procedimientos que describen cómo cambiar algoritmos para cifrado de contraseña, consulte Cambio de algoritmo predeterminado para cifrado de contraseña.
La configuración predeterminada de los algoritmos en el archivo policy.conf es la siguiente:
# … # 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 …
Al cambiar el valor para CRYPT_DEFAULT, las contraseñas de los usuarios nuevos se cifran con el algoritmo que está asociado al valor nuevo.
Cuando los usuarios existentes cambian sus contraseñas, la manera en que se cifró la contraseña anterior afecta el algoritmo que se utiliza para cifrar la contraseña nueva. Por ejemplo, supongamos lo siguiente: CRYPT_ALGORITHMS_ALLOW=1,2a,md5,5,6 y CRYPT_DEFAULT=6. La siguiente tabla muestra qué algoritmo se utilizaría para generar la contraseña cifrada. La contraseña consiste de identificador = algoritmo.
|
Para obtener más información sobre la configuración de opciones de algoritmos, consulte la página del comando man policy.conf(4). Para especificar algoritmos de cifrado de contraseña, consulte Cambio de algoritmo predeterminado para cifrado de contraseña.
La cuenta root es una de las diversas cuentas del sistema especiales. De estas cuentas, sólo a la cuenta root se le asigna una contraseña y se la puede utilizar para iniciar sesión. Con la cuenta nuucp, se puede iniciar sesión para realizar transferencias de archivos. Las otras cuentas del sistema sirven para proteger archivos o ejecutar procesos administrativos sin utilizar el poder total de root.
Precaución - Nunca cambie la configuración de contraseña de una cuenta del sistema. Las cuentas del sistema de Oracle Solaris se entregan en un estado seguro y protegido. No revise ni cree archivos del sistema con un UID que sea 101 o menor que ese valor. |
En la siguiente tabla, se muestran algunas cuentas del sistema junto con sus usos. Las cuentas del sistema realizan funciones especiales. Cada cuenta de esta lista tiene un UID que es menor que 100. Para obtener una lista completa de los archivos del sistema, utilice el comando logins –s.
|
Los inicios de sesión remotos ofrecen una vía tentadora para los intrusos. Oracle Solaris proporciona varios comandos para supervisar, limitar y desactivar los inicios de sesión remotos. Para conocer los procedimientos, consulte la Table 3–1.
De manera predeterminada, con los inicios de sesión remotos, no se pueden controlar ni leer determinados dispositivos del sistema, como el mouse, el teclado, el búfer de trama o el dispositivo de audio. Para obtener más información, consulte la página del comando man logindevperm(4).