Ir al contenido España-Español
HP.com España principal Productos y Servicios Soporte y Drivers Soluciones Cómo Comprar
» Contactar con HP
Más opciones
HP.com España principal
Administración de sistemas y grupos de trabajo: Guía para los administradores de sistemas HP-UX > Capítulo 3 Configuración de un sistema

Control del acceso a un sistema

» 

Documentación técnica

Libro completo en PDF
» Comentarios
Aquí empieza el contenido

 » Tabla de contenido

 » Índice

Puede controlar quiénes obtienen acceso al sistema y a los archivos y los procesos del mismo.

Los usuarios autorizados obtienen acceso al sistema al facilitar un nombre de usuario (nombre de inicio de sesión) y una contraseña válidos. Cada usuario se define por medio de una entrada en el archivo /etc/passwd. El SAM puede utilizarse para agregar, eliminar, desactivar, reactivar o modificar la cuenta de un usuario.

Para obtener información adicional sobre las contraseñas, consulte las páginas de manual de passwd(4) y passwd(1). Para cambiar manualmente las entradas de las cuentas de usuario, utilice el comando /usr/sbin/vipw para modificar el archivo /etc/passwd; si desea ampliar la información, consulte la página de manual de vipw(1M).

Consulte también Capítulo 8, «Administración de un sistema: manejo de la seguridad del sistema».

Adición de un usuario a un sistema

Hay varias formas de agregar un usuario:

Para agregar un usuario, lleve a cabo las tareas siguientes:

  • Comprobar que el usuario tiene un número de identificación de usuario (UID) único.

  • Insertar una línea para el usuario en el archivo /etc/passwd.

  • Crear un directorio inicial para el usuario.

  • Crear un entorno para el usuario.

Considere la posibilidad de efectuar las siguientes tareas para el usuario nuevo:

Utilización del SAM para agregar un usuario

Si va a agregar un usuario en un equipo remoto, antes de utilizar el SAM, escriba los siguientes comandos en el equipo local:

/usr/bin/X11/xhost + equipo_remoto
export DISPLAY=el_equipo_local:0.0
  1. Inicie el SAM.

    Para iniciar el SAM, puede:

    • escribir /usr/sbin/sam

      o bien

    • utilizar el CDE y obtener acceso al Gestor de aplicaciones, hacer doble clic en Admin_Sistema y hacer doble clic en SAM.

  2. Seleccione:

    1. Accounts for Users and Groups

    2. Users

    3. Add... en el menú Actions.

  3. Rellene los campos de texto. Utilice un número de identificación de usuario (UID) único. Es posible que su lugar de trabajo tenga un programa para determinar números UID únicos.

  4. Haga clic en Primary Group Name... y agregue el usuario al grupo primario y a otros grupos.

  5. Haga clic en OK. Esto abre la ventana para escribir la contraseña. Escriba una contraseña y haga clic en OK. Escriba la contraseña cuando el sistema se lo pida y haga clic en OK.

  6. Haga clic en OK del cuadro de diálogo Note.

Para consultar los pasos que el SAM da, seleccione Options/View SAM Log...

Cuando se agrega un usuario con el SAM, éste lleva a cabo lo siguiente:

  • crea una entrada en el archivo /etc/passwd para el usuario

  • crea un directorio inicial para el usuario

  • copia los archivos de inicio (.cshrc, .exrc, .login y .profile) en el directorio inicial del usuario

Adición manual de un usuario

Dé los siguientes pasos para agregar un usuario desde la línea de comandos:

  1. Agregue el usuario en el archivo /etc/passwd.

    Como usuario root, utilice el comando /usr/sbin/vipw para modificar el archivo /etc/passwd. Consulte las páginas de manual de vipw(1M), passwd(4) y passwd(1).

    Por ejemplo, se puede agregar la siguiente línea para el usuario tom:

    tom:,..:102:20:,,,:/home/tom:/usr/bin/sh

    El valor por defecto del shell es un campo vacío, lo que hace que el sistema utilice el archivo /sbin/sh para el inicio de sesión. La parte «,..» del campo de contraseña exigirá de tom que defina su contraseña cuando inicie por primera vez una sesión.

    IMPORTANTE: Tenga en cuenta que el shell de root debe permanecer igual: /sbin/sh.
  2. Cree un directorio inicial. Por ejemplo:

    /usr/bin/mkdir /home/tom

    Cambie la propiedad del directorio por el nombre de usuario. Por ejemplo:

    /usr/bin/chown tom:users /home/tom
  3. Compruebe que el usuario tiene los archivos de inicio de shell apropiados para que se ejecuten al iniciar una sesión. Los tres shells más conocidos en el entorno HP-UX son: el shell POSIX, el shell Korn y el shell C. Cada uno de ellos utiliza archivos de inicio determinados.

    Tabla 3-3 Archivos de inicio

    Nombre del shell

    Ubicación

    Archivos de inicio
    Shell POSIX

    /usr/bin/sh, /sbin/sh

    .profile y cualquier archivo especificado en la variable de entorno ENV (de manera convencional .kshrc)
    Shell Korn

    /usr/bin/ksh

    Shell C

    /usr/bin/csh

    .login y .cshrc
     

    Puede crear archivos de inicio estándar (plantillas) para copiarlos en los directorios de los usuarios. El directorio utilizado con más frecuencia con este fin es /etc/skel.

    Por ejemplo:

    cp /etc/skel/.profile /users/tom/.profile
  4. Cambie la propiedad del archivo de inicio por la cuenta del usuario nuevo. Por ejemplo:

    /usr/bin/chown tom .profile
  5. Agregue el usuario a un grupo de trabajo primario. Por ejemplo:

    /usr/bin/chgrp users tom

Automatización del proceso de adición de un usuario

En situaciones en que haya que agregar varios usuarios al sistema, se puede ahorrar tiempo mediante la:

  • Utilización de una plantilla del SAM

  • Utilización del comando useradd

Utilización de una plantilla del SAM

Para crear una plantilla que contenga información uniforme sobre las cuentas, inicie el SAM y, a continuación, seleccione Users and Groups, elija el menú Actions para que se abra y, por último, seleccione User Templates y Create. Para ampliar la información, lea la ayuda en línea del SAM.

Utilización del comando useradd

Puede utilizar el comando useradd para agregar usuarios, así como los comandos usermod y userdel para modificarlos y eliminarlos. useradd presenta la forma:

/usr/sbin/useradd [opción]... nombre_usuario

nombre_usuario es el nuevo nombre de inicio de sesión del usuario. Las opciones se describen en la Tabla 3-4, «Opciones del comando useradd». Consulte también la página de manual de useradd(1M).

Tabla 3-4 Opciones del comando useradd

OpciónSignificado
-u uidEl número de identificación de usuario (adopta por defecto el siguiente número más alto).
-g grupoEl nombre del grupo de trabajo primario o la identificación del grupo. El grupo debe existir. El valor por defecto es 20.
-G gruposLa lista de grupos secundarios separados por comas. Los grupos deben existir.
-b dir_básicoEl directorio básico por defecto del directorio inicial del usuario. El valor por defecto es /home.
-d dirEl nombre de ruta del directorio inicial. El valor por defecto es dir_básico/nombre_usuario.
-mPara crear el directorio inicial /home además de definir el usuario.
-s shellEl shell. El valor por defecto es un campo vacío, que adopta por defecto el valor /sbin/sh.
-c "comentarios"

El nombre completo u otros comentarios. A menudo se trata de una cadena separada por comas con la forma:

nombre_completo,ubicación,teléfono_trabajo,teléfono_casa

-k dirEl directorio por completar que contiene los archivos de inicialización. El valor por defecto es /etc/skel.
-e fechaLa fecha de caducidad de la cuenta. El valor por defecto es ninguna. Exige mayor seguridad.
-f nEl número de días de inactividad de la cuenta antes de proceder a deshabilitarla. Exige mayor seguridad.
 

El siguiente comando crea una nueva cuenta de usuario, agrega a Patrick al grupo de trabajo primario (denominado “users”), crea un directorio inicial y configura un shell Korn por defecto:

useradd -g users -m -k /etc/skel -s /usr/bin/ksh patrick

La entrada resultante del archivo /etc/passwd es:

patrick:*:104:20::/home/patrick:/usr/bin/ksh

Puede confeccionar una secuencia de comandos con tantas instancias del comando useradd como se necesiten. Asimismo, puede definir diferentes valores por defecto con el comando useradd -D.

Control del acceso a los archivos

Los grupos de trabajo, los permisos de acceso a los archivos y la propiedad de los archivos determinan quién puede obtener acceso a un archivo dado. Consulte también Capítulo 8, «Administración de un sistema: manejo de la seguridad del sistema».

Definición de la pertenencia a un grupo

Los usuarios del sistema se pueden dividir en grupos de trabajo para que, además de poder compartir los archivos que posean los miembros de un grupo dado, dichos archivos permanezcan protegidos contra el acceso de usuarios que no pertenezcan al grupo en cuestión. El número de pertenencia a un grupo primario del usuario se incluye en forma de entrada en el archivo /etc/passwd. La información sobre el grupo se define en los archivos /etc/group y /etc/logingroup.

Los usuarios que sean miembros de más de un grupo, tal como se especifique en /etc/group, pueden cambiar el grupo actual con el comando /usr/bin/newgrp. No hay que utilizar el comando newgrp si los grupos de usuarios se definen en el archivo /etc/logingroup. Si no se dividen los usuarios del sistema en grupos de trabajo independientes, es costumbre configurar un grupo (por lo general, denominado users) y asignar todos los usuarios del sistema a dicho grupo.

Puede utilizar el SAM para agregar, eliminar o modificar la pertenencia a un grupo.

Para cambiar manualmente la pertenencia a un grupo, modifique el archivo /etc/group y, opcionalmente, el archivo /etc/logingroup con un editor de texto, como vi. Aunque se puede escribir una contraseña de grupo en /etc/group, no se recomienda hacerlo. Para evitar tener que mantener varios archivos, puede enlazar /etc/logingroup con /etc/group. Para ampliar la información sobre los archivos /etc/group y /etc/logingroup, consulte la página de manual de group(4). Para obtener información sobre cómo enlazar archivos, consulte la página de manual de link(1M).

Puede asignar privilegios especiales a un grupo de usuarios por medio del comando /usr/sbin/setprivgrp. Para obtener información al respecto, consulte las páginas de manual de setprivgrp(1M), setprivgrp(2), getprivgrp(2), rtprio(2), plock(2), shmctl(2), chown(1), chown(2), getprivgrp(1), plock(2), shmctl(2),lockf(2), setuid(2), setgid(2) y setgid(2).

Definición de permisos de acceso a los archivos

El comando /usr/bin/chmod cambia el tipo de acceso (privilegios de lectura, escritura y ejecución) del propietario del archivo, los miembros del grupo o los demás. El único que puede cambiar sus propios privilegios de lectura, escritura y ejecución es el propietario del archivo (o el superusuario). Para ampliar la información, consulte la página de manual de chmod(1).

Por defecto, los archivos nuevos cuentan con permiso de lectura/escritura para todos (-rw-rw-rw-) y los directorios nuevos tienen permiso de lectura/escritura/ejecución para todos (drwxrwxrwx). Los permisos de acceso a archivos por defecto se pueden cambiar con el comando /usr/bin/umask. Para ampliar la información, consulte la página de manual de umask(1). El valor por defecto de los sistemas de confianza es diferente; consulte la sección «Configuración del sistema de confianza».

Definición de la propiedad de los archivos

El comando /usr/bin/chown cambia la propiedad de un archivo. Para cambiar el propietario, hay que ser el titular del archivo o tener privilegios de superusuario.

El comando /usr/bin/chgrp cambia la propiedad de un grupo de archivos. Para cambiar el grupo, hay que ser el titular del archivo o tener privilegios de superusuario.

Para obtener más información, consulte las páginas de manual de chown(1) y chgrp(1).

Definición de listas de control de acceso

Las listas de control de acceso (ACL - Access Control List) aportan una cota mayor de protección para los archivos que los permisos tradicionales de acceso a los archivos. Dichas listas se pueden utilizar para permitir o limitar el acceso a los archivos por parte de usuarios individuales ajenos al grupo de pertenencia. El único que puede crear listas ACL es el propietario del archivo (o el superusuario).

Las listas de control de acceso se admiten tanto en el sistema de archivos JFS como en el sistema de archivos HFS, pero los comandos y parte de la sintaxis difieren. En un sistema de archivos JFS, utilice el comando setacl(1) para definir dichas listas y el comando getacl(1) para consultarlas. En un sistema de archivos HFS, utilice el comando chacl(1) para definir las listas de control de acceso y el comando lsacl(1) para consultarlas. Para obtener un análisis de las listas de control de acceso de los sistemas JFS y HFS, consulte la sección «Administración del acceso a los archivos y los directorios». Para obtener información adicional sobre las listas ACL del sistema de archivos JFS, consulte las páginas de manual de setacl(1), getacl(1) y aclv(5). Para obtener información adicional sobre las listas ACL del sistema de archivos HFS, consulte las páginas de manual de lsacl(1), chacl(1) y acl(5).

NOTA: Las listas de control de acceso (ACL - Access Control List) se admiten en el JFS a partir de JFS 3.3, que se incluye en HP-UX 11i. Se puede obtener JFS 3.3 para HP-UX 11.00 en el almacén de software HP: http://software.hp.com.

Para comprobar si JFS 3.3 está instalado en un sistema HP-UX 11.00, ejecute:

swlist -l fileset JFS

Si JFS 3.3 está instalado, la salida incluirá una lista de conjuntos de archivos JFS. Si obtiene un mensaje de error, JFS 3.3 no está instalado.

Control del uso y los procesos en relación con los niveles de ejecución

Un nivel de ejecución es un estado de funcionamiento de HP-UX en el que se permite la ejecución de un conjunto específico de procesos. Estos procesos y niveles de ejecución por defecto se definen en el archivo /etc/inittab.

Los niveles de ejecución son:

Nivel de ejecución s
  


El modo de funcionamiento que utilizan los administradores de sistema (a menudo denominado «estado monousuario»). Este modo garantiza que, mientras el administrador del sistema esté desempeñando tareas de mantenimiento del sistema, nadie más esté conectado al mismo. En este nivel de ejecución, el único que puede obtener acceso al sistema, a través de la consola del sistema, es el usuario root. Los únicos procesos que pueden estar ejecutándose en el sistema son el shell en la consola del sistema, los procesos demonio en segundo plano iniciados por /sbin/rc y los procesos llamados por el administrador del sistema. Los comandos que necesitan un sistema inactivo (por ejemplo, /sbin/fsck) deben ejecutarse en el nivel de ejecución s.

Nivel de ejecución 1
  


Inicia un subconjunto de procesos indispensables del sistema; también se puede utilizar para llevar a cabo tareas de administración del sistema.

Nivel de ejecución 2
  


El modo de funcionamiento normalmente se denomina «estado multiusuario». Esto modo permite a todos los usuarios obtener acceso al sistema.

Nivel de ejecución 3
  


Para los servidores NFS. En este modo, se pueden exportar los sistemas de archivos NFS según las necesidades de los servidores NFS.

Nivel de ejecución 4
  


Para usuarios del entorno CDE. En este modo, el entorno CDE está activo. El CDE es el escritorio por defecto del sistema HP-UX 10.30 y revisiones posteriores.

Por lo general, el nivel de ejecución por defecto es el 3 o el 4, en función del sistema. El nivel de ejecución por defecto del entorno CDE es el 4.

Para determinar el nivel de ejecución actual del proceso init, escriba:

who -r

Puede agregar procesos a la secuencia de procesos que HP-UX inicia en cada nivel de ejecución y cambiar dicha secuencia. Consulte la sección «Personalización del arranque y del cierre». Consulte también la página de manual de inittab(4).

Puede utilizar el SAM para cerrar el sistema y cambiar el nivel de ejecución actual al estado monousuario. Utilice los menús «Routine Tasks» y «System Shutdown».

El superusuario con una sesión iniciada en la consola del sistema también puede cambiar el nivel de ejecución actual con el comando /sbin/init del modo siguiente:

  1. Avise a todos los usuarios que tengan iniciada una sesión actualmente. Siempre que se cambie el nivel de ejecución del sistema, se terminará todo proceso que no tenga una entrada de nivel de ejecución que coincida con el nuevo nivel de ejecución. Se concede un periodo de gracia de 20 segundos después de enviar una señal de advertencia automática.

  2. Para cambiar al nivel de ejecución s, utilice el comando shutdown.

    Para cambiar a un nivel de ejecución distinto de s, utilice el comando init.

    Consulte las páginas de manual de shutdown(1M) e init(1M).

ATENCIÓN: Utilice el comando shutdown sólo para cambiar al nivel de ejecución s, es decir, no especifique /sbin/init s). El comando shutdown pone sin riesgos al sistema en el nivel de ejecución s sin dejar los recursos del mismo en un estado inservible. El comando shutdown también permite especificar un periodo de gracia para que los usuarios terminen su trabajo antes de que el sistema se cierre. Por ejemplo, para entrar en el nivel de ejecución s después de un periodo de gracia de 30 segundos, escriba:
shutdown 30

Para cerrar el sistema inmediatamente, escriba uno de los siguientes comandos:

shutdown now
shutdown 0

No utilice el nivel de ejecución 0: se trata de un nivel de ejecución extraordinario que se reserva para la instalación del sistema.

Para aumentar la seguridad, asegúrese de que los permisos (y la propiedad) de los archivos /sbin/init y /etc/inittab son los siguientes:

-r-xr-xr-x    bin     bin             /sbin/init
-r--r--r--    bin     bin             /etc/inittab
Versión para imprimir
Declaración de privacidad El uso de este sitio implica la aceptación de sus términos de uso
© 1997-2006 Hewlett-Packard Development Company, L.P.