Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Operativos
Avanzados
2 Sistemas Operativos Avanzados
Sistemas Operativos Avanzados 3
Agradecimientos
ndice
Presentacin
Red de contenidos
Sesiones de aprendizaje
SEMANA 1 : Introduccin al software libre, caractersticas de Linux
SEMANA 2 : Comandos Bsicos, configuracin de red
SEMANA 3 : Administracin de cuentas de usuarios y grupos
SEMANA 4 : Estructura y seguridad del sistema de archivos
SEMANA 5 : Manejo de filesystems en Linux
SEMANA 6 : Instalacin de paquetes en Linux
SEMANA 7 : Semana de Exmenes Parciales de Teora
SEMANA 8 : Examen Parcial de Laboratorio
SEMANA 9 : Archivos de registro, cuotas de disco
SEMANA 10 : Servidor NFS, servidor Samba
SEMANA 11 : Servidor DNS
SEMANA 12 : Servidor DHCP
SEMANA 13 : Servidor HTTP
SEMANA 14 : Servidor de Correo
SEMANA 15 : Examen Final de Laboratorio
Sistemas Operativos Avanzados 5
Presentacin
1
SEMANA
OBJETIVOS ESPECFICOS
Conocer que es un sistema Operativo
CONTENIDOS
Sistema Operativo
Proyecto GNU
Proyecto Linux
Software Libre
Distribuciones Linux
1. Sistema Operativo
Un sistema operativo es el encargado de llevar a cabo todas las gestiones sobre los
recursos de una computadora, es decir, un conjunto de programas de computadora
destinado a permitir una administracin eficaz de sus recursos. Comienza a trabajar
cuando se enciende el computador, y gestiona el Hardware de la mquina desde los
niveles ms bsicos, permitiendo tambin la interaccin con el usuario.
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin
interferir con los servicios que ya se prestaban (evolutividad).
1.2 UNIX
Unix es un sistema operativo portable, multitarea y multiusuario; desarrollado, en
principio, en 1969 por un grupo de empleados de los laboratorios Bell de AT&T,
entre los que figuran Ken Thompson, Dennis Ritchie y Douglas McIlroy
Durante fines de la dcada de 1970 y principios de la dcada de 1980, la influencia
de Unix en crculos acadmicos indujo a su adopcin en masa (principalmente la
variante BSD, que haba surgido en la Universidad de California, Berkeley) en varias
compaas que se iniciaban por aquel entonces, siendo la ms destacada Sun
Microsystems. Hoy en da, junto a los sistemas Unix certificados, tambin se pueden
encontrar sistemas similares a Unix, como Linux y los derivados de BSD.
1.3 BSD
BSD son las inciales de Berkeley Software Distribution (en espaol, Distribucin de
Software Berkeley) y se utiliza para identificar un sistema operativo derivado del
sistema Unix nacido a partir de los aportes realizados a ese sistema por la
universidad de California en Berkeley.
En los primeros aos del sistema Unix sus creadores, los Laboratorios Bell de la
compaa AT&T, autorizaron a la Universidad de California en Berkeley y a otras
universidades a utilizar el cdigo fuente y adaptarlo a sus necesidades. Durante la
dcada de los setenta y los ochenta Berkeley utiliz el sistema para sus
investigaciones en materia de sistemas operativos. Cuando AT&T retir el permiso
de uso a la universidad por motivos comerciales, la universidad promovi la creacin
de una versin inspirada en el sistema Unix utilizando las aportaciones que ellos
haban realizado, permitiendo luego su distribucin con fines acadmicos y al cabo
de algn tiempo reduciendo al mnimo las restricciones referente a su copia,
distribucin o modificacin.
Algunos sistemas operativos descendientes del sistema desarrollado por Berkeley
son Solaris, FreeBSD, NetBSD, OpenBSD y Mac OS X. BSD tambin ha hecho
grandes contribuciones en el campo de los sistemas operativos en general, como
por ejemplo:
1.4 GNU/Linux
Linux es un sistema operativo tipo Unix que se distribuye bajo la Licencia Pblica
General de GNU (GPL), es decir que es software libre. Su nombre proviene del
Ncleo de Linux, desarrollado en 1991 por Linus Torvalds en conjunto con las
aplicaciones de sistema creadas por el proyecto GNU liderado por Richard Stallman.
1.4.1.1 Etimologa
GNU es un acrnimo recursivo que significa GNU No es Unix (GNU is Not Unix). En
espaol, se recomienda pronunciarlo u como el antlope africano, por ello, el
trmino mayoritariamente se deletrea (GNU) para su mejor comprensin.
tamao considerable, y deber ser recompilado por completo al aadir una nueva
funcionalidad. Todos los componentes funcionales del ncleo tienen acceso a todas
sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede
propagarse a todo el ncleo. Todos sus componentes se encuentran integrados en
un nico programa que ejecuta en un nico espacio de direcciones. En este tipo de
sistemas, todas las funciones que ofrece el sistema operativo se ejecutan en modo
supervisor.
El hecho de que Linux no fuera desarrollado siguiendo el diseo de un microncleo
(diseo que, en aquella poca, era considerado el ms apropiado para un ncleo por
muchos tericos informticos) fue asunto de una famosa y acalorada discusin entre
Linus Torvalds y Andy Tanenbaum.
1.5.1.1 Freeware
El trmino en ingls freeware define un tipo de software que se distribuye sin costo y
por tiempo ilimitado. A veces se incluye el cdigo fuente, pero no es lo usual.
El freeware suele incluir una licencia de uso, que permite su redistribucin pero con
algunas restricciones, como no modificar la aplicacin en s, ni venderla, y dar
cuenta de su autor. Tambin puede desautorizar el uso en una compaa con fines
comerciales o en una entidad gubernamental.
1.5.1.2 Shareware
Se denomina Shareware a una modalidad de distribucin de software el cual permite
al usuario evaluar de forma gratuita el producto, por un lapso de tiempo, aunque
tambin las limitaciones pueden estar en algunas de las formas de uso o las
capacidades finales.
Para adquirir una licencia de software que permite el uso del software de manera
completa se requiere de un pago.
1.8.1 Caractersticas
La mayora usa un sistema operativo basado en el ncleo Linux, pero tambin se
usan otros sistemas como BeOS, FreeBSD, Minix, Solaris, OS/2 o incluso Microsoft
Windows (sin embargo, distribuir un Live CD de ste ltimo es ilegal).
El primer Live CD Linux fue Yggdrasil Linux en 1995,aunque fue poco exitosa.
Posteriormente surgiDemoLinux (ao 2000). El auge de esta modalidad de Linux se
inici alrededor del ao 2003 con la distribucin alemana de Knoppix, basada, a su
vez, en la distribucin de software Debian. Una de las mejoras de este mtodo fue la
compresin cloop, esto permiti sobrepasar los 650700 MB del CD (se usaba el
driver loop) y lograr introducir hasta 2 GB.
1.9.1 Gnome
1.9.1.1 Objetivo
El Proyecto GNOME pone un gran nfasis en la simplicidad, usabilidad y en hacer
que las cosas funcionen. Otros objetivos del proyecto son:
La libertad para crear un entorno de escritorio que siempre tendr el cdigo fuente
disponible para reutilizase bajo una licencia de software libre.
El aseguramiento de la accesibilidad, de modo que pueda ser utilizado por
cualquiera, sin importar sus conocimientos tcnicos y discapacidad fsica.
Hacer que est disponible en muchos idiomas. En el momento est siendo
traducido a ms de 100 idiomas.
Sistemas Operativos Avanzados 17
1.9.1.2 Historia
El proyecto GNOME (GNU Network Object Model Environment) surgi en agosto de
1997 como proyecto liderado por los mexicanos Miguel de Icaza y Federico Mena
para crear un entorno de escritorio completamente libre para sistemas operativos
libres, en especial para GNU/Linux. Desde el principio, el objetivo principal de
GNOME ha sido proporcionar un conjunto de aplicaciones amigables y un escritorio
fcil de utilizar. GNOME tambin es una palabra del idioma ingls que significa
gnomo.
En esos momentos exista otro proyecto anterior con los mismos objetivos, pero con
diferentes medios: KDE. Los primeros desarrolladores de GNOME criticaban a dicho
proyecto por basarse en la biblioteca de controles grficos Qt, cuya licencia (QPL),
aunque libre, no era compatible inicialmente con la licencia GPL de la FSF.
Aos ms tarde los problemas de licencia de Qt se han resuelto y estas crticas han
cesado. Sin embargo, los dos proyectos siguen rumbos tecnolgicos distintos y se
hacen una competencia amigable.
Como con la mayora de los programas GNU, GNOME ha sido diseado para
ejecutarse en toda la gama de sistemas operativos de tipo Unix con X Window, y
especialmente pensado para GNU/Linux. Desde sus inicios se ha utilizado la
biblioteca de controles grficos GTK, originalmente desarrollada para el programa
The GIMP.
A medida que el proyecto ha ido progresando en los ltimos aos, los objetivos del
mismo se han extendido para tratar una serie de problemas en la infraestructura
Unix existente Actualmente el proyecto evoluciona bajo amparo de la Fundacin
GNOME.
1.9.2 KDE
1.9.2.1 Objetivo
KDE se basa en el principio de la personalizacin. Todos los componentes de KDE
pueden ser configurados en mayor o menor medida por el usuario. Las opciones
ms comunes son accesibles en su mayora desde mens y dilogos de
configuracin. Los usuarios avanzados pueden optar por editar los archivos de
configuracin manualmente, obteniendo en algunos casos un mayor control sobre el
comportamiento del sistema.
La apariencia de KDE es configurable en varios niveles. Tanto el gestor de ventanas
(llamado Kwin) como los controles (botones, mens, etc.) utilizan "estilos"
intercambiables, que definen cada aspecto de su apariencia. Es por este motivo que
KDE no mantiene una nica apariencia entre versiones, sino que se opta por aquella
ms ampliamente aceptada en el momento de cada nuevo lanzamiento.
La intencin del proyecto KDE es la de crear un entorno de escritorio que no se
comporte de un modo predefinido, sino que permita al usuario adecuar el sistema a
su gusto y comodidad. Esto no impide que KDE resulte fcil de usar para nuevos
usuarios, detalle al que no se resta importancia.
Algunas personas externas al proyecto a menudo critican su similitud con los
escritorios Windows y su falta de innovacin. Esta observacin, sin embargo, recae
sobre la seleccin de parmetros predefinidos del sistema, a menudo
orientada a facilitar la integracin de nuevos usuarios, acostumbrados en su mayora
a trabajar con Windows. Pese a todo esta crtica no tiene fundamento alguno, ya que
debido a que KDE tiene una alta capacidad de configuracin se pueden realizar
efectos de escritorio muy innovadores (inclusive algunos son comparables con
Compiz o Beryl).
Sistemas Operativos Avanzados 19
1.9.2.2 Historia
El proyecto fue iniciado en octubre de 1996 por el programador alemn Matthias
Ettrich, quien buscaba crear una interfaz grfica unificada para sistemas Unix. En
sus inicios imit a CDE (Common Desktop Environment), un entorno de escritorio
utilizado por varios Unix. Dos factores llevaron a la creacin del proyecto alternativo
GNOME en 1997: la eleccin de la biblioteca Qt, que por aquel entonces posea una
licencia incompatible con la GPL de GNU, aunque libre: la QPL, y en menor medida
la importancia del lenguaje C++ para el desarrollo de KDE. La rivalidad actual entre
ambos proyectos se considera beneficiosa generalmente y existe, de hecho, una
constante cooperacin e inspiracin mutua.
KDE 1: Al ao siguiente, se public KDE 1.0. Esta versin contena un panel (barra
de tareas y lanzador de aplicaciones), un escritorio sobre el cual dejar iconos, un
administrador de archivos (Kfm) y un gran nmero de
utilidades.
KDE 2: KDE 2.0, lanzado en el ao 2000, fue reescrito casi por completo. Esta
versin inclua Konqueror (un navegador web y gestor de archivos) adems de
muchas nuevas tecnologas con el objetivo de mejorar la
integracin entre aplicaciones. En esta versin mejor parcialmente el aspecto
visual.
KDE 3: KDE 3.0 fue publicado en el ao 2002, y es la evolucin de KDE 2. El
aspecto de la interfaz no vari hasta KDE 3.1, en el que consta una importante
mejora referente al tema visual: Keramik es incluido como nuevo tema por omisin
junto con el conjunto de iconos Crystal GT y el antialisado de fuentes. En KDE 3.2
Crystal GT fue reemplazado por Crystal SVG. En KDE 3.4 Keramik fue reemplazado
por Plastik.
1.9.3 XFCE
Xfce (xfeis) es un entorno de escritorio ligero para sistemas tipo Unix como Linux,
BSD, Solaris y derivados.
Se configura ntegramente con el ratn o mouse. Su creador, Olivier Fourdan, dice
de l: Diseado para la productividad, las aplicaciones se cargan y se ejecutan
rpidamente, mientras conserva recursos de sistema Xfce tambin provee el marco
de trabajo para el desarrollo de aplicaciones. Adems de Xfce mismo, hay otros
programas que tambin utilizan las bibliotecas de Xfce, como el editor de texto
Mousepad, el reproductor multimedia Xfmedia o el emulador de consola Terminal.
Xfce est basado en la biblioteca GTK+ 2.x y utiliza el gestor de ventanas Xfwm.
Xfce se pareca en sus inicios al entorno de escritorio CDE, pero fue alejndose
notablemente debido a que fue reprogramado nuevamente desde cero(ya lo haba
hecho entre las versiones 2.x y 3.x), y a diferencia de sus anteriores versiones,
ahora cuenta con un sistema modular pudiendo gestionar un sistema de tipo
multihead de manera bastante sencilla, y sigue todos los estndares establecidos
por Freedesktop.org.
El nombre Xfce originalmente provena de XForms Common Enviroment, pero
debido a los grandes cambios en el cdigo, ya no usa el kit de herramientas de
XForms, como originalmente lo haca. El nombre sobrevivi, pero ya no se
indica como XFce sino Xfce. Los desarrolladores estn de acuerdo en que el nombre
carece de significado actualmente, aunque se le suele desglosar como X Free
Choresterol Environment (entorno X libre de colesterol) en referencia al poco
consumo de memoria que realiza y a la velocidad con que se ejecuta al no tener
elementos superfluos a diferencia de otros entornos de escritorio ms grandes.
Thunar es el nuevo gestor de archivos predeterminado para Xfce desde la versin
4.4. Es similar a Nautilus y est diseado para una mxima velocidad y un mnimo
consumo de memoria. Xfce tambin posee un gestor de archivos
comprimidos llamado Xarchiver.
Sistemas Operativos Avanzados 21
1.9.4 Enlightenment
Autoevaluacin
2
SEMANA
OBJETIVOS ESPECFICOS
Conocer los comandos bsicos del entorno linux
CONTENIDOS
Comandos para informacin del sistema
1.1. arch
Este comando sirve para mostrarnos la arquitectura del procesador de nuestro
sistema:
-a: Imprimeel nombre kernel,del equipo, version del kernel, fecha en que fue
apagado el sistema por ultima vez, arquitectura del sistema
- s: Imprime el nombre del kernel
- n: Imprime el nombre del equipo
- r: Imprimeversion del kernel
- i o p: Imprime la arquitectura del equipo
- o:.Imprime el nombre del sistema operativo
Ejemplo:
1.3. /proc/cpuinfo
Nos muestra la informacion referente al procesador del sistema
Ejemplo:
1.4. /proc/meminfo
Verifica el uso de la memoria
Ejemplo:
Sistemas Operativos Avanzados 27
1.5. /proc/swaps
Nos muestra el uso del espacio en memoria SWAP
Ejemplo:
1.6. /proc/mounts
Nos muestra los sistemas de ficheros que se encuentran montados
Ejemplo:
1.7. date
Nos muestra la fecha que tiene registrado el sistema
Ejemplo:
date [MesDiaHoraMinutoAo.Segundos]
Ejemplo:
1.8. w
Nos indica los usuarios que se encuentran en el sistema asi como lo que hacen en el
Ejemplo:
1.9. df h
Nos reporta el uso de espacio en los discos duros
Ejemplo
1.10. ps xa
Este comando lista los procesos que se estan ejecutando en el sistema
Sistemas Operativos Avanzados 29
1.11. mkdir
Este comando sirve para crear una carpeta
Ejemplo:
Ejemplo
1.12. touch
Sirve para generar archivos sin contenido
Ejemplo
1.13. cd
Comando que nos permite movernos entre directorios, su sintaxis es:
cd [carpetaDondeQuieroMoverme]
Ejemplo:
1.14. cp
Comando que sirve para copiar archivos o carpetas, su sintaxis es
cp [parametros] [archivo/Directorio] [rutaDestino]
Los parametros son:
Ejemplo 1:
Copiando un archivo a una carpeta
Ejemplo 2:
1.15. mv
Comando que sirve para mover archivos o carpetas, su sintaxis es
mv [parametros][archivo/Directorio] [rutaDestino]
Los parametros son:
Ejemplo 1:
Ejemplo 2:
Moviendo un archivo a una carpeta
1.16. rm
Comando que sirve para eliminar archivos o carpetas, su sintaxis es
rm [parametros] [archivo/Directorio]
Ejemplo 1:
Ejemplo2:
1.17. ls
Lista los archivos que contiene una carpeta, su sintaxis es
ls [parametros]
Ejemplo:
1.18. find
Busca archivos en una ruta especifica, su sintaxis es
find [ruta] [expresion]
Ejemplo1.
Buscar archivos y carpetas con el nombre archivo.txt en todo el directorio Raiz
Ejemplo 2.
Buscar archivos y carpetas que le pertenezcan al usuario rdelvillar en todo el
directorio raiz
Sistemas Operativos Avanzados 33
Ejemplo 3.
Buscar archivos con extension .bin dentro del directorio '/home/rdelvillar'
Ejemplo 4.
Buscar archivos binarios que no han sido usados en los ultimos 100 dias
Ejemplo5.
Buscar archivos binarios creados o modificados en los ultimos diez dias
1.19. updatedb
Este comando sirve para actualizar la base de datos de nuestro sistema
1.20. mount
El comando mount nos sirve para montar desde particiones de disco, hasta
dispositivos externos como cd's, dvd's, floopy drives, imagenes ISO, o dispositivos
de almacenamiento masivo de datos.
Ejemplo 2. Montando en CD
2. Compresion de Archivos
2.1 tar
El comando tar es utilizado normalmente para empaquetar o desempaquetar
archivos.
La sintaxis para el buen uso de este comando es:
2.2. zip
El comando zip es utilizado normalmente para comprimir paquetes.
La sintaxis para el buen uso de este comando es:
Ejemplo:
HOSTNAME Define el nombre del equipo, el cual debe de tener la forma del
Fully Qualified Domain Name (FQDN). Por ejemplo:
equipo.ejemplo.net
/etc/sysconfig/networkscripts/
BOOTPROTO
none No utiliza ningn protocolo de arranque.
static Se define de forma manual los parmetros de red.
dhcp Obtiene los parmetros de red por medio de un
servidor de DHPC
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.2.10
NETMASK=255.255.255.0
NETWORK=192.168.2.0
GATEWAY=192.168.2.254
DNS1=192.168.2.1
HWADDR= 00:1E:EC:6E:CD:51
Autoevaluacin
3
SEMANA
TEMA
Aprender cmo administrar usuarios y grupos en un ambiente Windows
OBJETIVOS ESPECFICOS
Aprender a crear, editar y eliminar usuarios
CONTENIDOS
Introduccin
Contraseas
Ejemplos
1. Introduccin
El control de los usuarios y grupos es un elemento clave en la administracin de
sistemas Linux.
Usuario Administrador
Es la cuenta del administrador del Sistema en caso de Linux y Unix el usuario
es el usuario root
Usuarios de Servicio
Cuentas que existen para ser usadas con aplicaciones especificas
Usuarios Standard
Cuentas ligadas a un usuario fsico en particular
Los usuarios dentro de un mismo grupo pueden leer, escribir o ejecutar archivos que
pertenecen a ese grupo.
daemon 2 root,bin,daemon
sys 3 root,bin,adm
adm 4 Root, adm,daemon
tty 5
disk 6 root
lp 7 daemon,
mem 8
kmem 9
wheel 10 root
mail 12 mail,post_x,exim
news 13 news
uucp 14 uucp
man 15
games 20
gopher 30
dip 40
ftp 50
lock 54
nobody 99
usuarios 100
rpm 37
utmp 22
_oppy 19
vcsa 69
dbus 81
ntp 38
canna 39
nscd 28
rpc 32
postdrop 90
post_x 89
mailman 41
named 25
postgres 26
sshd 74
rpcuser 29
nfsnobody 65534
pvm 24
apache 48
xfs 43
gdm 42
htt 101
mysql 27
webalizer 67
mailnull 47
smmsp 51
squid 23
ldap 55
netdump 34
pcap 77
quaggavt 102
quagga 92
radvd 75
slocate 21
wnn 49
dovecot 97
radiusd 95
Los UPGs hacen que sea ms seguro configurar los privilegios por defecto para un
nuevo archivo o directorio lo que permite a ambos, tanto el usuario como al grupo de
ese usuario hacer modificaciones al archivo o directorio.
El parmetro que determina qu permisos son aplicados a un nuevo archivo o
directorio es llamado un umask y se configura en el archivo /etc/bashrc.
Tradicionalmente en sistemas UNIX, el umask es configurado a 022, lo que slo
permite al usuario que cre el archivo o directorio realizar modificaciones.
Bajo este esquema, todos los dems usuarios incluyendo miembros del grupo del
creador no tienen derecho a realizar ninguna modificacin. Sin embargo, bajo el
esquema UPG, esta "proteccin de grupo" no es necesaria puesto que cada usuario
tiene su propio grupo privado.
6. Contraseas Shadow
Lo siguiente es una lista de las ventajas de las contraseas shadow sobre el mtodo
tradicional de almacenar contraseas en los sistemas basados en UNIX:
Abajo se muestra una lista de los comandos que no funcionan a menos que se
activen primero las contraseas shadow:
. chage
. gpasswd
7. Ejemplos
El primer paso para crear una nueva cuenta consiste en utilizar el mandato useradd
del siguiente modo:
useradd nombre_del_usuario
Ejemplo:
passwd nombre_del_usuario
Ejemplo:
Este procedimiento tambin puede utilizarse para cambiar una contrasea existente.
Opciones avanzadas.
-c comment
Se utiliza para especificar el archivo de comentario de campo para la
nueva cuenta.
-d home dir
Se utiliza para establecer el directorio de trabajo del usuario. Es
conveniente, a fin de tener un sistema bien organizado, que este se
localice dentro del directorio /home.
-e expire date
Se utiliza para establecerla fecha de expiracin de una cuenta de
usuario. Esta debe ingresarse en el siguiente formato: AAAA-MM-DD.
-g initial group
Se utiliza para establecer el grupo inicial al que pertenecer el usuario.
De forma predeterminada se establece como nico grupo 1. Nota: el
grupo asignado debe de existir.
-G group,[...]
Se utiliza para establecer grupos adicionales a los que pertenecer el
usuario. Estos deben separarse utilizando una coma y sin espacios.
Esto es muy conveniente cuando se desea que el usuario tenga
acceso a determinados recursos del sistema, como acceso a la unidad
Sistemas Operativos Avanzados 49
-m
Se utiliza para especificar que el directorio de trabajo del usuario debe
ser creado si acaso este no existiese, y se copiaran dentro de este los
archivos especificados en /etc/skel.
-s shell
Se utiliza para establecer el Shell que podr utilizar el usuario. De
forma predeterminada, en Red Hat Linux y Fedora Core, se
establece bash como Shell predefinido.
-u uid
Se utiliza para establecer el UID, es decir, la ID del usuario. Este debe
ser nico. De forma predeterminada se establece como UID el nmero
mnimo mayor a 99 y mayor que el de otro usuario existente. Cuando
se crea una cuenta de usuario por primera vez, como ocurre en Red
Hat Linux y Fedora Core generalmente se asignar 500 como
UID del usuario. Los UID entre 0 y 99 son reservados para las cuentas
de los servicios del sistema.
Ejemplo:
Lo anterior crear una cuenta de usuario llamada jperez, que se encuentra incluido
en los grupos operadores y linux, que tendr un UID=521, utilizar Bash como
intrprete de mandatos y tendr un directorio de trabajo en /home/jperez.
userdel nombre_del_usuario
Ejemplo:
userdel -r nombre_del_usuario
Ejemplo:
Manejo de Grupos.
Alta de grupos.
groupadd grupo-que-sea
Un grupo de sistema es aquel que tiene un nmero de identidad de grupo (GID) por
debajo del 500. Regularmente se asigna automticamente el nmero de identidad de
grupo ms bajo disponible.
Sistemas Operativos Avanzados 51
Baja de grupos
Autoevaluacin
4
SEMANA
TEMA
Describir el proceso de aranque en Linux, asi como los componetes que intervienen
en el
OBJETIVOS ESPECFICOS
Comprender el proceso de aranque, inicio y cierre del sistema
CONTENIDOS
Proceso de aranque, inicio y cierre del sistema
El Grub en linux
La estructura de archivos
1.2.1. La BIOS
Cuando un ordenador x86 se carga, el procesador busca al final de la memoria del
sistema por Basic Input/Output System o el programa BIOS y lo ejecuta. La BIOS
controla no slo el primer paso del proceso de arranque, sino que tambin
proporciona una interfaz de bajo nivel para dispositivos perifricos. Por este motivo
se escribe tan slo en modo lectura, memoria permanente y est siempre disponible
para el uso.
Otras plataformas usan programas diferentes para ejecutar tareas a bajo nivel
equivalentes a aquellas de la BIOS en el sistema x86. Por ejemplo, los ordenadores
basados en Itanium usan el Shell Interfaz de Firmware extendible (Extensible
Firmware Interface, EFI).
Una vez que se haya cargado, la BIOS chequea los perifricos y localiza un
dispositivo con el que arrancar el sistema. Habitualmente, en primer lugar
comprueba cualquier disquete y unidades de CDROM presente por los medios de
arranque, y a continuacin si esto falla, echa un vistazo a las unidades de disco duro
del sistema. En la mayora de los casos, el orden de bsqueda de las unidades para
arrancar es controlado por una configuracin de la BIOS y busca por el dispositivo
maestro IDE en el bus IDE primario. La BIOS carga en memoria cualquier programa
que resida en el primer sector de este dispositivo, llamado Registro de arranque
principal o Master Boot Record (MBR). La MBR slo tiene 512 bytes de tamao y
contiene las instrucciones de cdigo de mquina para el arranque del equipo,
llamado un gestor de arranque, as como tambin la tabla de particiones. Una vez
que la BIOS haya encontrado y cargado el gestor de arranque en memoria, le deja el
control del proceso de arranque a ste.
1.2.3. El kernel
Cuando se carga el kernel, ste inicializa y configura la memoria del ordenador y el
diferente hardware conectado al sistema, incluyendo todos los procesadores,
subsistemas de entrada/salida y dispositivos de almacenamiento. A continuacin
buscar la imagen comprimida de initramfs en una ubicacin predeterminada en
memoria, la descomprimir directamente a /sysroot/ y cargar todos los
controladores necesarios. A continuacin inicializa los dispositivos virtuales
relacionados con el sistema de ficheros, tal como LVM o software RAID antes de
completar los procesos initramfs y de liberar toda la memoria que la imagen del
disco ocup anteriormente.
El kernel luego crea un dispositivo root, monta la particin root como slo lectura y
libera cualquier memoria no utilizada. Llegados a este punto, el kernel est cargado
en memoria y operativo. Sin embargo, como no hay aplicaciones de usuario que
permitan la entrada significativa de datos al sistema, no se puede hacer mucho ms.
Para configurar el entorno de usuario, el kernel inicia el programa /sbin/init.
1.5. Apagar
Para apagar Linux, el usuario root puede ejecutar el comando /sbin/shutdown.
La pgina man para shutdown tiene una lista completa de opciones, pero las dos
usadas ms comnmente son:
/sbin/shutdown -h now
/sbin/shutdown -r now
Cuando se enciende un equipo con Red Hat Enterprise Linux, el sistema operativo
es cargado en memoria por un programa especial llamado gestor de arranque. Un
programa gestor de arranque existe en el disco duro primario del sistema (o en otros
dispositivos) y es responsable de la carga del kernel de Linux con sus archivos
necesarios o (en algunos casos) de otros sistemas operativos en la memoria.
arquitecturas diferentes a x86 han usado entornos previos al sistema operativo que
permiten arrancar el sistema desde una lnea de comandos.
. GRUB soporta el modo Direccionamiento Lgico de Bloques (LBA). El modo LBA
coloca la conversin de direccionamiento utilizada para buscar archivos en la unidad
de disco duro del firmware y se utiliza en muchos discos IDE y en todos los discos
duros SCSI. Antes de LBA, los gestores de arranque encontraban la limitacin del
cilindro 1024 del BIOS, donde el BIOS no poda encontrar un archivo despus de
ese cabezal de cilindro del disco. El soporte LBA permite que GRUB arranque los
sistemas operativos desde las particiones ms all del lmite de 1024 cilindros,
siempre y cuando el BIOS del sistema soporte el modo LBA. La mayora de las
revisiones ms modernas de la BIOS soportan el modo LBA..
GRUB puede leer las particiones ext2. Esto permite que GRUB acceda a su archivo
de configuracin, /boot/grub/grub.conf, cada vez que el sistema arranca, eliminando
la necesidad que tiene el usuario de escribir una nueva versin de la primera etapa
del gestor de arranque al MBR en caso de que se produzcan cambios de la
configuracin. El nico caso en el que el usuario necesitara reinstalar GRUB en el
MBR es en caso de que la localizacin fsica de la particin /boot/ se traslade en el
disco.
(hd0,0)+1
chainloader +1
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux AS (2.6.8-1.523)
root (hd0,0)
kernel /vmlinuz-2.6.8-1.523 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.8-1.523.img
# section to load Windows
title Windows
rootnoverify (hd0,0)
chainloader +1
Este archivo indicar a GRUB que cree un men con Linux como el sistema
operativo predeterminado y que establezca un arranque automtico despus de 10
segundos. Se proporcionan dos secciones, una para cada entrada de sistema, con
comandos especficos para la tabla de particin del sistema.
Sistemas Operativos Avanzados 67
El cumplimiento del estndar significa varias cosas, pero los dos aspectos ms
importantes son la compatibilidad con otros sistemas que siguen el estndar y la
capacidad de poder montar la particin /usr/ en modo slo lectura. Este segundo
punto es importante porque el directorio contiene ejecutables comunes y no est
pensado para ser alterado por los usuarios. Por este motivo, el directorio /usr/ se
monta como de slo lectura, y esto se puede hacer directamente desde el CD-ROM
o desde otro ordenador a travs de NFS en modo slo lectura.
Sistemas Operativos Avanzados 69
directorio /proc/ y a la gran cantidad de maneras que este directorio utiliza para
comunicar con el kernel.
|- local/
|- sbin/
|- share/
|- src/
|- tmp -> ../var/tmp/
|- X11R6/
Abajo se muestran algunos de los directorios encontrados dentro del directorio /var/:
/var
|- account/
|- arpwatch/
|- cache/
|- crash/
|- db/
|- empty/
|- ftp/
|- gdm/
|- kerberos/
|- lib/
|- local/
|- lock/
|- log/
|- mail -> spool/mail/
|- mailman/
|- named/
|- nis/
|- opt/
|- preserve/
|- run/
+- spool/
|- at/
|- clientmqueue/
|- cron/
|- cups/
|- exim/
|- lpd/
|- mail/
|- mailman/
|- mqueue/
|- news/
|- postfix/
|- repackage/
|- rwho/
|- samba/
|- squid/
|- squirrelmail/
|- up2date/
|- uucp
|- uucppublic/
|- vbox/
|- tmp/
|- tux/
|- www/
|- yp/
Los archivos de registro del sistema tales como messages/ y lastlog/ van en el
directorio /var/log/. El directorio /var/lib/rpm/ tambin contiene las bases de datos
RPM. Los archivos lock van en /var/lock/, habitualmente en directorios para el
programa usando el archivo. El directorio /var/spool/ tiene subdirectorios para
programas en los que se almacenan archivos de datos.
Sistemas Operativos Avanzados 75
Autoevaluacin
1. Explique que es el grub y cual es su funcin
2. Indique cuales son los runlevels y que se realiza con cada uno de ellos
5
SEMANA
Filesystems en Linux
TEMA
Describir el manjeo de los particiones en linux
OBJETIVOS ESPECFICOS
Comprender como se interpretar, crear, modificar y eliminar particiones en Linux
CONTENIDOS
Particiones conceptos basicos
Herramientas de administracion
1. Particiones.
Las particiones swap son equivalente al pagefile.sys de M$ windows es decir son las
encargadas de gestionar la memoria "no fisica" del sistema (memoria virtual), en
principio el tamao de la particion swap no deberan ser menos de 128MB, en
general se aplica una regla que si bien no esta establecida como un axioma, si es
aceptada por casi todos los usuarios de sistema linux-unix.
En Linux se denotan igual que si fueran 4 primarias, la extendida no tiene por que
ser la ultima, Por ejemplo: tenemos la particin extendida hda2, las que estn
"dentro", las lgicas, pueden ser hda4, hda5, hda5.
En casi todos los sistemas Linux o basados en Unix (freebsd, solaris, es distinto)
existen una serie de utilidades para el manejo de particiones.
Para mostrar informacin en pantalla existen multitud de aplicacin en modo X que
lo hacen, pero una manera casi absoluta de saberlo es, o bien en modo consola, o
bien un front-end que muestre la informacin del archivo /proc/partitions.
Para hacerlo en modo consola bastara con hacer un cat al archivo (cat
/proc/partitions)
Como se puede ver, se muestra gran informacin como: uso, principio y fin de los
bloques, capacidad, sectores, nombre asignado, estado, etc.
El comando df nos muestra informacin til sobre el estado de las unidades
montadas.
La particin donde esta alojado el s.o se muestra como raz (/), las dems pueden ir
montadas en directorios, algunas deben estar en su directorio especifico si tienen
-/home aqu se pueden montar los archivos que se usen en un servidor o espacio
para usuarios.
Partiendo de esto, para usar una particin hay que montarla,para montar una
particin se usa el comando mount o un front-end para ello, el comando tiene una
serie de opciones que se describen muy bien en el man del comando.
Sistemas Operativos Avanzados 79
Fichero /etc/mtab
Fichero /etc/fstab
$ mount /home
dump
lo usa el comando dump para determinar de que filesystems hacer copias de
seguridad
Sistemas Operativos Avanzados 81
pass
lo usa el comando fsck para determinar el orden en que se chequean los
filesystems al iniciar el sistema
o si 0, el filesystem no se chequea
o si > 0, los filesystems se chequean en el orden indicado por los
nmeros
si varios tienen el mismo nmero, se chequean en paralelo (si
es posible)
normalmente / tendr 1 y el resto 2
Ntese que se ha aadido una particin ext3 que se encuentra en el primer disco
IDE que corresponde a la primera particin lgica de este, la cual se montara en el
diracorui /mnt/Debian con sistema de archivos ext3, y opciones de montaje por
default.
Viendo el ejemplo, nos damos cuenta de que el fstab no solo sirve para las
particiones, si no que sirve para multitud de hardware, el disco de 3/14 , las unidades
de cd-rom,las unidades tipo cmaras digitales, video dv, unidades externas por USB,
unidades por red tipo NFS, samba, etc; todos ellos tienen un archivo nodo en dev, se
montan en algn directorio, y se les asigna un valor.
En linux existe un comando fdisk, que nos permite la modificacin, creacin y otros
parametros para el uso con particiones y discos ( ver man del comando) este
comando tiene la funcionalidad del mismo de M$ DOS( puesto que es una adopcin
de los sistemas Unix para este s.o) pero el original, como suele decirse, es mejor,
las posibilidades de fdisk en linux no son comparables de ninguna manera a los
sistemas basados en ms-dos.
Formato:
Ejemplo
usamos n (new):
cfdisk
interfaz para el fdisk (tambin escribe la tabla de particiones)
parted
programa de GNU que permite crear, destruir, cambiar el tamao, chequear y
copiar particiones
qtparted
clnico del Partition Magic para Linux (basado en libparted)
Partition Magic
programa comercial de la compaa Symantec que puede manejar diversos
filesystems
Formato:
Opciones:
o -V verbose
o -t filesystem tipo de sistema de ficheros a crear (ext2, ext3, xfs, etc.)
si no se especifica se crea el por defecto del sistema (en Linux
ext2)
o n_bloques nmero de bloques usados para el sistema de ficheros (si
no se pone, se usa toda la particin)
Comandos relacionados
# fdisk -l /dev/hd
Disk /dev/hdb: 10.7 GB, 10737418240 bytes
16 heads, 63 sectors/track, 20805 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Device Boot Start End Blocks Id System
/dev/hdb1 1 9689 4883224+ 83 Linux
/dev/hdb2 9690 20805 5602464 82 Linux swap / Solaris
# mkswap /dev/hdb2
Setting up swapspace version 1, size = 5736919 kB
no label, UUID=a6c2849b-c33e-478e-8a8d-fecfe3f18f6d
# swapon /dev/hdb2
# swapon -s
Filename Type Size Used Priority
/dev/hda7 partition 377488 0 -1
/dev/hdb2 partition 5602456 0 -2
Comando mount
Ejemplo
Formato
Algunas opciones:
o tipo tipo de sistema de ficheros (ext2, ext3, reiserfs, vfat, etc.); si se
pone auto intenta determinar de forma automgica
o -a monta los filesystems listados en /etc/fstab
o -r/-w monta los sistemas de slo lectura/escritura
o -f simulacin; usado con -v (verbose) para chequear
o -n monta sin aadir la entrada a /etc/mtab; se usa cuando /etc es slo
lectura
o -o opciones opciones de montado; formato igual al usado en el fichero
fstab
Comando umount
Formato
Ejemplo:
$ umount /home2
Algunas opciones
o -a desmonta los filesystems listados en /etc/mtab
o -r si falla, intenta remontar slo lectura
o -f fuerza el desmontado
Si hay algn proceso bloqueando el filesystem, este no se puede desmontar:
o usar el comando fuser -c directorio para ver el PID del proceso
Autofs
Ejemplo de auto.master:
/home /etc/auto.home
/misc /etc/auto.misc --timeout 60
Supermount
pmount
gnome-volume-manager
5. Otras utilidades
du [opciones] [directorio]
o Algunas opciones:
-a muestra valores para ficheros y directorios (por defecto, solo
muestra directorios)
-b, -k tamaos en bytes/KBytes
-h salida ms legible
-s muestra slo la ocupacin total
o Ejemplo:
o $ du -sh /home /usr
o 1,2G /home
o 2,3G /usr
df [opciones]
o Algunas opciones:
-a muestra todos los filesystems (incluso los de tamao 0)
-h salida ms legible
-i da informacin sobre los inodos
-l slo muestra filesystems locales
-T muestra el tipo de sistema de ficheros
o Ejemplo:
o $ df -h
o Filesystem Tamao Usado Disp Uso% Montado en
o /dev/hda1 67M 50M 13M 80% /
o tmpfs 63M 0 63M 0% /dev/shm
o /dev/hda9 272M 8,1M 250M 4% /home
o /dev/hda8 23M 1,1M 20M 5% /tmp
o /dev/hda5 464M 90M 350M 21% /usr
o /dev/hda6 74M 44M 27M 63% /var
Sistemas Operativos Avanzados 93
6. PERMISOS EN LINUX
Esta es una de las caractersticas que ayudan a que Linux sea casi inmune a los
Virus de computadora, los virus deben ser capaces de escribir sobre un archivo para
poder infectarlo y ejecutarse de alguna manera para poder infectar mas archivos,
con el sistema de permisos de Linux los virus no pueden copiarse a cualquier
archivo, si el usuario carece de permisos el virus no podr infectar ms archivos y
por lo tanto no podr reproducirse.
Todos los archivos y directorios en Linux tienen permisos que verifican quien puede
hacer o no alguna accin con l.
Para poder ver los permisos de los archivos y directorios es necesario ejecutar el
siguiente comando:
$ ls l
7. COMANDOS RELACIONADOS
Smbolo Descripcin
u Es el usuario propietario del archivo o directorio
g Es el grupo al que pertenece el archivo o directorio
Identidades
o Otros usuarios, el resto del mundo, ni el propietario ni su grupo
a Todo el mundo propietario, grupo y otros
r Acceso de lectura
Permisos w Acceso de escritura
x Acceso de ejecucin
+ Aade los permisos
Acciones - Elimina los permisos
= el nico permiso
Vamos a practicar con el comando chmod, para ello lo primero que haremos ser
crear el archivo foto1.png para ver los cambios de permisos, as que les recomiendo
seguir la secuencia:
Resultado
Ejemplo Descripcin
Cada permiso tienen asignado un valor, incluso cuando el permiso no est activo.
Para poder utilizar los nmeros tendremos que tener en cuenta la siguiente tabla con
sus respectivos valores:
r = 4 (lectura)
w = 2 (escritura)
x = 1 (ejecucion)
- = 0 (sin permisos)
Cuando asignamos los permisos utilizando nmeros debemos tener en cuenta que
primero se sumarn los valores y dicho resultado ser el que se coloque, aqu una
tabla que muestra dichos valores:
Ejemplos:
Utilizaremos el mismo ejercicio anterior para poder practicar con los permisos
utilizando nmeros, el nico cambio que haremos ser utilizar otro archivo llamado
foto2.png:
Cambiando el propietario
Utilizamos el comando chown explicado lneas arriba:
# chown raul foto2.png # el usuario raul ser el propietario del archivo foto2.png
Cambiando el grupo
Utilizamos el comando chgrp explicado lneas arriba:
# chgrp clases datos/ R # todos los archivos y sub directorios del directorio datos/
sern del grupo clases
Autoevaluacin
1. Cul es el comando que se usa para crear un filesystem?
(a) fsck
(b) mkfs
(c) fdisk
(d) chmod
6
SEMANA
TEMA
Describir las distintas formas de instalar aplicaciones en Linux
OBJETIVOS ESPECFICOS
Comprender el uso de RPMs
CONTENIDOS
Introduccin a RPM
Manejo de RPM
Construyendo un RPM
RPM es el gestor de paquetes de Red Hat (Red Hat Package Manager). Aunque
aparece Red Hat en su nombre, la intencin es que sea un sistema de empaquetado
abierto y disponible para el uso de cualquiera. Permite a los usuarios tomar el cdigo
fuente (source code) y empaquetarlo en forma de fuentes y binaria de forma que los
ficheros binarios sean fcilmente instalables y rastreables y los fuentes puedan ser
reconstruidas con facilidad. Tambin gestiona una base de datos de todos los
paquetes y sus ficheros que puede ser usada para verificar paquetes e interrogarla
para obtener informacin acerca de ficheros y/o paquetes.
2. Visin general
Con RPP (EL anterior sistema de empaquetado del cual RPM no deriva en
absoluto), los paquetes de fuentes deban ser ``hackeados N.T.: retocados '' para
poder construir las aplicaciones desde ellos. Tericamente, se poda instalar un
paquete fuente RPP y efectuarle un make sin problemas. Pero los fuentes no eran
las originales, y no haba referencia alguna a los cambios que se habia hecho para
que pudieran compilar. Se haca pues necesario bajarse los fuentes originales de
forma separada.
Con RPM, tiene los fuentes originales junto al ``parche N.T.: patch en el original ''
que hemos usado para poder compilarlo. Vemos en esto una gran ventaja. Por
qu? Son varias las razones. La primera es que si sale disponible una nueva versin
de un programa, usted no necesita empezar desde la nada para conseguir que
compile bajo RHL. Puede examinar el parche para saber qu podra necesitar hacer.
De esta manera toda la configuracin por defecto de compilacin queda fcilmente a
la vista.
3. Informacin general
3.1 Adquirir RPM
ftp://ftp.redhat.com/pub/redhat/code/rpm
http://rpm.pbone.net
http://www.rpmfind.net/
Estos son los mnimos requerimientos para instalar RPMs. Para construir RPMs a
partir de los fuentes, necesitar todo lo normalmente requerido para construir un
paquete, cosas como gcc, make, etc.
4. Usando RPM
Apercbase de que ahora RPM puede hacer consultas y/o instalaciones a travs de
FTP.
Aunque estos son comandos simples, rpm puede usarse de multitud de formas,
como puede verse en el mensaje de Ayuda:
Sistemas Operativos Avanzados 105
5. Manejo de RPM
La salida es:
/usr/doc/koules
/usr/doc/koules/ANNOUNCE
Sistemas Operativos Avanzados 107
/usr/doc/koules/BUGS
/usr/doc/koules/COMPILE.OS2
/usr/doc/koules/COPYING
/usr/doc/koules/Card
/usr/doc/koules/ChangeLog
/usr/doc/koules/INSTALLATION
/usr/doc/koules/Icon.xpm
/usr/doc/koules/Icon2.xpm
/usr/doc/koules/Koules.FAQ
/usr/doc/koules/Koules.xpm
/usr/doc/koules/README
/usr/doc/koules/TODO
/usr/games/koules
/usr/games/koules.svga
/usr/games/koules.tcl
/usr/man/man6/koules.svga.6
Estos son slo unos pocos ejemplos. Otros, an ms creativos, podr hacerlos
fcilmente una vez que se haya familiarizado con RPM.
El primer paso suele ser descomprimir el archivo comprimido que nos hemos bajado
de Internet (casi siempre con la extensin .tar.gz, lo que se conoce con el nombre de
tarball, aunque puede estar en otros formatos). Abrimos una consola de comandos,
y nos dirigimos hacia el directorio donde se encuentra el archivo (tenemos que tener
permiso de lectura y escritura en ese directorio), tecleamos la siguiente orden:
cd nombredelprograma
Observacion
En este momento sera recomendable leer la documentacin que acompaa al
programa, que normalmente est contenida en un archivo con el nombre README.
./configure --prefix=/usr/local
Observacion
Hay que tener cuidado con el paso anterior, ya que, de lo contrario, es posible que
nuestro programa vaya a parar a algn directorio no incluido en nuestro PATH, por lo
que no se podra ejecutar. Tambin es necesario aclarar que la mayora de los
programas ya tienen configurada una ruta de instalacin de forma predeterminada,
como los programas diseados para el escritorio KDE, que suelen detectar la ruta en
la que reside el resto de programas de dicho escritorio para instalarse en el mismo
lugar que ellos. As, la orden ./configure se suele ejecutar casi siempre sin ningn
parmetro adicional.
Tras ejecutar ./configure veremos desfilar una larga sucesin de mensajes por la
consola y, si nuestro sistema dispone de todo lo necesario para llevar a cabo la
compilacin de forma satisfactoria, se nos informar en el ltimo mensaje mostrado.
En el caso de que se produzca algn error, deberemos prestar atencin a los ltimos
mensajes mostrados para tratar de solucionar el problema que se haya detectado en
nuestro sistema. Si todo fue bien, ya podemos pasar a compilar nuestra aplicacin
con la orden:
make
su
make install
Si todo fue bien y no ocurri ningn error, nuestra aplicacin ya estar lista para ser
usada (y, al contrario que en los entornos Windows, no ser necesario tener que
reiniciar el sistema).
Dependiendo del script de instalacin, es posible que se haya creado alguna entrada
en el men de nuestro escritorio y/o en el propio escritorio, aunque ninguna de estas
opciones suele ser habitual. Lo ms seguro es que tengamos que crear esas
entradas nosotros mismos de forma manual.
Un poco de limpieza
make clean
make uninstall
Resumen
Como compilar un programa en Linux desde su cdigo fuente, se seguirn los
siguientes pasos:
cd aplicacin-a-instalar
./configure
make
make install
make clean
Sistemas Operativos Avanzados 111
Yum es un programa automtico para instalar / desinstalar los RPM del sistema.
Obtiene automticamente dependencias y nos permite instalar correctamente los
paquetes.
Procedimientos
Con yum podemos realizar las siguientes tareas frecuentes:
Actualizacin del sistema con todas las dependencias que sean necesarias:
7.2 Bsquedas
Ejemplo:
Ejemplo:
Ejemplo:
Sistemas Operativos Avanzados 113
Ejemplo:
Lo siguiente listar todos los paquetes disponibles en la base de datos yum y que
pueden instalarse:
Autoevaluacin
1. Qu es el RPM?
3. Cules son los pasoa para instalar una aplicacin desde su cdigo fuente?
9
SEMANA
ANLISIS DE ARCHIVOS DE
REGISTRO y CUOTAS DE DISCO
TEMA
Describir y entender el uso de los archivos de registro del sistema Linux
Describir y entender el uso de cuotas de disco en Linux
OBJETIVOS ESPECFICOS
Comprender el funcionamiento de los logs en Linux
CONTENIDOS
Archivos de registro
Ubicacin
El daemon SYSLOG
Cuotas de disco
1. ARCHIVOS DE REGISTRO
Los Archivos de registro (o archivos de log) son archivos que contienen mensajes
sobre el sistema, incluyendo el kernel, los servicios y las aplicaciones que se
ejecutan en dicho sistema. Existen diferentes tipos de archivos de log
dependiendo de la informacin. Por ejemplo, existe un archivo de log del sistema,
un archivo de log para los mensajes de seguridad y un archivo de log para las
tareas cron.
Los archivos de registro pueden ser muy tiles cuando se trate de resolver un
problema con el sistema tal como cuando se trata de cargar un controlador del
kernel o cuando se este buscando por intentos no autorizados de conexin al
sistema. Este captulo discute donde encontrar estos archivos de registro, cmo
visualizarlos y qu buscar en ellos.
Tambin puede utilizar el Visor de registro del sistema. Para iniciar la aplicacin,
hacer clic en Sistema del panel superiorAdministracinRegistro de actividad
del sistema, o digite el comando gnome-system-log en una consola.
4. DEMONIO SYSLOGD
Podemos ver que cada regla del archivo tiene dos campos: un campo de
seleccin y un campo de accin, separados ambos por espacios o tabuladores.
El campo de seleccin est compuesto a su vez de dos partes separadas por un
punto: una que indica el servicio que enva el mensaje y otra que marca su
prioridad, separadas por un punto (.); ambas son indiferentes a maysculas y
minsculas.
La parte del servicio contiene una de las siguientes palabras clave: auth, auth-
priv, cron, daemon, kern, lpr, mail, mark, news, security (equivalente a auth),
syslog, user, uucp y local0 hasta local7; esta parte especifica el subsistema'
Sistemas Operativos Avanzados 119
Una mquina remota: Se pueden enviar los mensajes del sistema a otra
mquina, de manera a que sean almacenados remotamente, sin ms que
indicar en el campo de accin el nombre o direccin de dicho sistema
precedido por el signo @ '. Esto es til si tenemos una mquina segura, en la
que podemos confiar, conectada a la red, ya que de esta manera se
guardara all una copia de los mensajes de nuestro sistema, copia que no
podra ser modificada en caso de que alguien entrase en la mquina que los
est generando. Esto es especialmente interesante para detectar usuarios
ocultos en nuestro sistema (usuarios maliciosos que han conseguido los
suficientes privilegios para ocultar sus procesos o su conexin), ya que una
de las principales cosas que har este tipo de atacantes es eliminar cualquier
registro que denote su presencia en la mquina (por ejemplo, sus entradas en
wtmp).
Todos los usuarios que estn conectados: Los errores con una prioridad de
emergencia se suelen enviar a todos los usuarios que estn conectados al
sistema, de manera que se den cuenta de que algo va mal; para ello
utilizamos un asterisco en el campo de accin:
Debe remontar las particiones para que surtan efecto los cambios:
cd /var
touch aquota.user aquota.group quota.user quota.group
cd /home
touch aquota.user aquota.group quota.user quota.group
Ejecutar:
quotacheck -avug
Para activar las cuotas de disco recin configuradas, solo bastar ejecutar:
quotaon /var
quotaon /home
init 3
5.1. Edquota.
Hard: Limite absoluto. Limite que no puede ser rebasado por el usuario
bajo circunstancia alguna.
Asignar cuotas de disco a cualquier usuario o grupo solo har falta utilizar edquota
citando el nombre del usuario al cual se le quiere aplicar:
edquota fulano
El usuario siempre podr rebasar una cuota de gracia pero nunca una cuota
absoluta.
Sistemas Operativos Avanzados 123
La cuota de gracia establece los lmites de bloques o inodos que un usuario tiene
en una particin. Cuando el usuario excede el lmite establecido por la cuota de
gracia, el sistema advierte al usuario que se ha excedido la cuota del disco sin
embargo permite al usuario continuar escribiendo hasta que trascurre el tiempo
establecido por el periodo de gracia, tras el cual al usuario se le impide continuar
escribiendo sobre la particin. Suponiendo que quiere asignar una cuota de gracia
de 6 MB en /dev/hda7 y /dev/hda5, la cual podr ser excedida hasta por 7 das, se
utilizara lo siguiente:
Si se quiere que todo aplique para los usuarios existentes, a partir de UID 510, por
ejemplo, suponiendo que tiene al usuario "pepito" como molde (note por favor el
acento grave en el mandato justo antes de awk, no es una comilla ni
apostrofe):
edquota -p pepito `awk -F: '$3 > 510 {print $1}' /etc/passwd`
6. Comprobaciones.
edquota fulano
Asigne al usuario fulano una cuota de disco de 50 MB en todas las particiones con
cuota de disco habilitada:
Desde otra terminal acceda hacia el sistema como el usuario fulano y ejecute el
mandato quota y observe con detenimiento la salida:
cp -r /usr/lib ~/prueba-cuotas
Para poder volver a escribir sobre la particin, es necesario liberar espacio. Elimine
por completo el directorio ~/prueba-cuotas y vuelva a utilizar el mandato quota:
rm -fr ~/prueba-cuotas
quota
Sistemas Operativos Avanzados 125
Autoevaluacin
1. Cul es el nombre del archivo que contiene registrado los mensajes de los
servicios de red?
(a) access.log
(b) syslog
(c) spooler
(d) messages
3. Cul es el comando que informa sobre los ltimos logins de los usuarios en
el sistema?
(a) who
(b) lastlog
(c) dmesg
(d) syslog
10
SEMANA
TEMA
Describirla funion de los servidores NFS y Samba
OBJETIVOS ESPECFICOS
Comprender el funcionamiento del servidor NFS
CONTENIDOS
Introduccin a NFS
Funcionamiento NFS
Introduccion a Samba
Un Sistema de archivos de red (NFS) permite a los hosts remotos montar sistemas
de archivos sobre la red e interactuar con esos sistemas de archivos como si
estuvieran montados localmente. Esto permite a los administradores de sistemas
consolidar los recursos en servidores centralizados en la red.
Este captulo se centra en los conceptos fundamentales de NFS e informacin
suplementaria. Para instrucciones especficas con respecto a la configuracin y
operacin del software NFS en servidores o clientes.
2. Funcionamiento
Hay tres versiones de NFS actualmente en uso. La versin 2 de NFS (NFSv2), es la
ms antigua y est ampliamente soportada por muchos sistemas operativos. La
versin 3 de NFS (NFSv3) tiene ms carctersticas, incluyendo manejo de archivos
de tamao variable y mejores facilidades de informes de errores, pero no es
completamente compatible con los clientes NFSv2. NFS versin 4 (NFSv4) incluye
seguridad Kerberos, trabaja con cortafuegos, permite ACLs y utiliza operaciones con
descripcin del estado. Linux soporta clientes tanto NFSv2, NFSv3 como NFSv4, y
cuando monta un sistema de archivos a travs de NFS, Red Hat Enterprise Linux
usa NFSv4 por defecto.
Cuando se utiliza NFSv2 o NFSv3 con UDP, bajo condiciones normales la conexin
UDP desatendida minimiza el trfico de la red, ya que el servidor NFS envia un
cookie al cliente despus que este tiene acceso al volumen compartido. Esta cookie
es un valor aleatorio guardado en el lado del servidor y espasado junto con las
peticiones RPC desde el cliente. El servidor NFS puede ser reiniciado sin afectar a
los clientes y las cookies permanecen intactas. Sin embargo, debido a que UDP es
sin supervisin, si el servidor se cae de forma inesperada, los clientes UDP
continan saturando la red con peticiones para el servidor. Por esta razn, TCP es el
protocolo preferido cuando se conecte a un servidor NFS.
La nica vez que NFS lleva a cabo la autentificacin es cuando el cliente intenta
montar un recurso compartido NFS. Para limitar el acceso al servicio NFS, se utilizan
envolturas TCP (TCP wrappers).
3. Servicios requeridos
Linux utiliza una combinacin de soporte a nivel del kernel y procesos demonio
para proporcionar los archivos compartidos con NFS. NFSv2 y NFSv3 confa en las
Llamadas de procedimientos remotos ((RPC)) para enrutar peticiones entre clientes
y servidores. Los servicios RPC bajo Linux son controlados por el servicio portmap.
Para compartir o montar sistemas de archivos NFS, los servicios siguientes
funcionan juntos, dependiendo de cul versin de NFS se tenga implementada:
. nfs . Inicia los procesos RPC apropiados para servir peticiones para los
sistemas de archivos compartidos NFS.
. nfslock.Un servicio opcional que inicia los procesos RPC adecuados para
permitir que clientes NFS bloqueen archivos en el servidor.
. rpc.nfsd . Este proceso es el servidor NFS. Trabaja con el kernel Linux para
satisfacer las demandas dinmicas de clientes NFS, tales como proporcionar
hilos del servidor cada vez que se conecta un cliente NFS. Este proceso
corresponde al servicio nfs.
/exported/directory bob.example.com
donde
<uid-value> es el nmero de ID del usuario y
/another/exported/directory 192.168.0.3(rw,sync)
Reemplace <nfs-type> con nfs para servidores NFSv2 o NFSv3, o nfs4 para
servidores NFSv4. Reemplace <options> con una lista de opciones separadas por
comas para el sistema NFS. Reemplace <host> con el host remoto,
</remote/export> con el directorio remoto que est siendo montado y sustituya
</local/directory> con el directorio local donde el sistema de archivos remoto se
montar.Consulte la pgina man de mount para ms detalles.
6.1. /etc/fstab
El archivo /etc/fstab lo referencia el servicio netfs al momento del arranque, por lo que
las lneas haciendo referencia a las comparticiones NFS tienen el mismo efecto que
escribir manualmente el comando mount durante el arranque.
Sistemas Operativos Avanzados 135
Una muestra de lnea de /etc/fstab para montar un NFS exportado ser parecida a:
Reemplace <nfs-type> con nfs para servidores NFSv2 o NFSv3, o con nfs4
para servidoresNFSv4.
Reemplace <options> con una lista de opciones separada por comas para el
sistema NFS
Si se utiliza Red Hat Enterprise Linux, solo bastar realizar lo siguiente para
instalar o actualizar la programtica necesaria:
Si utiliza CentOS 4 o White Box Enterprise Linux 4, solo bastar realizar lo siguiente
para instalar o actualizar la programtica necesaria:
No hace falta se asigne una clave de acceso en el sistema con el mandato passwd
puesto que la cuenta no tendr acceso al interprete de mandatos.
Si se necesita que las cuentas se puedan utilizar para acceder hacia otros servicios
como seran Telnet, SSH, etc, es decir, que se permita acceso al interprete de
mandatos, ser necesario especificar /bin/bash como interprete de mandatos y
adems se deber asignar una clave de acceso en el sistema con el mandato
passwd:
127.0.0.1 localhost
127.0.0.1 localhost
192.168.1.5 maquinalinux
192.168.1.6 isaac
192.168.1.7 finanzas
192.168.1.8 direccion
workgroup = MIGRUPO
El parmetro interfaces permite establecer desde que interfaces de red del sistema
se escucharn peticiones. Samba no responder a peticiones provenientes desde
cualquier interfaz no especificada. Esto es til cuando Samba se ejecuta en un
servidor que sirve tambin de puerta de enlace para la red local, impidiendo se
establezcan conexiones desde fuera de la red local.
interfaces = 192.168.1.254/24
Sistemas Operativos Avanzados 139
[printers]
comment = El comentario que guste.
path = /var/spool/samba
printable = Yes
browseable = No
writable = no
printable = yes
public = Yes
Windows NT, 2000 y XP no tendrn problema alguno para acceder e imprimir hacia
las impresoras, sin embargo Windows 95, 98 y ME suelen tener problemas para
comunicarse con Samba para poder imprimir. Por tanto, si se quiere evitar
problemas de conectividad con dichos sistemas operativos hay que agregar algunos
parmetros que resolvern cualquier eventualidad:
[printers]
comment = Impresoras.
path = /var/spool/samba
printable = Yes
browseable = No
writable = no
printable = yes
public = Yes
print command = lpr -P %p -o raw %s -r
lpq command = lpstat -o %p
lprm command = cancel %p-%j
[printers]
comment = Impresoras.
path = /var/spool/samba
printable = Yes
browseable = No
writable = no
printable = yes
public = Yes
print command = lpr -P %p -o raw %s -r
lpq command = lpstat -o %p
lprm command = cancel %p-%j
printer admin = fulano, @opers_impresion
[Lo_que_sea]
comment = Comentario que se le ocurra
path = /cualquier/ruta/que/desee/compartir
Opcin Descripcin
guest ok Define si ser permitir el acceso como usuario
invitado. El valor puede ser Yes o No.
public Es un equivalente del parmetro guest ok, es
decir define si ser permitir el acceso como
usuario invitado. El valor puede ser Yes o No.
browseable Define si se permitir mostrar este recurso en las
listas de recursos compartidos. El valor puede ser
Yes o No.
writable Define si ser permitir la escritura. Es el
parmetro contrario de read only. El valor puede
ser Yes o No. Ejemplos: writable = Yes es lo
mismo que read only = No. Obviamente writable =
No es lo mismo que read only = Yes
valid users Define que usuarios o grupos pueden acceder al
recurso compartido. Los valores pueden ser
nombres de usuarios separados por comas o
bien nombres de grupo antecedidos por una @.
Ejemplo: fulano, mengano, @administradores
write list Define que usuarios o grupos pueden acceder
con permiso de escritura. Los valores pueden ser
nombres de usuarios separados por comas o
bien nombres de grupo antecedidos por una @.
Ejemplo: fulano, mengano, @administradores
admin users Define que usuarios o grupos pueden acceder
con permisos administrativos para el recurso. Es
decir, podrn acceder hacia el recurso realizando
todas las operaciones como super-usuarios. Los
valores pueden ser nombres de usuarios
separados por comas o bien nombres de grupo
Sistemas Operativos Avanzados 141
[ftp]
comment = Directorio del servidor FTP
path = /var/ftp/pub
guest ok = Yes
read only = Yes
write list = fulano, administrador
directory mask = 0755
create mask = 0644
Samba fue creado con un objetivo: ser en un reemplazo definitivo para Windows
como servidor en una red local. sto, por supuesto, requiere algunos procedimientos
adicionales dependiendo de las necesidades de la red local.
Los grupos que existen en Windows tambin se utilizan en Samba para ciertas
operaciones, principalmente relacionadas con lo que involucra un Controlador
Primario de dominio (o PDC que significa Primary Domain Controler). Estos grupos
existen de modo predefinido en Samba. Sin embargo, si se ejecuta lo siguiente:
XXXXXXXXXX-514) -> -1
Power Users (S-1-5-32-547) -> -1
Print Operators (S-1-5-32-550) -> -1
Administrators (S-1-5-32-544) -> -1
Account Operators (S-1-5-32-548) -> -1
Domain Users (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-
XXXXXXXXXX-513) -> -1
Backup Operators (S-1-5-32-551) -> -1
Users (S-1-5-32-545) -> -1
Es por tal motivo que si se tiene la intencin de configurar Samba como Controlador
Primario de Dominio y al mismo tiempo poder hacer uso de los grupos del mismo
modo que en Windows, es decir, por mencionar un ejemplo, permitir a ciertos
usuarios pertenecer al grupo de administradores del dominio con privilegios de
administrador, lo primero ser entonces generar los grupos en el sistema ejecutando
como root los siguientes mandatos:
groupadd -r administradores
groupadd -r admins_dominio
groupadd -r duplicadores
groupadd -r invitados
groupadd -r invs_dominio
groupadd -r opers_copias
groupadd -r opers_cuentas
groupadd -r opers_impresion
groupadd -r opers_sistema
groupadd -r usrs_avanzados
groupadd -r usuarios
groupadd -r usuarios_dominio
Una vez creados los grupos en el sistema, solo resta re-asignar los nombres al
espaol en el mapa de grupo de Samba y asociarles a stos los grupos recin
creados en el sistema. El procedimiento se resume a ejecutar algo como lo
siguiente:
Sistemas Operativos Avanzados 143
Lo anterior establece que se modifique el registro del grupo que corresponda al sid
(identidad de sistema) definido con el nombre establecido con ntgroup, asocindolo
al grupo en el servidor con unixgroup y aadiendo un comentario descriptivo acerca
de dicho grupo con comment.
De modo tal, y a fin de facilitar las cosas a quien haga uso de este manual, puede
utilizar el siguiente guin para convertir los nombres al espaol y asociarlos a grupos
en Linux, donde solo deber definir el nmero de identidad del sistema que
corresponda al servidor:
#!/bin/sh
SIDSAMBA=XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX
sid="S-1-5-32-548" unixgroup=opers_cuentas \
comment="Pueden administrar cuentas de usuarios y grupos del
dominio"
exit 0
Nota: Este guin en esta incluido en el disco de Extras de curso de Linux Para Todos. Solo basta editarlo y definir la variable
SIDSAMBA y ejecutarlo como root.
Los usuarios es necesario darlos de alta de modo que queden agregados a los que
correspondan en el sistema a grupos Usuarios y Usuarios del dominio de
Windows, es decir a los grupos usuarios y usuarios_dominio.
cd /home
for user in *
do
mkdir -p /var/lib/samba/profiles/$user
chown $user.$user /var/lib/samba/profiles/$user
done
En algunos casos puede ser necesario denegar el acceso a cierto tipo de ficheros
del sistema. El parmetro veto files se utiliza para especificar la lista, separada por
diagonales, de aquellas cadenas de texto que denegarn el acceso a los ficheros
cuyos nombres contengan estas cadenas. En el siguiente ejemplo, se denegar el
acceso hacia los ficheros cuyos nombres incluyan la palabra Security y los que
tengan extensin o terminen en .tmp:
El parmetro add user script sirve para definir lo que se deber ejecutar en el
trasfondo en el sistema para crear una nueva cuenta de usuario. El parmetro add
machine script es particularmente importante porque es el mandato utilizado para
dar de alta cuentas de mquinas (trust accounts o cuentas de confianza) de modo
automtico. El parmetro delete user script es para definir lo propio para eliminar
usuarios, delete group script para eliminar grupos, add user to group para aadir
usuarios a grupos y set primary group script para establecer un grupo como el
principal para un usuario.
[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
write list = @administradores, @admins_dominio
guest ok = Yes
browseable = Yes
[Profiles]
path = /var/lib/samba/profiles
read only = No
guest ok = Yes
Sistemas Operativos Avanzados 149
Para que Samba inicie automticamente cada vez que inicie el servidor solo ejecute
el siguiente mandato:
/sbin/chkconfig smb on
Smbclient.
Server Comment
--------- -------
mi-servidor Servidor Samba 3.0.7-1.3E en mi-servidor
Workgroup Master
--------- -------
MI-DOMINIO MI-SERVIDOR
Ejemplo:
Para acceder hacia una mquina Windows determine primero que volmenes o
recursos compartidos posee est. utilice el mandato smbclient del siguiente modo:
smbclient -N -L alguna_maquina
Server Comment
--------- -------
mi-servidor Servidor Samba 3.0.7-1.3E en mi-servidor
Workgroup Master
--------- -------
MI-DOMINIO MI-SERVIDOR
Puede aadirse tambin una entrada en /etc/fstab de modo que slo tenga que ser
tecleado mount /punto/de/montaje. Esta lnea sera de modo similar al siguiente:
[FTP]
comment = Programtica libre (RPMS)
path = /var/ftp/pub
public = Yes
guest ok = Yes
Modo grfico
Si utiliza GNOME 2.x o superior, ste incluye un mdulo para Nautilus que permite
acceder hacia los recursos compartidos a travs de Samba sin necesidad de
modificar cosa alguna en el sistema. Solo hay que hacer clic en Servidores de red
en el men de GNOME.
Sistemas Operativos Avanzados 153
Desde Windows.
Por su parte, desde Windows deber ser posible acceder sin problemas hacia
Samba como si fuese hacia cualquier otra mquina con Windows. Vaya, ni Windows
ni el usuario notarn siquiera la diferencia.
Ya que los sistemas con Windows 95/98/ME y Windows XP Home no incluyen una
implementacin completa como miembros de dominio, no se requieren cuentas de
confianza. El procedimiento para unirse al dominio es el siguiente:
Windows NT
Autoevaluacin
1. Qu permite el servicio NFS?
11
SEMANA
SERVIDORES DNS
TEMA
Describir el uso del Sistema de Nombres de Dominio (DNS).
OBJETIVOS ESPECFICOS
Comprender el funcionamiento del Sistema de Nombres de Dominio
CONTENIDOS
Introduccin a DNS
1. SISTEMA DNS
El Sistema de Nombres de Dominio (DNS) se utiliza para buscar equipos y
servicios mediante nombres descriptivos. Cuando un usuario escribe un nombre
DNS en una aplicacin, el servidor DNS puede traducir el nombre a la
informacin asociada con el mismo, como una direccin IP. En la actualidad las
redes son heterogneas (los hosts usan distintos Sistemas Operativos) por lo
que el uso de servidores de nombres es requerido de forma obligatoria ya que los
protocolos usados requieren DNS.
Para las empresas que un nmero mayor de hosts sea considerable, tendr que
administrar su propio servidor de nombres para facilitar la resolucin de nombres
de su red.
ISC Bind se puede instalar tanto en Linux como en Windows 2000/XP/2003, para
el caso especfico de Linux se deben instalar los siguientes paquetes:
bind Una implementacin de los protocolos DNS.
bind-utils Contiene una coleccin de utilidades para consultas DNS a
servidores de nombres para encontrar informacin de hosts de Internet.
caching-nameserver Incluye los archivos de configuracin que hacen al
servidor de nombre DNS ISC BIND named actuar como un simple servidor
de nombre de solo-cach.
system-config-bind Proporciona una interface grafica de usuario (GUI)
para configurar el servidor DNS ISC BIND named.
Zonas de Autoridad.
Permiten al Servidor Maestro o Primario cargar la informacin de una zona. Cada
Zona de Autoridad abarca al menos un dominio y posiblemente sus sub-
dominios, si estos ltimos no son delegados a otras zonas de autoridad.
La informacin de cada Zona de Autoridad es almacenada de forma local en un
fichero en el Servidor DNS. Este fichero puede incluir varios tipos de registros:
Zonas de Reenvo.
Devuelven direcciones IP para las bsquedas hechas para nombres FQDN (Fully
Qualified Domain Name).
nameserver ip_servidor_dns
debian:~# nslookup
> server a.root-servers.net
Default server: a.root-servers.net
Address: 198.41.0.4#53
> set q=ns
> edu.pe.
Server: a.root-servers.net
Address: 198.41.0.4#53
Non-authoritative answer:
*** Can't find edu.pe.: No answer
Non-authoritative answer:
*** Can't find cibertec.edu.pe: No answer
debian:~#
Seleccione el dominio.
Clic en Nuevo.
Autoevaluacin
12
SEMANA
SERVIDOR DHCP
TEMA
Entender e implementar el servidor DHCP
OBJETIVOS ESPECFICOS
Comprender el funcionamiento del servidor DHCP
CONTENIDOS
Introduccin
1. Introduccin.
DHCP (acrnimo de Dynamic Host Configuration Protocol que se traduce
Protocolo de configuracin dinmica de servidores) es un protocolo que permite a
dispositivos individuales en una red de direcciones IP obtener su propia
informacin de configuracin de red (direccin IP; mscara de sub-red, puerta de
enlace, etc.) a partir de un servidor DHCP. Su propsito principal es hacer ms
fciles de administrar las redes grandes. DHCP existe desde 1993 como
protocolo estndar y se describe a detalle en el RFC 2131.
Sin la ayuda de un servidor DHCP, tendran que configurarse de forma manual
cada direccin IP de cada anfitrin que pertenezca a una Red de rea Local. Si
un anfitrin se traslada hacia otra ubicacin donde existe otra Red de rea Local,
se tendr que configurar otra direccin IP diferente para poder unirse a esta
nueva Red de rea Local. Un servidor DHCP entonces supervisa y distribuye las
direcciones IP de una Red de rea Local asignando una direccin IP a cada
anfitrin que se una a la Red de rea Local. Cuando, por mencionar un ejemplo,
una computadora porttil se configura para utilizar DHCP, a sta le ser asignada
una direccin IP y otros parmetros de red necesarios para unirse a cada Red de
rea Local donde se localice.
Se requiere instalar el paquete dhcp el cual deber estar incluido en los discos de
instalacin de la mayora de las distribuciones.
Si se utiliza Red Hat Enterprise Linux, solo bastar realizar lo siguiente para
instalar o actualizar la programtica necesaria:
up2date -i dhcp
Considerando como ejemplo que se tiene una red local con las siguientes
caractersticas:
ddns-update-style interim;
ignore client-updates;
shared-network miredlocal {
Una buena medida de seguridad es hacer que el servicio de dhcpd solo funcione
a travs de la interfaz de red utilizada por la LAN, esto en el caso de tener
mltiples dispositivos de red. Edite el fichero /etc/sysconfig/dhcpd y agregue
como argumento del parmetro DHCPDARGS el valor eth0, eth1, eth2, etc., o lo
que corresponda. Ejemplo, considerando que eth0 es la interfaz correspondiente
a la LAN:
Para hacer que los cambios hechos a la configuracin surtan efecto, ejecute:
/sbin/chkconfig dhcpd on
Hecho lo anterior solo bastar con configurar como interfaces DHCP las
estaciones de trabajo que sean necesarias sin importar que sistema operativo
utilicen.
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
Tambin hay que comentar la lnea GATEWAY=...
en el fichero /etc/sysconfig/network
5. Archivo de registro
En el servidor DHCP podemos apreciar la concesin de la direccin IP al equipo
cliente DHCP ejecutando el siguiente comando:
tail f /var/log/messages
Autoevaluacin
1. El archivo /var/log/secure muestra conexiones repetidas al puerto TCP 53.
Cul es el nombre del servicio que esta siendo accedido?
Sistemas Operativos Avanzados 187
13
SEMANA
SERVIDOR WEB
TEMA
Describir el uso del Servidor HTTP Apache.
OBJETIVOS ESPECFICOS
Comprender el funcionamiento del Servidor HTTP Apache.
CONTENIDOS
Introduccin
5. INTRODUCCIN
El Servidor HTTP Apache es un servidor Web de tecnologa Open Source slido
y para uso comercial desarrollado por la Apache Software Foundation,
actualmente el proyecto se encuentra en la versin 2.2.4.
Para realizar los respectivos cambios utilizar cualquier editor de textos (vi,
emacs, etc.)
Este archivo es bastante extenso, por este motivo est dividido en tres secciones
principales:
Section 1: Global Environment
Section 2: Main Server Configuration
Section 3: Virtual Hosts
Con un editor de textos crearemos nuestra propia pgina web, por ejemplo:
vi /var/www/html/index.html
<html>
<body>
<p align=center><font size=8>Funciona!!!</font></p>
</body>
</html>
Ejercicio 1:
Crear una segunda pgina web en el directorio /var/www/html/datos/ y probar el
acceso.
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
4. Virtual Hosts
El trmino Hosts Virtuales se refiere al hecho de mantener ms de un servidor en
una misma mquina, diferenciando se nicamente por su nombre de dominio.
Por ejemplo: www.cibertec.com.pe y www.cibertec.org.pe con la misma direccin
IP.
Paso 3. Con un editor de textos crearemos nuestra propia pgina web, por
ejemplo: vi /var/www/html1/index.html
<html>
<body>
<p align=center><font size=8>Funciona Host Virtual!!!</font></p>
</body>
</html>
Ejercicio 2:
Crear una segunda pgina web en el directorio /var/www/html2 y probar el
acceso.
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
Sistemas Operativos Avanzados 197
Autoevaluacin
2. El archivo /var/log/secure muestra conexiones repetidas al puerto TCP 53.
Cul es el nombre del servicio que esta siendo accedido?
(a) imap
(b) smbd
(c) domain
(d) pop3
14
SEMANA
SERVIDOR DE CORREO
TEMA
Describir e implementar el uso de de un servidor de correo
OBJETIVOS ESPECFICOS
Comprender el funcionamiento de un servidor.
CONTENIDOS
Introduccin
Funcionamiento
Configuracin
Sistemas Operativos Avanzados 199
1. INTRODUCCIN
Los servidores de Correos estn basados en una estructura Cliente/Servidor y
consta de:
Los Agentes de Transporte o MTA (Mail Transport Agent), que son los
encargados de transferir los mensajes a su correcto destino. Evolution,
Mozilla Mail, Thunderbird, y Mutt, son usados para leer y redactar mensajes.
Los Agentes de Usuario o MUA (Mail User Agent) que tienen como propsito
el aislar al usuario de los Agentes de Transporte. Sendmail, Postfix, y Exim
son los MTAs proporcionados por CentOS.
2. INSTALACIN
Para tener funcionando el servidor de Correos se deben instalar los siguientes
paquetes:
postfix MTA (Mail Transport Agent). Servidor SMTP.
dovecot Servidor IMAP/POP3.
3. CONFIGURACIN
/etc/postfix/main.cf
Es el archivo principal, donde reside el corazn del funcionamiento de
Postfix. No tiene una estructura concreta, por lo que se recomienda
analizar con mayor detalle las directivas segn sus propias
necesidades.
Paso 3. Desde el cliente de correo haga clic en Comprobar correo en, luego
podremos ver en el archivo de registro las transacciones del servidor
POP3.
tail f /var/log/maillog
5. RESTRICCIONES
Para evitar que nuestro servidor de correos sea usado para hacer SPAM o sea
usado como Open Relay tenemos las siguientes restricciones:
smtpd_sender_restrictions = hash:/etc/postfix/access,
permit_mynetworks,
reject_unknown_address
Las listas de control de acceso (ACL), son las direcciones de e-mail que NO
pueden enviar correo a nuestro servidor. Contenido del archivo
/etc/postfix/access:
juan@yahoo.com REJECT
techmail.com REJECT
Parmetro que restringe desde que clientes este sistema acepta conexiones
SMTP. Las listas de bloqueo son unas listas de IP de servidores que
supuestamente envan spam. Entre las listas ms usadas se encuentran las
RBL de mail-abuse.org o las SBL de spamhaus.org.
smtpd_client_restrictions = hash:/etc/postfix/access,
reject_maps_rbl
maps_rbl_domains = rbl.maps.vix.com,
relays.orbd.org,
sbl.spamhaus.org
Sistemas Operativos Avanzados 207
smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks,
reject_invalid_hostname,
reject_unknown_hostname,
reject_non_fqdn_hostname
smtpd_recipient_restrictions = permit_mynetworks,
reject_unauth_destination,
reject_rbl_client relays.orbd.org,
reject_rbl_client list.dsbl.org,
reject_rbl_client sbl-xbl.spamhaus.org
6. COMANDOS
6.1. postqueue
Sintaxis:
postqueue -f
postqueue -p
Donde:
-f Intenta entregar todos los mensajes que se encuentran en la
cola de mensajes.
-p Lista los mensajes que se encuentran en la cola de mensajes.
6.2. postsuper
Sintaxis:
postsuper d id_cola
postsuper h id_cola
postsuper H id_cola
Donde:
-d Borra un mensaje que se encuentra en la cola Postfix.
Especifique d ALL para borrar todos los mensajes.
-h Mueve un mensaje a la cola hold. Especifique h ALL para
mover todos los mensajes.
-H Mueve un mensaje de la cola hold a la cola deferred.
Especifique H ALL para mover todos los mensajes.
Sistemas Operativos Avanzados 209
6.3. postconf
Autoevaluacin