Diseño de Sistemas OperativosDiseño de Sistemas Operativos
Introducción a la Administración de Sistemas
UNIX
Introducción a la Administración de Sistemas Unix 2
ÍndiceÍndice
• Introducción• Directorios del
sistema• Gestión de usuarios• Arranque del sistema• Variantes de shells• Discos y sistemas de
ficheros• Servicios de red
• Servicios internos• Instalación de nuevo
software• Terminales gráficos• Interoperabilidad con
otros SSOO• Auditoría del sistema• Seguridad en
sistemas Unix
Introducción a la Administración de Sistemas Unix 3
IntroducciónIntroducción
• Tareas del administrador:– Servicio a los usuarios.– Mantenimiento y actualización del
software.– Auditoria de seguridad y rendimiento
del sistema.– Gestión de recursos.
Introducción a la Administración de Sistemas Unix 4
Herramientas de AdministraciónHerramientas de Administración
Casi todos los sistemas operativos UNIX tienen su propio conjunto de herramientas de administración:
– admintool (Sun Solaris)– control-panel (Linux-RedHat)– smit (IBM AIX).– sysadmsh (XENIX).
Introducción a la Administración de Sistemas Unix 5
Introducción a la Administración de Sistemas Unix 6
Tipos de InstalacionesTipos de Instalaciones
Se pueden dividir las instalaciones en tres diferentes categorías:– Estaciones de trabajo monousuario.– Servidores multiusuario.– Clusters de máquinas.
Introducción a la Administración de Sistemas Unix 7
Conocimientos del AdministradorConocimientos del Administrador
Es recomendable para el administrador el conocimiento de:
– Funcionamiento interno del sistema.– Seguridad y comunicaciones.– Programación (scripts, perl, awk, ...).– Instalación de componentes
hardware.– Otros sistemas operativos.
Introducción a la Administración de Sistemas Unix 8
Árbol de Directorios UNIXÁrbol de Directorios UNIX
• /bin: Ejecutables básicos del SSOO.
• /dev: Ficheros especiales asociados a dispositivos.
• /etc: Configuración del sistema.
• /home: Directorio de cuentas de usuarios.
• /lib: Librerías básicas del sistema.
/ /bin
/dev
/etc
/home
/lib
/mnt
/opt
/proc
/sbin
/tmp
/usr
/var
/lib
/include
/etc
/bin
/local
/man
Introducción a la Administración de Sistemas Unix 9
Árbol de Directorios UNIXÁrbol de Directorios UNIX
• /mnt: Directorio de montaje de ciertos sistemas de ficheros.
• /opt: Aplicaciones adicionales del sistema.
• /proc: Sistema de ficheros virtual para la gestión de recursos.
• /sbin: Ejecutables de administración del SSOO.
/ /bin
/dev
/etc
/home
/lib
/mnt
/opt
/proc
/sbin
/tmp
/usr
/var
/lib
/include
/etc
/bin
/local
/man
Introducción a la Administración de Sistemas Unix 10
Árbol de Directorios UNIXÁrbol de Directorios UNIX
• /tmp: Directorio para ficheros temporales.
• /usr: Aplicaciones adicionales del SSOO.
• /usr/local: Programas locales del sistema.
• /var: Directorio para ficheros de log y colas de trabajos.
/ /bin
/dev
/etc
/home
/lib
/mnt
/opt
/proc
/sbin
/tmp
/usr
/var
/lib
/include
/etc
/bin
/local
/man
Introducción a la Administración de Sistemas Unix 11
Directorio /devDirectorio /dev
Agrupa entradas de tres diferentes tipos:
– Dispositivos de tipo carácter.– Dispositivos de tipo bloque.– Dispositivos virtuales (/dev/zero).
Todos estos dispositivos tienen asociado un minor y un major number.
Introducción a la Administración de Sistemas Unix 12
Directorio /procDirectorio /proc
Se corresponde con un sistema de ficheros virtual (no tiene soporte en disco). Las entradas del directorio son:
– Procesos en ejecución.– Información del sistema.– Mapping de recursos del sistema.
Introducción a la Administración de Sistemas Unix 13
Directorios Dependientes de la Versión de Sistema Operativo
Directorios Dependientes de la Versión de Sistema Operativo
• /boot: Directorio de la imagen del kernel (Linux).• /kernel: Idem (Solaris/SunOS).• /osf_boot: Idem (OSF/1).• /u: Cuentas de usuarios (AIX y otros).• /usr/ucb: Aplicaciones de University of California,
Berkeley (Solaris, OSF/1 y otros).• /devices: Dispositivos asignados por controladoras
(Solaris/SunOS).• /usr/openwin: Sistema de Ventanas Openwin
(SunOS).
Introducción a la Administración de Sistemas Unix 14
Propietarios de los DirectoriosPropietarios de los Directorios
• La mayoría de directorios y ficheros pertenecen al usuario root o a otros usuarios privilegiados del sistema.
• Las excepciones son:– Cuentas de usuario: /home– Ficheros temporales: /tmp– Entradas de las colas de trabajos: /var– Las imágenes de los procesos: /proc
Introducción a la Administración de Sistemas Unix 15
Propietarios de los DirectoriosPropietarios de los Directorios
• Si ciertos usuarios requieren accesos especiales a ciertos ficheros, esto se resuelve haciéndoles pertenecer a grupos privilegiados.– Grupos: disk, printer, adm, ...
Llamadas: chown, chgrp, chmod, chattr, ...
Introducción a la Administración de Sistemas Unix 16
Gestión de UsuariosGestión de Usuarios
Creación de un usuario:– Insertarlo en el fichero de usuarios.– Asignarle un passwd.– Definir parámetros (límites). – Crear el directorio home.– Copiar ficheros iniciales (/etc/skel).– Cambiar el propietario del home.– Dar de alta en mail, quota, ...
Introducción a la Administración de Sistemas Unix 17
Gestión de UsuariosGestión de Usuarios
• Fichero de usuarios: /etc/passwdusuario:passwd:uid:gid:desc:home:shell
• Fichero de grupos: /etc/groupgrupo:<reserved>:gid:usuarios...
• Fichero de Passwords: /etc/shadowusuario:passwd:parámetros...
Gestión de usuarios distribuida: NIS
Introducción a la Administración de Sistemas Unix 18
Login de un UsuarioLogin de un Usuario
Al conectarse un usuario al sistema:– Se evalúa si el modo de conexión
(local o remoto) es válido para dicho usuario (en base al getty).
– Se arranca el programa shell asociado.
– Configuración de la sesión: general (/etc/profile) y de usuario (~/.profile).
Introducción a la Administración de Sistemas Unix 19
Deshabilitar UsuariosDeshabilitar Usuarios
• Para cerrar o deshabilitar una cuenta (sin borrar su contenido):– Bloquear el password de la cuenta
(*).– Cambiar el shell de acceso (mensaje).
#!/bin/tail +2La cuenta se encuentra bloqueada.Hable con el adiministrador
Introducción a la Administración de Sistemas Unix 20
Cambio de UsuarioCambio de Usuario
Para cambiar de usuario al iniciar una sesión se usa el comando su:
–su - usuario: Cambia de usuario y carga su configuración.–su usuario: Sólo cambia de usuario.
Si no se indica el usuario se cambia al usuario root.
Introducción a la Administración de Sistemas Unix 21
Usuarios de SistemaUsuarios de Sistema
• root: Administrador (UID 0).• daemon: Ejecutas procesos de servicio
del sistema (UID 1).• bin: Propietario de ejecutables (UID 2).• sys: Ficheros de sistema (UID 3).• adm: Ciertos log (UID 4).• nobody: Usuario sin privilegios.• ...
Introducción a la Administración de Sistemas Unix 22
Arranque del SistemaArranque del Sistema
• Arranque del kernel.• Montar el sistema de ficheros raíz.• Arranque del proceso init (PID 1).• Montaje del resto de sistemas de
ficheros.• Inicialización de los terminales.• Activación del runlevel (demonios).
Introducción a la Administración de Sistemas Unix 23
Runlevels EstándarRunlevels Estándar
• Runlevel 0: Parada del sistema.• Runlevel 1: Modo mantenimiento.• Runlevel 2: Multiusuario sin red (NFS).• Runlevel 3: Multiusuario.• Runlevel 4: <Reservado>• Runlevel 5: Terminal gráfico.• Runlevel 6: Rearranque del sistema.
Introducción a la Administración de Sistemas Unix 24
Fichero /etc/inittabFichero /etc/inittab
Cada entrada tiene el formato:id:runlevels:action:process args– id: Identificador único.– runlevels: Niveles en los que se
ejecuta.– action: Modo de ejecución.– process args: Proceso a ejecutar.
Introducción a la Administración de Sistemas Unix 25
Tipos de Acciones EstándarTipos de Acciones Estándar
Las acciones habituales son:• wait: Arranca el proceso y espera a su
finalización antes de seguir.• respawn: Arranca el proceso automáticamente
en el caso de que muera.• once: Si no esta arrancado arrancalo (sin
esperar).• boot: Ejecuta sólo en el arranque (sin esperar).• off: Si el proceso está en ejecución mátalo.
Introducción a la Administración de Sistemas Unix 26
Inicialización de Terminales Inicialización de Terminales
initinit
initinit gettygetty loginlogin shsh
shsh lsls
fork
fork
exec exec exec
exec
Login:chemapassword: ******Login:chemapassword: ******
/dev/tty0/dev/tty0
# ls# ls
Introducción a la Administración de Sistemas Unix 27
Modificación del Runlevel en Ejecución
Modificación del Runlevel en Ejecución
Se puede reiniciar el proceso init, (por ejemplo al cambiar la configuración) mandando una señal HUP.
El nivel de ejecución actual se puede cambiar invocando a init con el nuevo runlevel como argumento.
Introducción a la Administración de Sistemas Unix 28
Scripts del SistemaScripts del Sistema
El directorio /etc/init.d/ es el usado para mantener los scripts de arranque de los servicios del sistema.
– Son scripts (/bin/sh) no binarios.– Reciben diferentes argumentos
(start, stop, status, restart, ...).
Introducción a la Administración de Sistemas Unix 29
Scripts del RunlevelScripts del Runlevel
• Directorio de scripts del sistema: /etc/init.d/
/ /etc /init.d
/rc3.d
• Directorio de cada runlevel: /etc/rc3.d/
• Directorio de cada runlevel: /etc/rc3.d/
/network
/S10network
Symboliclink
S10networkstart/stop orden scriptS K
Introducción a la Administración de Sistemas Unix 30
Parada del SistemaParada del Sistema
• Notificación a los usuarios.• Envía una señal a los procesos
para su terminación.• Entrada en modo monousuario
(saca los usuarios y mata al resto de procesos).
• Sincronización de los sistemas de ficheros (sync).
Introducción a la Administración de Sistemas Unix 31
Shells del SistemaShells del Sistema
Existen diversas familias de shells:– Bourne shell (sh/bash).– Korn shell (ksh).– C shell (csh).– TC shell(tcsh).
Con otras funcionalidades:– Restricted shell (r-sh).– Shell remoto (rsh), seguro (ssh).
Introducción a la Administración de Sistemas Unix 32
Configuración del ShellConfiguración del Shell
Existen dos niveles de ficheros de configuración:
– General:•/etc/profile•/etc/bashrc, /etc/cshrc, ...
– De usuario:•~/.profile•~/.bashrc, ~/.cshrc
Introducción a la Administración de Sistemas Unix 33
Otros ServiciosOtros Servicios
Ciertos servicios se filtran basándose en el shell del usuario que lo invoca.
El fichero /etc/shells indica qué ejecutables son shells válidos para el resto de servicios.
Introducción a la Administración de Sistemas Unix 34
Shells de ProgramaciónShells de Programación
• Perl:– Tratamiento de expresiones regulares.– Interfaz con C y Librerías de utilidades.
• AWK:– Procesador de campos.
• Tcl / Tk:– Componentes gráficos (ventanas).
Introducción a la Administración de Sistemas Unix 35
Gestión de Dispositivos de Almacenamiento
Gestión de Dispositivos de Almacenamiento
Las fases de uso de un soporte de almacenamiento son:
– Dar formato al soporte (no siempre necesario).
– Particionamiento (si es aplicable).– Creación del sistema de ficheros.– Utilización del soporte.
Introducción a la Administración de Sistemas Unix 36
Tipos de DispositivosTipos de Dispositivos
UNIX define dos tipos de dispositivos:
– Dispositivos de tipo bloque (discos).– Dispositivos de tipo carácter (cintas).
En ciertos UNIX el mismo dispositivo físico puede ser gestionado en modo bloque y modo carácter.
Introducción a la Administración de Sistemas Unix 37
Particionamiento de DiscosParticionamiento de Discos
El formato de las particiones y características, depende del SO:
– Linux: fdisk, diskdruid.– Solaris/SunOS: format.– AIX: smit.
Introducción a la Administración de Sistemas Unix 38
Creación de un Sistema de FicherosCreación de un Sistema de Ficheros
También depende del SO y del sistema de ficheros que soporte. Opciones:
– Espacio reservado al root.– Número de i-nodos.– Opciones de verificación.
Linux: mkfs
Introducción a la Administración de Sistemas Unix 39
Modelos de Sistemas de FicherosModelos de Sistemas de Ficheros
Existen diferentes modelos de sistemas de ficheros:
– Sistemas de ficheros tradicionales: ext2fs, ufs, minix, ...
– Sistemas de ficheros transaccionales: jfs, afs, ...
Diferentes ventajas en la verificación de integridad (fsck).
Introducción a la Administración de Sistemas Unix 40
EstrategiasEstrategias
Es recomendable la creación de los siguientes SF independientes:
– / (Sistema tamaño justo).– /usr (Aplicaciones tamaño justo).– /home (Cuentas mucho tamaño).– /usr/local - /opt (Mucho tamaño).– /var (Logs bastante tamaño).– swap - /tmp (Depende de la carga).
Introducción a la Administración de Sistemas Unix 41
EstrategiasEstrategias
Se recomienda:– Mantener las cuentas en un disco
diferente del sistema.– Separar los SF de mayor acceso en
diferentes discos (swap y sistema).– Ubicar las particiones de forma que
sea posible redistribuir los discos.– Vigilar el porcentaje de disco libre.
Introducción a la Administración de Sistemas Unix 42
Automatización del Montaje de Sistemas de Ficheros
Automatización del Montaje de Sistemas de Ficheros
Tras montar la partición / el sistema monta el resto de sistemas de ficheros:
– Linux: /etc/fstab– Solaris: /etc/ufstab– AIX: /etc/filesystems– ...
Introducción a la Administración de Sistemas Unix 43
Dispositivos sin Sistema de FicherosDispositivos sin Sistema de Ficheros
Ciertas utilidades pueden usarse para acceso a dispositivos sin uso de sistema de ficheros:
– dd, cpio o tar.
Ejemplo: dd if=data.img of=/dev/fd0
Pueden usarse como utilidades de backup elementales.
Introducción a la Administración de Sistemas Unix 44
Sistemas de BackupSistemas de Backup
Esquemas de backup:– Backups completos: Se copia toda la
información.– Backups incrementales: Sólo los
ficheros modificados se copian.
Habitualmente se combinan los dos esquemas.
Introducción a la Administración de Sistemas Unix 45
Decisiones de BackupDecisiones de Backup
Una estrategia de backup debe incluir:
– Estimación del volumen de datos.– Selección de los ciclos de backup.– Automatización (cliente/servidor).– Verificación del sistema.
Herramientas de backup: Amanda.
Introducción a la Administración de Sistemas Unix 46
Dispositivos RedundantesDispositivos Redundantes
Dispositivos RAID:
sd01
/ /bin
/etc
/usr
/var
sd02 sd03
RAID
/ /bin
/etc
/usr
/var
md1
Introducción a la Administración de Sistemas Unix 47
Tecnología RAIDTecnología RAID
Hay varios modelos de RAID:– Modo lineal: Concatena volúmenes.– RAID 0: Modo alternado de bloques.– RAID 1: Redundancia (Mirroring).– RAID 4: Disco de paridad.– RAID 5: Bloques de paridad.
Discos de reserva: spare disks.Configuración: /etc/raidtab
Introducción a la Administración de Sistemas Unix 48
Cuotas de DiscoCuotas de Disco
Asocia a cada usuario/grupo un limite de espacio en disco.Dos límites:
– Soft limit: Límite informativo.– Hard limit: Espacio máximo
disponible.
Límites aplicables a cada sistema de ficheros. Se verifican en el arranque de la máquina y en cada login.
Introducción a la Administración de Sistemas Unix 49
Configuración de TCP/IPConfiguración de TCP/IP
Configuración del interfaz:– Dispositivo de red (e.g. /dev/le0).– Asignar dirección IP.– Máscara de red.– Dirección Broadcast.– Subred.
Ejemplo:
+
ifconfig eth0 138.100.9.101 netmask 255.255.248.0 up
Introducción a la Administración de Sistemas Unix 50
Configuración de TCP/IPConfiguración de TCP/IP
Encaminamiento IP:– Encaminamiento local.– Encaminamiento dentro de la subred.– Encaminamiento externo (Router).
Ejemplos:route add -host 127.0.0.1 loroute add -net 138.100.8.0 netmask 255.255.248.0 eth0route add default gw 192.168.1.1 eth0route add default ppp0
Introducción a la Administración de Sistemas Unix 51
Configuración de TCP/IPConfiguración de TCP/IP
Configuración dinámica:– Protocolo BOOTP– Protocolo DHCP.
clienteservidor
dhcpd
MAC=0A:12:A1:00:B2:24:AE
IP=138.100.9.201
Introducción a la Administración de Sistemas Unix 52
Configuración de un RouterConfiguración de un Router
Servicio de encaminamiento:– Máquina con dos interfaces de red.– Intercambio de tablas de
encaminamiento entre routers (RIP/OSPF).
– Emisor de ciertos mensajes ICMP.
Demonio: routed, gated
Introducción a la Administración de Sistemas Unix 53
Resolución de NombresResolución de Nombres
Orden de resolución:– /etc/host.conf
Resolución de nombres local:– /etc/hosts
Resolución de nombres remota:– /etc/resolv.conf– Identificador y dominio de la máquina.– Dirección del servidor de nombres.
Introducción a la Administración de Sistemas Unix 54
Configuración de un Servidor de Nombres
Configuración de un Servidor de Nombres
DNS en modo cache:– Resuelve peticiones y almacena los
resultados.– Siempre tiene un DNS superior.
DNS autónomo:– Mantiene una BD propia.– Incluye el anterior.
Demonio: named
Introducción a la Administración de Sistemas Unix 55
Demonios de RedDemonios de Red
Dos modalidades de servicios:– Dependiente del inetd.
– Autónomo (modo standalone).
21
23
80
inetd
in.ftpd
in.telnetd
httpd
Introducción a la Administración de Sistemas Unix 56
Demonio inetdDemonio inetd
Puertos estándar de servicio: /etc/services#nombre puerto/protocolo alias
telnet 23/tcp
time 37/udp timeserver
Programas de servicio: /etc/inetd.conf#servicio socket proto flags usr serv
telnet stream tcp nowait root ....
time dgram udp wait root internal
Introducción a la Administración de Sistemas Unix 57
Servicios RPC de SunServicios RPC de Sun
Servicios de red de SUN:– NFS (Network File
System)– NIS (Network
Information System)
Usan un demonio de enlace: portmapper
nfsd
portmappernfs 1.003nis 1.004
111
function(...)
1
23
Introducción a la Administración de Sistemas Unix 58
Sistemas de Ficheros en RedSistemas de Ficheros en Red
Permite exportar sistemas de ficheros a otras máquinas.•Servidor:
– Asignación de permisos.– /etc/exports o share.
•Cliente:mount -t nfs laurel:/usr/local /opt
Introducción a la Administración de Sistemas Unix 59
Usuarios de Dominio (NIS)Usuarios de Dominio (NIS)
Servicio NIS / NIS+:– Mantiene bases de datos compartidas
por varias máquinas.– Usuarios, grupos y otros ficheros de
configuración.– Organización Cliente/Servidor.
Introducción a la Administración de Sistemas Unix 60
Usuarios de Dominio (NIS)Usuarios de Dominio (NIS)
• Maestro o Servidor NIS:– Define un dominio (domainname).– Iniciar las bases de datos de NIS.– Publicar las bases de datos del
sistema.• Cliente NIS:
– Definir el mismo dominio.– Modificar el mecanismo de búsqueda
de datos en las BD locales/remotas.
Introducción a la Administración de Sistemas Unix 61
Terminales RemotosTerminales Remotos
• Existen tres servicios de terminal remoto:– rsh (remote shell).– rlogin (remote login).– telnet (terminal remoto).
Configuración: – /etc/hosts.equiv – ~/.rhosts
Introducción a la Administración de Sistemas Unix 62
Otros ServiciosOtros Servicios
• Servidor Web:– Apache, NCSA.
• Servidor FTP:– WU-ftp.
• Agente de correo:– Sendmail, Postfix
• Servicios de correo:– IMAP, POP.
Introducción a la Administración de Sistemas Unix 63
Opciones del Protocolo IPOpciones del Protocolo IP
El protocolo IP ofrece:– IP Masquerading: Usar una sola
dirección IP para varias máquinas.– IP Accounting: Estadísticas y análisis
de paquetes.– IP Aliasing: Varias direcciones IP a las
misma tarjeta.– IP Forwarding: Redirección de
paquetes.
Introducción a la Administración de Sistemas Unix 64
Servicios InternosServicios Internos
Otros servicios adicionales UNIX:– Servicio de Impresión (lp).
– Servicio de Programación de Tareas:• Tareas pendientes.• Tareas periódicas.
Introducción a la Administración de Sistemas Unix 65
Servicio de ImpresiónServicio de Impresión
Demonio de Impresión (lpd):– Asociado al dispositivo de impresora.– Gestiona la cola de trabajos.– Preprocesa el documento a imprimir.
lpd
filtro /dev/lp0
/var/spool/lp/...
Introducción a la Administración de Sistemas Unix 66
Filtros de ImpresiónFiltros de Impresión
Pequeños scripts que procesan la entrada (documento) y transmiten su salida a la impresora:
– Filtros texto: retornos de carro y otras opciones de impresión.
– PostScript: Interpretación postscript de la impresora (gs).
Introducción a la Administración de Sistemas Unix 67
Configuración del DemonioConfiguración del Demonio
Fichero: /etc/printcap– Todas las impresoras del sistema.– Impresoras:
• locales.• remotas (otros UNIX o independientes).• compartidas (otros SSOO).
– Ficheros de configuración y filtros.
Introducción a la Administración de Sistemas Unix 68
Programación de TareasProgramación de Tareas
• Demonio atd:– Ejecuta un comando en un instante
determinado.– Informa al usuario (vía mail).
• Demonio crond:– Mantiene una serie de tablas de
tareas habituales: /etc/crontab– Tareas de administración.
Introducción a la Administración de Sistemas Unix 69
Instalación de Nuevo SoftwareInstalación de Nuevo Software
Distribución de Software:– Paquetes de instalación.– Binarios comprimidos.– Código fuente (para dicho SSOO).– Código fuente a portar.
Introducción a la Administración de Sistemas Unix 70
Paquetes de InstalaciónPaquetes de Instalación
El formato de paquete depende del SSOO:
– RedHat y otros linux: RPM.– Solaris: PKG.– AIX: SMIT.– ...
Introducción a la Administración de Sistemas Unix 71
Código BinarioCódigo Binario
Posibles problemas:– Sistemático en la instalación.– Problemas de versiones de librerías y
otros programas, ...– Problemas de seguridad.
Formatos (comprimidos):.tar.gz, .tgz, .tar.Z, .shar o .bz
Introducción a la Administración de Sistemas Unix 72
Código FuenteCódigo Fuente
Posibles problemas:– Configuración de las fuentes: IMake o configure (generan un Makefile).
– Compilador adecuado (C o C++).– Instalación del programa.
$./configure$make$make install
Introducción a la Administración de Sistemas Unix 73
Terminales GráficosTerminales Gráficos
X Window:– Entorno gráfico de los sistemas UNIX.– Arquitectura Cliente/Servidor– Diferentes niveles (librerías) de
desarrollo.– Nuevos problemas de seguridad.
Introducción a la Administración de Sistemas Unix 74
X WindowX Window
Servidor:– Asociado al
terminal gráfico.– Muestra en
pantalla los pixels.
Cliente:– Aplicación con
salida gráfica.– Está asociada a un
servidor.
Servidor X
xterm
xterm
windowmanager
Introducción a la Administración de Sistemas Unix 75
X WindowX Window
Servidor:– Interactúa con el hardware gráfico.– Acepta mensajes X11.
Clientes:– Usan primitivas para dibujar en el
servidor.– Pueden ser aplicaciones remotas.– Gestor de ventanas: window manager
Introducción a la Administración de Sistemas Unix 76
Hardware
Kernel
Desarrollo en X WindowDesarrollo en X Window
• Librerías de alto nivel:– Motif– Qt– ...
• Librerías de bajo nivel:– X11– Xlib
X11
Xlib
Xtoolkit
Motif
Aplicaciones X
Introducción a la Administración de Sistemas Unix 77
XDMXDM
El servicio XDM (X desktop manager):– Proporciona un login gráfico.– Asociado al runlevel 5 (gráfico).– Se rearranca si el servicio cae.– Puede ser accedido desde puestos
remotos.
Introducción a la Administración de Sistemas Unix 78
Interoperabilidad con Microsoft Windows
Interoperabilidad con Microsoft Windows
El protocolo SMB (Session Message Block) lo utilizan los sistemas MSWin para compartir discos e impresoras.
La implementación de este protocolo en UNIX se denomina Samba.
Introducción a la Administración de Sistemas Unix 79
Cliente/Servidor SambaCliente/Servidor Samba
unix windows
C:
printer
/home
printer
<cuentas>
• Gestión de usuarios (cuentas)
• Impresoras compartidas.
• Directorios compartidos.
• Impresoras compartidas.
• Directorios compartidos.
SMB
Introducción a la Administración de Sistemas Unix 80
Servidor SambaServidor Samba
La configuración de un servidor Samba arranca dos demonios:
– smbd: Demonio de SMB.– nmbd : Servicio de nombres NetBIOS.
Configuración: /etc/smb.conf
Introducción a la Administración de Sistemas Unix 81
Cliente SambaCliente Samba
Existen las siguientes herramientas:– smbclient: Conexión a recursos
(modo FTP).– smbsun: Ejecución de programas.– smbprint: Impresión remota.– smbmnt: Permite montar discos
compartidos.
Introducción a la Administración de Sistemas Unix 82
Auditoría del SistemaAuditoría del Sistema
Los directorios /var/log o /var/adm contienen información sobre ciertas operaciones registradas en el sistema:
– Accesos de usuarios.– Mensajes del kernel.– Arranque y parada del sistema.– Errores de ciertos demonios.
Introducción a la Administración de Sistemas Unix 83
Conexiones al SistemaConexiones al Sistema
Ficheros de acceso:– Registra las conexiones.– En algunos casos, tiene formato
binario.– Se consulta por medio del comando last.
Introducción a la Administración de Sistemas Unix 84
Gestión de LogsGestión de Logs
La gestión de los ficheros log comprende:
– Selección de eventos a registrar.– Los ciclos de rotación.– La compresión de los logs.– Verificaciones de integridad.
Introducción a la Administración de Sistemas Unix 85
Carga del SistemaCarga del Sistema
La utilidad uptime proporciona una estimación de la carga del sistema:
Otras utilidades: ps, top, xload, perfmeter, ...
# uptime3:24pm up 6 days, 2:30, 5 users, load average: 0.23, 0.32, 0.26
Introducción a la Administración de Sistemas Unix 86
Memoria del SistemaMemoria del Sistema
Las utilidades como vmstat o sar miden el uso de la memoria del sistema:
– Acceso a swap.– Estado de los procesos.– Memoria usada del sistema.– Porcentaje de CPU usada.
Introducción a la Administración de Sistemas Unix 87
Límites de RecursosLímites de Recursos
• A un usuario se le restringen los límites de recursos a utilizar por medio de la llamada ulimit.– Por lo general los límites generales se
definen en el fichero /etc/profile que todos los usuarios ejecutan.
Introducción a la Administración de Sistemas Unix 88
SeguridadSeguridad
Puntos de interés:– Seguridad Interior: Programas con
permisos.– Seguridad Exterior: Servicios de red.– Detección de Intrusiones: Una vez
que han superado la seguridad.
La mejor defensa es no tener una máquina con instalación estándar.
Introducción a la Administración de Sistemas Unix 89
Seguridad InteriorSeguridad Interior
Programas con permisos de ejecución privilegiada: Bit s.
– Si el programa no se usa: eliminarlo.– Si se usa: instalar la versión más
actualizada.– Restringir los privilegios de ciertos
usuarios (restricted shells).
Introducción a la Administración de Sistemas Unix 90
Seguridad ExteriorSeguridad Exterior
Servicios de red del sistema:– Si no se usa: eliminarlo.– Si se usa: tenerlo actualizado.– Saber quien debe usar cada servicio
(desde dónde se usa).
Introducción a la Administración de Sistemas Unix 91
Filtrado de ConexionesFiltrado de Conexiones
Los TCP wrappers son un paquete de seguridad basado en filtrar conexiones al inetd.Configuración:
– /etc/hosts.allow– /etc/hosts.deny
Introducción a la Administración de Sistemas Unix 92
TCP WrappersTCP Wrappers
# /etc/hosts.deny
ALL: PARANOID # Direciones sospechosas
ALL: ALL # Todos los servicios
# /etc/hosts.allow
telnetd, ftpd: LOCAL, .fi.upm.es
fingerd: ALL: (finger @%h |
mail -s "finger @%h" root)
Introducción a la Administración de Sistemas Unix 93
Salvaguarda de los LogSalvaguarda de los Log
Una intrusión en la máquina intenta borrar sus “huellas”:
– Análisis de los ficheros de log.– Protecciones especiales (append).– Salvaguarda periódica de los log.– Renombrar ficheros de log.
Introducción a la Administración de Sistemas Unix 94
Integridad del SistemaIntegridad del Sistema
La verificación periódica del sistema:– Automatizada (crontab).– Comparar los directorios del sistema.– Chechsums o CRCs de los ficheros.– Fecha/Hora arranque de los servicios.– Puertos de servicio del sistema.
Introducción a la Administración de Sistemas Unix 95
Passwords por la RedPasswords por la Red
La transmisión de passwords por la red puede ser interceptada por medio de sniffers:
– Uso de autorización basada en hosts (~/.rhosts, /etc/host.equiv)
– Transmisiones cifradas (secure shell: ssh).
Introducción a la Administración de Sistemas Unix 96
IP SpooffingIP Spooffing
Otro posible ataque es por medio de suplantar la identidad de otro host:
– Rutas de mensaje extrañas.– Servicios de autenticación:
Certificados, Kerberos, ...
Introducción a la Administración de Sistemas Unix 97
Servicios de Red PeligrososServicios de Red Peligrosos
Servicios de red más problemáticos:– Servicio de correo (sendmail).– Servicio FTP (ftp anónimo).– Servicio Web (CGIs).– RPCs (ataques al portmapper).– Protocolos de red: ICMP, SNMP,
ARP,...
Top Related