Está en la página 1de 216

Sistemas

Operativos Abiertos














2

CARRERA DE REDES Y COMUNICACIONES CIBERTEC








La Disciplina tarde o
temprano vencer a la
inteligencia y si no hay
disciplina es fcil que la
pobreza te alcance.








SI STEMAS OPERATI VOS ABI ERTOS 3

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
ndice


Presentacin 7
Red de contenidos 8

Unidad de Aprendizaje 1
INTRODUCCIN AL SOFTWARE LIBRE
1.1 TEMA 1 : Introduccin al Sistema Operativo Linux 9
1.1.1. GNU/Linux 9
1.1.2. Sistema Operativo 10
1.1.3. Distribucin 11
1.1.4. Software Libre 12
1.1.5. Claves de xito del Software Libre 13
1.1.6. Escritorio grfico GNU/Linux 13
1.1.7. Requerimientos del Sistema 19
1.1.8. El estndar de jerarqua de archivos (FHS) 19
1.1.9. Particiones recomendadas para instalar CentOs 19

Unidad de Aprendizaje 2
COMANDOS BSICOS Y CONFIGURACIN DE RED
2.1.Informacin del Sistema 27
2.1.1. Arch 27
2.1.2. Uname (parmetros) 27
2.1.3 /proc/cpuinfo 27
2.1.4 /proc/meminfo 28
2.1.5 /proc/swaps 29
2.1.6 /proc/mounts 30
2.1.7 date 30
2.1.8 w 31
2.1.9 dfh 31
2.1.10 ps xa 31
2.1.11 mk dir 32
2.1.12 touch 32
2.1.13 cd 33
2.1.14 cp 33
2.1.15 mv 34
2.1.16 rm 34
2.1.17 ls 34
2.1.18 find 35
2.1.19 update db 36
2.1.20 mount 36
2.2. Comprensin de Archivos 38
2.2.1 Tar 38
2.2.2 Zip 39
2.2.3 Configuracin de interfaces de red 39
2.2.4 Configuracin del archivo /etc/hosts 40
2.2.5 Configuracin del archivo /etc/resolv.conf 40
2.2.6 Configuracin del archivo /etc/resolv.conf 40
2.2.7 Configuracin de la interfaz de red 41




4

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Unidad de Aprendizaje 3
ADMINISTRACIN DE USUARIOS Y GRUPOS
3.1. Introduccin 45
3.1.1. Herramientas de administracin de usuarios y grupos 45
3.1.2. Usuarios despus de una instalacin comu n 47
3.1.3 Grupos despus de una instalacin comn 48
3.1.4 Grupos de usuario privado 49
3.1.5 Contraseas Shadow 49
3.1.6 Ejemplos 50

Unidad de Aprendizaje 4
PROCESO DE ARRANQUE EN LINUX
4.1. Proceso de Arranque, inicio y cierre del Sistema 59
4.1.1. Proceso de arranque 59
4.2. Vista detallada del proceso de arranque 60
4.2.1. La BIOS 60
4.2.2 El gestor de arranque 60
4.2.3 El Kernel 61
4.2.4 Programa /sbin/init 62
4.2.5 Ejecutar programas adicionales en el momento de arranque 63
4.2.6 Niveles de ejecucin de SysV Init 63
4.2.7 Niveles de ejecucin 63
4.2.8 Utilidades de los niveles de ejecucin 64
4.2.9 Apagar 65
4.2.10 El gestor de arranque GRUB 65

Unidad de Aprendizaje 5
FILESYSTEMS EN LINUX
5.1. Particiones 75
5.1.1 Conceptos bsicos 75
5.1.2 Herramientas para la administracin 75
5.2 Creacin de Particiones en Linux 82
5.2.1. El comando para crear particiones es fdisk 83
5.3. Otras herramientas 85
5.4. Creacin de los sistemas de ficheros 85
5.4.1. Particin de intercambio 86
5.5. Montado de los sistemas de ficheros 86
5.6. Chequeo del sistema de ficheros 89
5.7 Otras utilidades 89
5.8 Permisos Linux 90
5.9 Comandos Relacionados 92
5.9.1. Cambio de permisos utilizando taquigrafa de caracteres 93
5.9.2. Cambio de permisos utilizando nmeros 94

Unidad de Aprendizaje 6
INSTALACIN DE APLICACIONES EN LINUX
6.1. RPM (RedHat Package Manager) 103
6.1.1. Visin general 103
6.1.2 Informacin general 104
6.2. Usando RPM 104
6.3. Manejo de RPM 106
6.4. Compilar aplicaciones en Linux 108
6.5. Actualizar Sistema 111
6.6 Bsquedas 112
6.7. Consulta de informacin 112
6.8 Instalacin de paquetes 113
SI STEMAS OPERATI VOS ABI ERTOS 5

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
6.9. Desinstalacin de paquetes 114
6.10 Listado de paquetes 114
6.11 Limpieza del sistema 114

Unidad de Aprendizaje 7
ANLISIS DE ARCHIVOS DE REGISTRO DEL SISTEMA LINUX
7.1. Archivos de registro 119
7.2. Ubicacin de los archivos de registro 119
7.3. Visualizacin de los archivos de registro 120
7.4. Demonio Syslogd 121
7.5. Quotas de disco en Linux 123
7.6. Comprobaciones 126

Unidad de Aprendizaje 8
SERVIDOR NFS y SAMBA

8.1. Servicio NFS Introduccin 130
8.2. Funcionamiento 130
8.3 Servicios requeridos 131
8.4 Iniciar y detener NFS 132
8.5 Configuracin del Servidor NFS 133
8.6. Archivos de configuracin de clientes NFS 136
8.7. Servicio Samba Introduccin 137
8.8. Configuracin bsica de Samba 138
8.9. Alta de cuentas de usuario 138
8.10. El fichero IMHosts 139
8.11. Configuracin del Servidor Samba 139
8.11.1 Parmetros principales del servidor Samba 139
8.11.2 Parmetros tiles para la seguridad 140
8.11.3 Impresoras en Samba 140
8.11.4 Compartiendo directorios a travs de Samba 141
8.11.5 Configuracin avanzada en Samba 142
8.11.6 Re-asignacin de grupos de Windows en Samba 143
8.12. Parmetros de configuracin avanzada en el fichero smb.conf 147
8.13. Iniciar el servicio y aadirlo al arranque del sistema 150
8.14. Accediendo hacia Samba 150

Unidad de Aprendizaje 9
SERVIDORES DNS

9.1. Sistema DNS 159
9.2. Instalacin del Servidor DNS 160
9.3. Tipos de Servidores DNS 161
9.4. Configuracin del servidor DNS 164
9.5 Consultas a los servidores DNS 171
9.6 Configuracin del servidor DNS primario 173

Unidad de Aprendizaje 10
SERVIDOR DHCP

10.1. Introduccin 185
10.2. Configuracin de un servidor DHCP en Linux 186
10.3. DHCP Fichero de configuracin 186
10.4. Configuracin de un cliente DHCP 188
10.5. Archivo de Registro 188





6

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Unidad de Aprendizaje 11
SERVIDOR WEB
11.1. Introduccin 193
11.2. Instalacin del Servidor Http Apache 193
11.3. Configuracin del Servidor Http Apache 195
11.4. Pgina Web predeterminada 196
11.5. Archivos de registro 197
11.6. Virtual Hosts 199
11.7. Configuracin de los Hosts virtuales 199

Unidad de Aprendizaje 12
SERVIDOR DE CORREO

12.1. Introduccin 205
12.2. Instalacin 205
12.3. Configuracin 205
12.4. Restricciones 212
12.5. Comandos 213

Exmenes Finales.

BIBLIOGRAFIA : Bibliografa digital 216
SI STEMAS OPERATI VOS ABI ERTOS 7

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Presentacin
El curso Sistemas Operativos Avanzados (Linux) muestra como primera parte temas de
introduccin al sistema operativo Linux, con el cual se va tomar una primera visin de este
maravilloso sistema operativo, para luego entrara mas en detalle el tema de la
administracin de este.


La segunda parte se enfoca en la configuracin de Servidores de Internet: Servidor Samba,
Servidor NFS, Servidor DNS, Servidor DHCP, Servidor Web, Servidor de Correo. La
instalacin y configuracin de estos servidores se realizara modificando sus archivos de
configuracin correspondientes, de tal manera que el participante podr realizar sus propias
experiencias sin importar la Distribucin Linux a usar, sin embargo la distribucin utilizada
para la explicacin del presente curso ser CentOS6, shell y entornos de escritorio KDE,
Gnome y aplicaciones.

La seguridad de la red TCP/IP se deja para un curso posterior.


8

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Red de Contenidos
SI STEMAS OPERATI VOS ABI ERTOS 9

CIBERTEC CARRERA DE REDES Y COMUNICACIONES











INTRODUCCIN AL SOFTWARE
LIBRE


TEMA
Aspectos Generales GNU/Linux


OBJETIVOS ESPECFICOS
Conocer las caractersticas GNU/Linux
Conocer las claves del xitos del software libre
Identificar los tipos de particiones LINUX


CONTENIDOS
GNU/LINUX
Sistema Operativo
Distribuciones
Software Libre
Claves del xito de Software Libre
Escritorios Graficos en Linux
Requerimientos del Sistema
El Estandar de jerarquia de archivos (FHS)
Particiones recomendadas para instalar CentOS
UNIDAD
1
10

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 11

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
1.1. INTRODUCCION AL SISTEMA OPERATIVO LINUX

1.1.1. GNU/Linux

Linux es un sistema operativo tipo Unix que se distribuye bajo Licencia GPL. Es un sistema
operativo idneo para utilizar en redes, como es el caso de servidores, estaciones de
trabajo, y tambin para computadores personales 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.



GNU/LINUX = KERNEL + SHELL + APLICACIONES


GNU/Linux, es equipamiento lgico libre o software libre. Esto significa que el usuario
tiene la libertad de redistribuir y modificar de acuerdo a necesidades, siempre que se
incluya el cdigo fuente.

Licencia GPL, la Licencia Pblica General de GNU o ms conocida por su acrnimo en
ingls (General Public License), esta es una licencia creada por la Free Software. Est
orientada principalmente a proteger la libre distribucin, modificacin y uso de software..
Pretende garantizar su libertad de compartir y modificar el software "libre", esto es para
asegurar que el software es libre para todos sus usuarios. Algunos otros programas de
software de la Free Software Foundation estn cubiertos por la "LGPL (Licencia pblica
general reducida), la cual puede aplicar a sus programas tambin.

Copyleft, el copyleft se practica al ejercer el derecho de autor que consiste en permitir la
libre distribucin de copias y versiones modificadas de una obra u otro
trabajo, exigiendo que los mismos derechos sean preservados en las
versiones modificadas.




12

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


1.1.2 Sistema Operativo

Un sistema operativo (SO) es aquel programa o software encargado de administrar y
gestionar los recursos disponibles de un ordenador a nivel de hardware y proporciona el
correcto ambiente para que el usuario pueda ejecutar programas. Su funcin principal es
la de darnos las herramientas necesarias para poder controlar nuestra computadora y
poder hacer uso de ella. No son de uso exclusivo de las computadoras sino que tambin
se utilizan para poder controlar e interaccionar con los telfonos celulares, tablets,
routers, reproductores de DVD, consolas de videojuegos, smart card, cajeros ATM, etc.
.


S.O. = intermediario entre los recursos HW, el usuario y las aplicaciones.

Funciones Principales:
Administracin del procesador: el sistema operativo proporciona los recursos
necesarios del procesador entre las aplicaciones ejecutadas para que estas se
ejecuten correctamente mediante un algoritmo de programacin.
Gestin de la memoria: al igual que en el anterior punto, el sistema operativo se
encarga de gestionar la memoria ram disponible en nuestra computadora para que
las aplicaciones puedan ser ejecutadas.
Gestin de operaciones de entradas y salidas (inputs/outputs): el sistema
operativo permite administrar los perifricos a travs de los drivers.
Gestin de Aplicaciones: el sistema operativo como ya lo mencionamos asigna los
recursos necesarios para que estas se ejecuten correctamente, ademas permite
matar los procesos necesarios si en el algn momento una aplicacin falla.
Administracin de autorizaciones: el sistema operativo se encarga de gestionar y
administrar las autorizaciones garantizando que solo los usuarios y las aplicaciones
que tienen la autorizacin puedan ejecutarlas.
Gestin de archivos: el sistema operativo gestiona la lectura y escritura en el
sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y
usuarios.
Administracin de utilerias y soporte: el sistema operativo proporciona
informacin con algunos indicadores que pueden ser utilizados para diagnosticar el
funcionamiento correcto del equipo.

SI STEMAS OPERATI VOS ABI ERTOS 13

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
1.1.3 Distribuciones

Una distribucin GNU/Linux (coloquialmente llamada distro) es una distribucin de
software basada en el ncleo Linux que incluye determinados paquetes de software para
satisfacer las necesidades de un grupo especfico de usuarios, dando as origen a ediciones
domsticas, empresariales y para servidores. Por lo general estn compuestas, total o
mayoritariamente, de software libre, aunque a menudo incorporan aplicaciones o
controladores propietarios.

Distros ms importantes del mundo GNU/Linux

a) Componentes
El conjunto tpico de una distribucin Linux contiene un ncleo, herramientas y
bibliotecas, software adicional, documentacin, un sistema de ventanas, un
administrador de ventanas y un entorno de escritorio, este suele ser GNOME o KDE.
Gran parte del software incluido es de fuente abierta o software libre y distribuido por
sus desarrolladores tanto en binario compilado como en forma de cdigo fuente,
permitiendo a sus usuarios modificar o compilar el cdigo fuente original si lo desean.
Muchas distribuciones incorporan software privativo, no disponible en forma de cdigo
fuente.

b) Distribuciones independientes como Gentoo Linux, T2 y Linux
From Scratch proveen el cdigo fuente de todo el software y solo
incluyen los binarios del ncleo, herramientas de compilacin y de
un instalador; el instalador compila todo el software para el CPU
especfico de la PC del usuario.

c) Gestin de paquetes
Las distribuciones estn divididas en paquetes. Cada paquete
contiene una aplicacin especfica o un servicio. Ejemplos de paquetes son una
biblioteca para manejar el formato de imagen PNG, una coleccin de tipografas o un
navegador web. El paquete es generalmente distribuido en su versin compilada y la
instalacin y desinstalacin de los paquetes es controlada por un sistema de gestin
de paquetes en lugar de un simple gestor de archivos.

Cada paquete elaborado para ese sistema de paquetes contiene meta-informacin tal
como fecha de creacin, descripcin del paquete y sus dependencias. El sistema de
paquetes analiza esta informacin para permitir la bsqueda de paquetes, actualizar las
libreras y aplicaciones instaladas, revisar que todas las dependencias se cumplan y
obtenerlas si no se cuenta con ellas de manera automtica.

d) Sistemas de paquetes ms usados son:
RPM, creado por Red Hat y usado por un gran nmero de distribuciones de Linux, es el
formato de paquetes del Linux Standard Base. Originalmente introducido por Red Hat,
pero ahora se usa en muchas distribuciones, como por ejemplo Mandriva.


14

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Deb, paquetes Debian, originalmente introducidos por Debian, pero tambin utilizados
por otros como Knoppix y Ubuntu.
.tgz, usado por Slackware, empaqueta el software usando tar y gzip. Pero, adems, hay
algunas herramientas de ms alto nivel para tratar con este formato: slapt-get, slackpkg
y swaret.
Ebuilds, archivo que contiene informacin acerca de cmo obtener, compilar e instalar
un paquete en el sistema Portage de Gentoo Linux con el comando emerge.
Generalmente, estas instalaciones se basan en la compilacin de fuentes, aunque
algunos paquetes binarios se pueden instalar de esta manera.
Pacman, para Arch Linux, usa binarios precompilados distribuidos en un fichero
.pkg.tar.gz .pkg.tar.xz.
PET, utilizado por Puppy Linux, sus derivados y Quirky, su proyecto hermano.

1.1.4 Software Libre

El software libre ha dejado de ser, exclusivamente, un proceso de desarrollo de software a ser
una filosofa. Para comprender este paso debemos relacionar el software libre con el concepto de
LIBERTAD y COOPERACIN. Las libertades se traducen en una serie de derechos que todas
las personas tenemos sobre el software libre.

Cuatro libertades de los usuarios del software libre:

1. La libertad de usar el programa, con cualquier propsito
2. Estudiar el funcionamiento de la aplicacin y adaptarlo a las necesidades
3. Distribuir copias, con lo que puede ayudar a otros.
4. Mejorar el programa y hacer pblicas las mejoras, de modo que toda la comunidad se
beneficie.

Otro de los requisitos fundamentales para considerar a una aplicacin como Software Libre es el
acceso al cdigo fuente de la aplicacin

La palabra que dificulta comprender qu es el software libre, es el precio. Un software privado
puede ser gratis y un software libre puede tener un coste; aunque lo comn es que el software
privado tenga un coste (por ejemplo el Microsoft Office) y un software libre no lo tenga (por
ejemplo el Libre Office).
Diferencia entre Software Libre y Open Source
Software Libre se centra en el concepto de las libertades otorgadas a quienes reciben el
programa. Open Source se centra en la mayor eficiencia del proceso productivo y en beneficio al
desarrollador.


SI STEMAS OPERATI VOS ABI ERTOS 15

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
1.1.5 Claves de xito del Software Libre

Hay que analizarlo desde diversos puntos de vista.

a) Desde el punto de vista de lo programadores.
Programar en software libre exige unos conocimientos informticos similares a la
programacin de cualquier sistema propietario. La diferencia est en que un software
libre que tenga aceptacin, est continuamente mejorndose por los propios usuarios; si
el software tiene mucho xito, como el caso del moodle en entornos de formacin,
entonces muchas personas solicitarn que los cambios realizados en el software sean
distribuidos de forma oficial para todo el mundo. Esta situacin hace que los creadores
del software tengan que elegir entre cientos de mejoras. Por otra parte, al software libre
se puede adaptar a cada organizacin; por tanto es ms fcil a un programador modificar
un software libre que crear una nueva aplicacin para su organizacin.

b) Desde el punto de vista institucional y social.
El software trabaja con informacin y la informacin es estratgica para las
organizaciones. Si el software es propietario dependes de las condiciones que imponga
esa empresa para utilizar el software; si esas condiciones no te gustan tendrs que
utilizar otro software, pero antes tendrs que valorar el coste de cambiar toda la
informacin al nuevo software. Si la empresa que propietaria del software es un
monopolio, la situacin es de total dependencia de los propietarios del software; es decir,
la informacin de tu organizacin estara en manos de la empresa del software.
Precisamente el software libre evita esa dependencia del software, ya que el software es
tuyo, puedes cambiarlo, modificarlo, etc. Aunque el software seguir siendo libre la
informacin continua estando en manos de la organizacin. Son muchas las
organizaciones (Administraciones locales, regionales y naciones, instituciones pblicas,
empresas, universidades,) que han decidido que solo utilizaran software libre.

c) Desde el punto de vista de las empresas de servicios. Una empresa de servicio
ofrece un servicio informtico, pero no tiene por que ser la propietaria del software. Para
las empresas de servicio la oportunidad del softw libre es que no tienen costes de
licencias. Este tipo de empresas no cobran el software pero si cobran el servicio
(instalacin, mantenimiento, atencin a los usuarios, formacin, ). Estas empresas
deben conocer las distintas aplicaciones de software libre que existen en el mundo que
sirvan para dar el servicio que ofrecen.

d) Desde el punto de vista del usuario individual. Un estudiante o una persona que
desee tener en su ordenador una serie de programas (ofimtica, reproductores,
organizadores y cualquier otro tipo de programa) tendra que gastarse una cantidad de
dinero considerable (a veces muy alta). Cuando no se tiene ese dinero, o no se desea
gastarlo, se suele recurrir a las copias piratas. Est copias son fcilmente accesibles,
pero lo cierto es que se est cometiendo un delito. El software libre es igual o mejor que
otro software propietario, as pues, podemos tener de forma legal todo tipo de
aplicaciones. Adems usando software libre favorecemos que cada vez ms personas
contribuyan a mejorar el software existente


1.1.6 Escritorio Grfico GNU/Linux

El escritorio es el entorno visual que se encarga de interactuar entre el kernel de Linux y los
programas, siendo vital para el usuario. Cuando te instales el sistema operativo, este te
vendr con un escritorio preinstalado, pero posteriormente puedes instalar t otro distinto y
elegir qu escritorio quieres usar cada vez en el men de inicio de sesin. Segn el
16

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

ordenador que tengas y el uso que le quieras dar te convendr usar un escritorio
determinado.



KDE (KDesktop Environment) se trata de un entorno de escritorio creado en 1996 por
Mathias Ettrich para diferentes versiones del sistema UNIX. El objetivo al crear este entorno
fue el tener algo que permitiese a los usuarios no solo mirar lneas de ordenes e interactuar
de forma grfica con todos los componentes del sistema. De la misma manera, se pretenda
que esta, fuera una herramienta fcil de usar. Se basa en el la biblioteca grfica Qt y
actualmente est traducido en ms de 108 idiomas.

Este entorno se basa en la personalizacin, y de la misma manera que GNOME
prcticamente cualquier aspecto puede ser configurado por el usuario de la manera que l
quiera. Actualmente la ltima versin estable es la 4.7 y tiene como elemento central en su
diseo a Plasma. Esta herramienta se crea con el objetivo de combinar el panel Kicker,
KDesktop y el gestor de widgets, en un nico elemento.

Este es un escritorio diseado adems para ser bonito y eso conlleva que tenga mayor
consumo de recursos que GNOME. Tambin es cierto que el mayor consumo de recursos
no es exagerado, aunque si sensiblemente superior siendo ms pronunciado en la carga del
escritorio. Donde ms evidente se nota esta diferencia es en equipos con los recursos ms
ajustados.

KDE es posiblemente el mejor escritorio para Linux, o al menos el ms completo. En
contraposicin a Gnome, KDE est enfocado a que lo puedas personalizar lo mximo
posible, con infinidad de opciones para su configuracin. La ultima versin del escritorio,
KDE 4, es especialmente llamativa ya que incluye un aspecto visual sorprendente, integra
sus propios efectos visuales (o sea, que no hay necesidad de usar Compiz), incluye un
SI STEMAS OPERATI VOS ABI ERTOS 17

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
completo sistema de widgets para el escritorio, un navegador de archivos que permite
realizar casi cualquier cosa y un panel de control completsimo.


Ofrece infinidad de posibilidades y es completamente personalizable a tu estilo. Algunas
distribuciones que incluyen KDE son: Kubuntu, Mepis, Debian, Fedora, Mandriva, openSuse,
Slackware, Xandros.

En otras distribuciones como Ubuntu, puedes instalar KDE desde el Software Center
marcando "Kubuntu Plasma Desktop system", o tambin se puede hacer lo mismo abriendo
un gestor de paquetes (por ejemplo, Synaptic) e instalando el paquete "KDE Plasma
Desktop". Despus de instalado, para usarlo slo tienes que iniciar sesin marcando KDE
como escritorio predeterminado al elegir la cuenta de usuario.

Una curiosidad: KDE significa K Desktop Environment, y la K no significa nada, simplemente
escogieron esa letra porque era la anterior a la L de Linux

KDE
GNOME
Este entorno de escritorio es uno de los ms conocidos que no solo est presente en Linux.
Tambin se puede encontrar en otros sistemas Unix como BSD y Solaris. Gnome (GNU
Network Object Model Environment) tuvo su origen en los mejicanos Miguel de Icaza y
Federico Mena en 1999, estando traducido actualmente en ms de 166 idiomas.

El objetivo de este entorno es crear un sistema de escritorio para el usuario final que sea
completo, libre y fcil de usar. Usa las bibliotecas grficas GTK y est bajo licencia
GPL. Una caracterstica bastante til aunque comn a prcticamente cualquier entorno, es
el poder usar varios espacios de trabajo, cada uno con un escritorio independiente de los
dems. El hecho de pasar aplicaciones entre escritorios es tan simple como arrastrar con el
ratn la ventana de dicha aplicacin a otro escritorio.

18

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Gnome clsico viene instalado o permite ser instalado fcilmente en muchas distribuciones
Linux, como por ejemplo Ubuntu, Gentoo o gOS. Otras distribuciones optan por dejarte
elegir qu escritorio quieres usar (generalmente KDE o Gnome), por ejemplo Debian,
Mandriva, openSuse, Foresight o Fedora.
Gnome se actualiz a su versin 3.0 teniendo numerosos cambios, aunque el cambio que
ha destacado sobre el resto, es la inclusin de GNOME Shell, en detrimento del GNOME
Panel. Esto ha creado bastante controversia ya que los usuarios no pueden utilizar Compiz
mientras GNOME Shell se est ejecutando.

Nada ms instalarlo tendremos arriba a la izquierda el men principal que nos dar acceso a
las Aplicaciones instaladas, a Lugares comunes (carpeta de usuario, red, papelera, discos
duros, documentos recientes, buscar archivos...) y por ltimo aparece el men Sistema, con
las opciones de configuracin, personalizacin y apagado del equipo. De forma
predeterminada aparecen 2 paneles (o barras) en el escritorio, uno abajo con la lista de
ventanas abiertas y los escritorios virtuales y otro panel arriba con los mens, accesos
directos, reloj e iconos del sistema.

UNITY
Unity es un entorno de escritorio desarrollado en Junio de 2010 por Canonical para Ubuntu.
Su primer lanzamiento se pudo ver en la versin 10.10 de Ubuntu Netbook Remix, con el
objetivo de optimizar el espacio de las pantallas de los netbooks. Despus de esto, en
octubre de ese mismo ao, se anunci que Unity se utilizara en la versin de escritorio de
Ubuntu.
Los elementos que tiene Unity son un lanzador a la izquierda que sirve como lugar donde se
encuentran los accesos directos de las aplicaciones, un contenido central llamado Lugares
que muestra todos los archivos y aplicaciones de usuario, adems de ofrecer un buscador
de categoras y aplicaciones.
Y ya lo hemos visto con el lanzamiento de Ubuntu 11.04 como el escritorio por defecto era
este, creando bastante descontento entre buena parte de los usuarios de Ubuntu. No en
vano circulan numerosos tutoriales en la red que ayudan a quitar este entorno y volver al
antiguo GNOME.
SI STEMAS OPERATI VOS ABI ERTOS 19

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Unity
XFCE
Este es un entorno de escritorio muy ligero para sistemas Unix. Segn palabras de su
creador Olivier Fourdan, XFCE (XForms Common Environment) est diseado para la
productividad, las apliacciones se cargan y se ejecutan rpidamente, mientras se conserva
recursos del sistema. Creado en 1996, est basado en la biblioteca GTK y utiliza el gestor
de ventanas Xfwm.
XFCE es un entorno muy ligero, y resulta ideal para equipos como menos recursos ya
que el no ser un entorno visualmente tan potente como pueden ser los anteriores, hace que
no consuma tantos recursos. Tambin hay que apuntar que el no ser tan potente
visualmente no le impide que pueda ser muy personalizable, pudiendo cambiar temas de
ventana, fondos de escritorio, protectores de pantalla, tipos de letras o cualquier aspecto
visual del mismo.


20

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

XFCE
LXDE
De la misma manera que los anteriores, este entorno est disponible para varios sistemas
Unix. LXDE (Lightweight X11 Desktop Environment) pretende ser como su propio nombre
indica un entorno de escritorio X11 ligero. Utiliza Openbox como gestor de ventanas
predeterminado.
Los componentes de LXDE son independientes, a diferencia de otros entornos de escritorio,
lo que hace que tengan muy pocas dependencias. Y como entorno ligero que es, est
diseado especialmente para equipos con escasos recursos como netbooks o
ordenadores antiguos.


LXDE
Cul es el mejor Escritorio GNU/Linux?

Dentro de lo subjetiva que pueda ser la respuesta, hay que tener en cuenta algo
fundamental como son los recursos del equipo. Por lo que si tenemos un equipo antiguo
o queremos instalar alguna distribucin de Linux en una mquina virtual en la cual no
queremos cederle demasiados recursos, lo ideal sera buscar entornos ligeros como puede
ser el caso de XFCE o LXDE.

En caso contrario que tengamos un equipo sin tantas lmitaciones, y queramos permitirnos
algn lujo visual podemos pasar a otra categora entornos como GNOME o KDE.

En el primer caso de XFCE o LXDE, se puede decir que ambos tienen una buena
integracin con GTK diferencindose en el gestor de ventanas. Hay gente que dice que
Openbox (gestor de ventanas de LXDE), es algo ms ligero que Xfwm (el de XFCE), pero yo
no he notado ninguna diferencia. Visualmente LXDE es ms bonito, pero como opinin
personal, cada uno tiene la suya y habr gente que le guste ms el aspecto de XFCE.

En el segundo caso el elegir uno u otro es influido casi dira que por sensaciones
personales. Me explico. Cuando empec en Linux har unos 7 aos, fue porque un amigo
me dej una versin de Mandrake (que posteriormente pas a llamarse Mandriva). Ah tuve
mi primer contacto con KDE y el hecho de acostumbrarme a l, hizo que despus en el resto
de distribuciones que prob (Debian, Suse, Fedora y Kubuntu) estuviera presente KDE. Me
pareca mucho ms chulo que el soseras de
SI STEMAS OPERATI VOS ABI ERTOS 21

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

1.1.7 Requerimientos del sistema

Se debe contar con la suficiente cantidad de memoria y un microprocesador en buen estado.
Con casi cualquier distribucion comercial de Linux, el ambiente grafico necesitara al menos
640 MB RAM y 1 GB de espacio libre en disco duro para la instalacion minima. Para contar
con una cantidad minima de aplicaciones, se requieren al menos 2 GB adicionales de
espacio libre en disco duro, repartido en al menos 3 particiones. Se recomienda como
minimo unmicroprocesador i686 a 1 GHz. Sin ambiente grafico, como es el caso de un servi
dor o bien solamente aplicaciones para modo de texto, se requieren al menos 384 MB RAM
y un microprocesador i686 a 500 MHz seran suficientes.

El servidor de video puede funcionar con solo 128 MB RAM; pero su desempeno ser
extremadamente lento. Algunas aplicaciones para modo grafico pueden necesitar escalar
256MB, 512 MB o 1 GB de RAM adicional.

El minimo recomendado para utilizar GNOME 2.x es de 384MB RAM; se recomiendan 512
MB. El ptimo es de 1 GB RAM. Si desea instalar Linux en una computadora personal con
las suficientes aplicaciones para ser totalmente funcional y productivo y contar con el
espacio necesario para instalar herramientas de oficina (OpenOffice.org), se recomienda
contar con al menos 4 GB de espacio libre en disco, al menos 512 MB RAM y un
microprocesador i686, a cuando menos 1 GHz. El instalador en modo texto de CentOS 6 y
Red Hat Enterprise Linux 6 requiere al menos 384 MB RAM., mientras que el instalador en
modo grafico de estos requeire al menos 640 MB RAM.

1.1.8 El Estandar de Jerarquia de Archivos (FHS)

Define los principales directorios y sus contenidos en GNU/Linux y otros sistemas operativos
similares a Unix. En agosto de 1993 inicio el proceso para desarrollar un estandar de
sistema de archivos jerarquico, como un esfuerzo para reorganizar la estructuras de
archivos y directorios de GNU/Linux. El 14 de Febrero de 1994 se publico el FSSTND
(Filesystem Standard), un estndar de jerarquia de archivos especifico para GNU/Linux.
Revisiones de este se publicaron el 9 de Octubre de 1994 y el 28 de Marzo de 1995.

A principios de 1996, con la ayuda de miembros de la comunidad de desarrolladores de
BSD, se fij como objetivo el desarrollar una version de FSSTND ms detallada y dirigida no
solo hacia Linux sino tambien hacia otros sistemas operativos similares a Unix. Como uno
de los resultados el estandar cambio de nombre a FHS o Filesystem Hierarchy Standard.
El FHS es mantenido por Free Standards Group, una organizacion sin fines de lucro
constituida por companias que manufacturan sustento fisico (Hardware) y equipamiento
logico (Software) como Hewlett Packard, Dell, IBM y Red Hat. La mayoria de las
distribuciones de Linux, inclusive las que forman parte de Free Software Standards, sin
aplicar de forma estricta el estandar.
22

CARRERA DE REDES Y COMUNICACIONES CIBERTEC






Estructura de Directorios

Todos los archivos y directorios aparecen debajo del directorio raiz /, aun si estan
almacenados en dispositivos fisicamente diferentes


SI STEMAS OPERATI VOS ABI ERTOS 23

CIBERTEC CARRERA DE REDES Y COMUNICACIONES




24

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

1.1.9 Particiones recomendadas para instalar CentOS

Para uso general, se recomienda utilizar un diseno de tres particiones:



Los siguientes directorios jamas deberan estar fuera de la particion a /
/etc /bin /deb /lib y /lib64 /media /mnt /proc /root /sbin /sys




SI STEMAS OPERATI VOS ABI ERTOS 25

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Autoevaluacin
Qu representa la simbologa GNU/Linux?


Establece cinco diferencias entre Software Libre y Open Source?

Que otros tipos de licencias existen en software libre y open source

Debate. Crees que es necesario poner restricciones al software libre?, Por qu?

Mencionar Sistemas Operativos para aplicaciones mviles e industriales

Cuales son las otras Distribuciones posicionadas GNU/Linux

Claves del xito de Software Libre
Cual es el mejor Escritorios Graficos en Linux para equipos de recursos limitados y equipos
de ptimos rendimiento
Son las Particiones recomendadas para instalar CentOS
Mencionar los siguientes Sistemas Operativos Representativos y donde tienen mejor
aplicacin como usuario final.
26

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



SI STEMAS OPERATI VOS ABI ERTOS 27

CIBERTEC CARRERA DE REDES Y COMUNICACIONES











COMANDOS BSICOS Y
CONFIGURACIN DE RED


TEMA

Conocer los comandos bsicos para el manejo de Linux


OBJETIVOS ESPECFICOS

Conocer los comandos bsicos del entorno linux
Aprender a modificar los parmetros de red en Linux

CONTENIDOS

Comandos para informacin del sistema
Comandos para manejo de archivos
Comandos para configuracin de red
UNIDAD
2
28

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 29

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
2.1. INFORMACIN DEL SISTEMA

A continuacion daremos una serie de comandos utiles para conocer aspectos generales del
sistema

2.1.1 Arch

Este comando sirve para mostrarnos la arquitectura del procesador de nuestro sistema:



2.1.2 uname [parametros]

La funcin de este comando es similar al anterior, la nica diferencia es que este nos arroja
ms informacin del sistema de acuerdo al nmero de parmetros que le pasemos.Los
parmetros que podemos usar son:
-a: Imprime el 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:



2.1.3 /proc/cpuinfo

Nos muestra la informacion referente al procesador del sistema

Ejemplo:
30

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



2.1.4 /proc/meminfo

Verifica el uso de la memoria
Ejemplo:



2.1.5 /proc/swaps

Nos muestra el uso del espacio en memoria SWAP
Ejemplo:



SI STEMAS OPERATI VOS ABI ERTOS 31

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
2.1.6 /proc/mounts

Nos muestra los sistemas de ficheros que se encuentran montados
Ejemplo:




2.1.7 date

Nos muestra la fecha que tiene registrado el sistema
Ejemplo:



En caso de querer modificar la fecha solo se debe de seguir la siguiente sintaxis:
date [MesDiaHoraMinutoAo.Segundos]
Ejemplo:




32

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

2.1.8 w

Nos indica los usuarios que se encuentran en el sistema asi como lo que hacen en el

Ejemplo:




2.1.9 df h
Nos reporta el uso de espacio en los discos duros

Ejemplo




2.1.10 ps xa

Este comando lista los procesos que se estan ejecutando en el sistema

SI STEMAS OPERATI VOS ABI ERTOS 33

CIBERTEC CARRERA DE REDES Y COMUNICACIONES



2.1.11 mkdir

Este comando sirve para crear una carpeta
Ejemplo:


Tambien puede usarse en conjunto con el parametro p para crear un arbol de carpetas
Ejemplo



2.1.12 touch

Sirve para generar archivos sin contenido
Ejemplo

34

CARRERA DE REDES Y COMUNICACIONES CIBERTEC




2.1.13 cd

Comando que nos permite movernos entre directorios, su sintaxis es:
cd [carpeta donde quiero moverme]
Ejemplo:



para regresar un nivel entre directorios es:




2.1.14 cp

Comando que sirve para copiar archivos o carpetas, su sintaxis es
cp [parametros] [archivo/Directorio] [rutaDestino]

Los parametros son:
-r: Copiadirectorios recursivamente
-v: Muestra el estado de la copia
-f: Forza la copia sin pedirnos confirmacin

Ejemplo 1: Copiando un archivo a una carpeta


Ejemplo 2: Copiando una carpeta a otra carpeta

SI STEMAS OPERATI VOS ABI ERTOS 35

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

2.1.15 mv

Comando que sirve para mover archivos o carpetas, su sintaxis es
mv [parametros][archivo/Directorio] [rutaDestino]
Los parametros son:
-v: Muestra el estado del proceso
-f: Forza el movimiento sin pedirnos confirmacin

Ejemplo 1: Moviendo un archivo a una carpeta


Ejemplo 2: Moviendo un archivo a una carpeta



2.1.16 rm

Comando que sirve para eliminar archivos o carpetas, su sintaxis es
rm [parametros] [archivo/Directorio]

Los parametros son:
-r: Borra directorios recursivamente
-v: Muestra el estado de la borrado
-f: Forza el borrado sin pedirnos confirmacin

Ejemplo 1:


Ejemplo2:



2.1.17 ls

Lista los archivos que contiene una carpeta, su sintaxis es
ls [parametros]
Los parametros son:
-l: Muestra los detalles de archivos y carpetas
36

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

-a: Muestra los archivos o carpetas ocultas

Ejemplo:



2.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


SI STEMAS OPERATI VOS ABI ERTOS 37

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ejemplo 2.
Buscar archivos y carpetas que le pertenezcan al usuario rdelvillar en todo el directorio raiz



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


2.1.19 updatedb

Este comando sirve para actualizar la base de datos de nuestro sistema

2.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.

La manera de usar este comando es la siguiente:
38

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Ejemplo1. Montando un DVD


Ejemplo 2. Montando en CD


Ejemplo 3. Montando un floppy drive



Ejemplo 4.Montando una imagen ISO


Ejemplo 5.Montando un sistema de ficheros de Windows

Ejemplo 6.Montando un sistema de ficheros de Linux

SI STEMAS OPERATI VOS ABI ERTOS 39

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

2.2. COMPRESION DE ARCHIVOS

2.2.1 Tar

El comando tar es utilizado normalmente para empaquetar o desempaquetar archivos.

La sintaxis para el buen uso de este comando es:
[root@localhost ~]# tar [parametros] [fichero1] [fichero2]

Los parametros son:
-c: Crea un fichero tar
-v: Muestra el estado del borrado
-x: Extrae los archivos (descomprime los ficheros que se encuentran dentro del archivo tar)
-z: Comprime el archivo tar con gzip
-j: Comprime el archivo tar bzip
-f: Al usar el parametro -c junto con este parametro se especifica que se utilizara el nombre
del archivo especificado para la creacion del archivo tar

Ejemplo 1.Empaquetar un archivo con TAR


Ejemplo 2.Desempaquetar ficheros TAR

Ejemplo 3.Comprimir una carpeta con TAR.GZ


Ejemplo4.Descomprimir una carpeta TAR.GZ


Ejemplo 5.Comprimir una carpeta con TAR.BZ

40

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Ejemplo 6.Descomprimir una carpeta TAR.BZ


2.2.2 zip

El comando zip es utilizado normalmente para comprimir paquetes.
La sintaxis para el buen uso de este comando es:
[root@localhost ~]# zip [parametros]

Ejemplo 1. Comprimiendo un archivo con ZIP

Ejemplo 2.Descomprimiendo un archivo ZIP


2.2.3. Configuracion de interfaces de red

La configuracin de la interfaz es importante en un servidor o equipo de escritorio. Los
principales archivos de configuracin son:

/etc/hosts
Este archivo de configuracin contiene los nombres de
equipos dentro de una red local y se utilizar para
resolver su nombre cuando no se tiene un servidor de
DNS en la red local, tambin este archivo define la
direccin de loopback que representa al propio equipo
independientemente de la direccin IP que se le haya
asignado

/etc/resolv.conf
Este archivo especifica las direcciones IP de los
servidores DNS

/etc/sysconfig/network
Este archivo de configuracin es utilizado para definir
las caractersticas de red deseadas

/etc/sysconfig/networkscripts/
ifcfg<interfaz>
Estos archivos de configuracin son utilizados para
especificar la configuracin de la tarjeta de red

SI STEMAS OPERATI VOS ABI ERTOS 41

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
2.2.4 Configuracion del archivo /etc/hosts

Este archivo de texto asocia las direcciones IP con el nombre del equipo (hostname). Este
archivo debe tener la siguiente forma:

Direccion IP nombre.del.equipo alias
Las modificaciones realizadas en este archivo de configuracin son reflejadas
inmediatamente.

Nota: Este archivo se encuentra la direccin de loopback (127.0.0.1), esta direccin es
utilizada por varias aplicaciones para su funcionamiento, se recomienda que no modifique
esta linea. Ejemplo:
127.0.0.1 localhost.localdomain localhost
192.168.1.10 mail.redfactor.net mail
192.168.1.13 www.red.factor.net www


2.2.5 Configuracion del archivo /etc/resolv.conf

Este archivo de configuracin contiene las direcciones IP de los servidores DNS.
Sus parmetros de configuracin son:

nameserver
Define las direcciones IP de los servidores de nombre en los cuales
se debern resolver las bsquedas. El archivos hosts solo permite
hasta 3 servidores de nombre diferentes
domain
Define el nombre de dominio local en el cual pertenecen los equipos
en una red local
search
Este parmetro define la lista de bsqueda nombres de equiposes
til cuando se busca un equipo dentro de la red local por un nombre
corto
sortlist Este parmetro indica la preferencia de los nameserver definidos


2.2.6 Configuracion del archivo /etc/resolv.conf

Los parmetros que utiliza este este archivo son:

NETWORKING Los valores que admites son:
yes Permite la configuracin de los servicio de red.
no No permite la configuracin de los servicio de red.

FORWARD_IPV4 Habilita el reenvo de paquetes. Los valores que admite son yes o
no.

HOSTNAME Define el nombre del equipo, el cual debe de tener la forma del Fully
Qualified Domain Name (FQDN). Por ejemplo: equipo.ejemplo.net

GATEWAY Este parametro define la direccin IP del Gateway


42

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

2.2.7 Configuracin de la interfaz de red

El directorio de configuracin de la interfaz de red se encuentra en:
/etc/sysconfig/networkscripts/

Dentro de este directorio se encuentran los archivos de configuracin de los dispositivos,
dependiendo del nmero de interfaces de red instaladas en la computadora ser el nmero
de archivos de configuracin, el nombre de estos archivos depende del tipo de dispositivo
Ethernet ifcfgeth0,ifcfgeth1, ..., ifcfgethN.
WiFi ifcfgwlan0, ifcfgwlan1,..., IfcfgwlanN.
Modem ifcfgppp0, ifcfgppp1, ..., ifcfgpppN.
en donde N representa el numero de interfaz a configurar.

Los parmetros que admiten los archivos de configuracin de la interfaz de red Ethernet son
los siguientes:


DEVICE Define el nombre del dispositivo fsico

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
IPADDR Define la direccin IP asignada a ese dispositivo.
NETMASK Define la mscara de red.
NETWORK Define el segmento de red
HWADDR Define el direccin MAC del dispositivo de red. Se recomienda
que modificar el valor de este parmetro.
GATEWAY Define la Direccin IP del Gateway en la red
ONBOOT Establece si el dispositivo debe activarse con los servicios de
red
DNS1, DNS2 Define las direcciones de los servidores DNS primario y
secundario a utilizar.
DHCP_HOSTNAME Esta opcin establece un nombre al equipo. Utilice esta opcin
si el servidor DHCP requiere que el cliente especifique el
nombre de su equipo antes de recibir una direccin IP.

Ejemplo del archivo de configuracin.
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


SI STEMAS OPERATI VOS ABI ERTOS 43

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


Autoevaluacin

1. Cul es el comando que te permite conocer la hora del sistema?
(a) cd
(b) mkdir
(c) date
(d) messages

2. Cul es el comando que te permite conocer los usuarios conectados al sistema?
(a) ls
(b) cat
(c) w
(d) tar

3. Cul es el archivo donde se almacena los DNS del sistema?
(a) hosts
(b) messages
(c) resolv.conf
(d) grub.conf





44

CARRERA DE REDES Y COMUNICACIONES CIBERTEC







SI STEMAS OPERATI VOS ABI ERTOS 45

CIBERTEC CARRERA DE REDES Y COMUNICACIONES















ADMINISTRACIN DE USUARIOS
Y GRUPOS



TEMA
Aprender cmo administrar usuarios y grupos en un ambiente Windows


OBJETIVOS ESPECFICOS

Aprender a crear, editar y eliminar usuarios
Aprender a crear, editar y eliminar grupos

CONTENIDOS

Introduccin
Herramientas para la creacin de usuarios
Usuarios y Grupos estndares
Contraseas
Ejemplos

UNIDAD
3
46

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



SI STEMAS OPERATI VOS ABI ERTOS 47

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
3.1. INTRODUCCIN

El control de los usuarios y grupos es un elemento clave en la administracin de sistemas
Linux.

Los tipos de usuarios en Linux son:

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 Grupos son expresiones lgicas de organizacin, reuniendo usuarios para un propsito
comn.

Los usuarios dentro de un mismo grupo pueden leer, escribir o ejecutar archivos que
pertenecen a ese grupo.

Cada usuario y grupo tiene un nmero de identificacin nico llamado identificador de
usuario (UID) y un identificador de grupo (GID) respectivamente.

Un usuario que crea un archivo se convierte en el propietario y el propietario de grupo para
ese archivo. Al archivo tambin se le asignan permisos separados de lectura, escritura y
ejecucin para el propietario del archivo, para el grupo y para cualquier otro usuario.

Solamente el superusuario (root) puede cambiar el propietario de un archivo, y los permisos
de acceso se pueden cambiar tanto por el superusuario como por el creador del archivo.

Linux soporta listas de control de acceso (ACLs) para archivos y directorios lo que permite
colocar permisos para usuarios especficos adems del creador.

Una de las tareas ms importantes de cualquier administrador del sistema, es la de
administrar adecuadamente usuarios y grupos, as como asignar y revocar permisos.


3.1.1 Herramientas de administracin de usuarios y grupos

La gestin de usuarios y grupos ha sido tradicionalmente tediosa, pero Linux proporciona
algunas herramientas y convenciones que facilitan su gestin.


La forma ms fcil de manejar usuarios y grupos es a travs de la aplicacin grfica,
Administrador de usuarios (system-config-users).




48

CARRERA DE REDES Y COMUNICACIONES CIBERTEC





Las siguientes herramientas de lnea de comandos tambin se pueden utilizar para manejar
usuarios y grupos:

. useradd, usermod y userdel. Mtodos estndar de la industria para aadir, eliminar y
modificar cuentas de usuarios.

. groupadd, groupmod y groupdel. Mtodos estndar de la industria para aadir, eliminar
y modificar grupos de usuarios.

. gpasswd. Mtodos estndar de la industria para administrar el archivo /etc/group.

. pwck, grpck. Herramientas para la verificacin de contraseas, grupo y archivos shadow
asociados.

. pwconv, pwunconv. Herramientas para la conversin de contraseas a contraseas
shadow (oscurecimiento de contraseas) y de vuelta a contraseas estndar.


SI STEMAS OPERATI VOS ABI ERTOS 49

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

3.1.2 Usuarios despus de una instalacin comn

En la tabla siguiente se lista los usuarios estndar configurados en el archivo /etc/passwd
para una instalacin. El groupid (GID) en esta tabla es el grupo primario para el usuario.

Usuario UID GID Directorio principal Shell
root 0 0 /root /bin/bash
bin 1 1 /bin /sbin/nologin
daemon 2 2 /sbin /sbin/nologin
adm 3 4 /var/adm /sbin/nologin
lp 4 7 /var/spool/lpd /sbin/nologin
sync 5 0 /sbin /bin/sync
shutdown 6 0 /sbin /sbin/shutdown
halt 7 0 /sbin /sbin/halt
mail 8 12 /var/spool/mail /sbin/nologin
news 9 13 /etc/news
uucp 10 14 /var/spool/uucp /sbin/nologin
operator 11 0 /root /sbin/nologin
games 12 100 /usr/games /sbin/nologin
gopher 13 30 /var/gopher /sbin/nologin
ftp 14 50 /var/ftp /sbin/nologin
nobody 99 99 / /sbin/nologin
rpm 37 37 /var/lib/rpm /sbin/nologin
vcsa 69 69 /dev /sbin/nologin
dbus 81 81 / /sbin/nologin
ntp 38 38 /etc/ntp /sbin/nologin
canna 39 39 /var/lib/canna /sbin/nologin
nscd 28 28 / /sbin/nologin
rpc 32 32 / /sbin/nologin
xfs 43 43 /etc/X11/fs /sbin/nologin
gdm 42 42 /var/gdm /sbin/nologin
htt 100 101 /usr/lib/im /sbin/nologin
mysql 27 27 /var/lib/mysql /bin/bash
webalizer 67 67 /var/www/usage /sbin/nologin
mailnull 47 47 /var/spool/mqueue /sbin/nologin
smmsp 51 51 /var/spool/mqueue /sbin/nologin
squid 23 23 /var/spool/squid /sbin/nologin
ldap 55 55 /var/lib/ldap /bin/false
netdump 34 34 /var/cras /bin/bash
pcap 77 7 /var/arpwatc /sbin/nologin
radiusd 95 95 / /bin/false
radvd 75 75 / /sbin/nologin
quagga 92 92 /var/run/quagga /sbin/login
wnn 49 49 /var/lib/wn /sbin/nologin
dovecot 97 97 /usr/libexec/dovecot /sbin/nologin

50

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


3.1.3 Grupos despus de una instalacin comun

En la tabla siguiente se lista los grupos estndar configurados por una instalacin. Los
grupos son almacenados en el archivo /etc/group.

Grupo GID Miembros
Root 0 root
Bin 1 root, bin,daemon
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
SI STEMAS OPERATI VOS ABI ERTOS 51

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
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


3.1.4 Grupos de usuario privado

Linux utiliza un esquema de grupo privado de usuario (UPG), lo que hace ms fcil de
manejar los grupos de UNIX.

Se crea un UPG siempre que se aade un nuevo usuario al sistema. Un UPG tiene el mismo
nombre que el usuario para el cual se crea y ese usuario es el nico miembro de ese UPG.

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.


3.1.5 Contraseas Shadow

En entornos multiusuario es muy importante utilizar contraseas shadow tambin conocido
como Oscurecimiento de contraseas, (proporcionadas por el paquete shadow-utils).
Haciendo esto se mejora la seguridad de los archivos de autenticacin del sistema. Por esta
razn, el programa de instalacin activa por defecto las 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:

. Mejora la seguridad del sistema al mover las contraseas encriptadas desde
el archivo /etc/passwd que puede leer todo el mundo, a /etc/shadow, el cual
slo puede ser ledo por el usuario root.
. Almacena informacin sobre las vigencias de las contraseas.
. Permite el uso del archivo /etc/login.defs para reforzar las polticas de seguridad.

52

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

La mayora de las utilidades proporcionadas por el paquete shadow-utils funcionan
adecuadamente sin importar si las contraseas shadow estn activadas o no. Sin embargo,
puesto que la informacin sobre la vigencia de las contraseas es almacenada
exclusivamente en el archivo /etc/shadow, cualquier comando que cree o modi_que la
informacin sobre la vigencia de las contraseas, no funcionar.

Abajo se muestra una lista de los comandos que no funcionan a menos que se activen
primero las contraseas shadow:

. chage
. gpasswd

. Las opciones /usr/sbin/usermod -e o -f
. Las opciones /usr/sbin/useradd -e o -f

3.1.6 Ejemplos
Lo primero: la orden useradd.
El primer paso para crear una nueva cuenta consiste en utilizar el mandato useradd del
siguiente modo:
useradd nombre_del_usuario
Ejemplo:


Lo segundo: la orden passwd.
Despus de crear la nueva cuenta con useradd o que sigue a continuacin es especificar
una contrasea para el usuario. Determine una que le resulte fcil de recordar, que mezcle
nmeros, maysculas y minsculas y que, preferentemente, no contenga palabras que se
encontraran fcilmente en el diccionario.
Aunque el sistema siempre tratar de prevenirlo cuando se escoja una mala contrasea, el
sistema no le impedir que lo haga. Especificar una nueva contrasea para un usuario, o
bien cambiar la existente, se puede realizar utilizando el mandato passwd del siguiente
modo:
passwd nombre_del_usuario

SI STEMAS OPERATI VOS ABI ERTOS 53

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ejemplo:

El sistema solicitar entonces que proceda a teclear la nueva contrasea para el usuario y
que repita sta para confirmar. No ver el echo, por seguridad, el sistema no mostrar los
caracteres tecleados, por lo que debe hacerlo con cuidado. Si se considera que tal vez se
cometieron errores de tecleado, puede presionarse las veces que sean necesarias la tecla
<Backspace> o <Retroceso>. De cualquier forma el sistema le informar si coincide o no lo
tecleado. Si todo sali bien recibir como respuesta del sistema code 0. Si en cambio recibe
code 1, significa que deber repetir el procedimiento, ya que ocurri un error.
Este procedimiento tambin puede utilizarse para cambiar una contrasea existente.
Opciones avanzadas.
En muchos casos pueden no ser necesarios, pero si se esta administrando un servidor o
estacin de trabajo, o bien se es un usuario un poco ms experimentado, y se quiere crear
una cuenta con mayores o menores restricciones, atributos y/o permisos, pueden utilizarse
las siguientes opciones de useradd:
-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 de disquetes,
administracin de cuentas PPP y POP. Nota: los grupos asignado deben de
existir.
54

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

-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.
Existen ms opciones y comentarios adicionales para el mandato useradd, estas se
encuentran especificadas en los manuales -Man pages-. Para acceder a esta informacin,
utilice el mandato man useradd desde una ventana terminal.
Eliminar una cuenta de usuario.
En ocasiones un administrador necesitar eliminar una o ms cuentas de usuario. Este es
un procedimiento principalmente utilizado en servidores y estaciones de trabajo a los cuales
acceden mltiples usuarios. Para tal fin nos valdremos del mandato userdel. La sintaxis
bsica de userdel es la siguiente:
userdel nombre_del_usuario

SI STEMAS OPERATI VOS ABI ERTOS 55

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ejemplo:

Si se desea eliminar tambin todos los archivos y sub-directorios contenidos dentro del
directorio de trabajo del usuario a eliminar, se debe agregar la opcin -r:
userdel -r nombre_del_usuario
Ejemplo:





Manejo de Grupos:
Alta de grupos.
groupadd grupo-que-sea

Alta de grupos de sistema.
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.

56

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Baja de grupos

Asignacin de usuario existente a grupos existentes.

Tambien se pueder agregar o modificar el grupo principal con el siguiente comando

SI STEMAS OPERATI VOS ABI ERTOS 57

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Autoevaluacin


1. Cuales son los tipos de usuarios que existen en Linux?



2. Cul es el archivo donde se graba la configuracin principal de los usuarios?
(a) passwd
(b) shadow
(c) hosts
(d) messages


3. Cul es el archivo donde se graba el password de los usuarios?
(a) passwd
(b) shadow
(c) hosts
(d) messages



58

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 59

CIBERTEC CARRERA DE REDES Y COMUNICACIONES








PROCESO DE ARRANQUE EN
LINUX


TEMA

Describir el proceso de aranque en Linux, asi como los componetes que intervienen
en l.

OBETIVOS ESPECFICOS

Comprender el proceso de aranque, inicio y cierre del sistema
Conocer el gestor de arranque Grub
Concer la estructura de archivos

CONTENIDOS

Proceso de aranque, inicio y cierre del sistema
El Grub en linux
La estructura de archivos



UNIDAD
4
60

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 61

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


4.1 PROCESO DE ARRANQUE, INICIO Y CIERRE DEL SISTEMA

Una de las caractersticas ms importantes y poderosas de Linux es el mtodo abierto y
configurable para el inicio del sistema operativo. Los usuarios son libres de configurar
muchos aspectos del proceso de arranque, incluyendo qu programas se lanzarn al
momento de arranque. De forma parecida, el cierre del sistema finaliza los procesos de
forma organizada y configurable, aunque la personalizacin de este proceso casi nunca es
necesaria.

Entender el funcionamiento del proceso de arranque y cierre no slo le permitir
personalizar, sino que tambin le facilitar resolver problemas relacionados con el inicio y el
cierre del sistema.


4.1.1. Proceso de arranque

A continuacin obtendr las etapas bsicas del proceso de arranque para un sistema x86:

1. La BIOS del sistema comprueba y lanza la primera etapa del gestor de arranque del
MBR del disco duro primario.

2. La primera etapa del gestor de arranque se autocarga en memoria y lanza la segunda
etapa del gestor de arranque desde la particin /boot/.

3. La segunda etapa del gestor de arranque carga el kernel en memoria, lo cual en su
momento carga los mdulos necesarios y monta la particin root para slo-lectura.
4. El kernel transfiere el control del proceso de arranque al programa /sbin/init.

5. El programa /sbin/init carga todos los servicios y herramientas de espacio del usuario y
monta todas las particiones listadas en /etc/fstab.

6. Se le presenta al usuario una pantalla de inicio de conexin para el sistema Linux recin
iniciado. Ya que la configuracin del proceso de arranque es ms comn que la del
proceso de cierre, en el resto del captulo se discutir el modo en el que el proceso de
arranque funciona y cmo se puede personalizar para satisfacer sus necesidades.

62

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

4.2. VISTA DETALLADA DEL PROCESO DE ARRANQUE

El inicio del proceso de arranque vara dependiendo de la plataforma de hardware usada.
Sin embargo, una vez que se encuentra el kernel y se carga por el gestor de arranque, el
proceso de arranque por defecto es idntico a travs de todas las arquitecturas. Este
captulo se basa principalmente en la arquitectura x86.

4.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.

4.2.2. El gestor de arranque

Dependiendo de la arquitectura del sistema, el proceso de arranque diferir Ligeramente. Un gestor
de arranque para la plataforma x86 se divide en al menos dos etapas. La primera es un cdigo
binario de mquina pequea en el MBR. Su nica funcin es la de localizar el gestor de
SI STEMAS OPERATI VOS ABI ERTOS 63

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
arranque de la segunda etapa y cargar la primera parte de
ste en memoria.GRUB tiene la ventaja de ser capaz de
leer particiones ext2 y ext3 1 y cargar su archivo de
configuracin. /boot/grub/grub.conf. al momento de
arranque.


Una vez que el gestor de arranque de la segunda etapa haya determinado qu kernel
arrancar, localizar el binario del kernel correspondiente en el directorio /boot/. El kernel
binario es llamado usando el siguiente formato. /boot/vmlinuz-<kernel-version> (donde
<kernel-version> corresponde a la versin del kernel especificada en las configuraciones del
gestor de arranque).

Para instrucciones sobre el uso del gestor de arranque para suministrar argumentos de lnea
de comandos al kernel. El gestor de arranque luego coloca una o ms de las imgenes
apropiadas de initramfs en la memoria. Luego, el kernel descomprime estas imgenes
desde la memoria a /boot/, un sistema de archivos virtual basado en RAM, a travs de cpio.
El initrd es usado por el kernel para cargar controladores y mdulos necesarios para
arrancar el sistema. Esto es muy importante si posee unidades de disco duro SCSI o si est
el sistema utiliza el sistema de archivos ext3.

Una vez que el kernel y la imagen initramfs se cargan en memoria, el gestor de arranque
pasa el control del proceso de arranque al kernel.

4.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
64

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

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.

4.2.4. Programa /sbin/init

El programa /sbin/init (tambin llamado init) coordina el resto del proceso de arranque y
configura el ambiente del usuario. Cuando el comando init arranca, se vuelve el padre o
abuelo de todos los procesos que comienzan automticamente en el sistema. Primero,
ejecuta el script /etc/rc.d/rc.sysinit, que establece la ruta del entorno, activa el swap, verifica
los sistemas de archivos y se encarga de todo lo que el sistema necesita tener hecho al
momento de la inicializacin. Por ejemplo, la mayora de los sistemas usan un reloj, por lo
tanto, el rc.sysinit lee el archivo de configuracin para iniciar el hardware del reloj. Otro
ejemplo es si hay procesos especiales en los puertos seriales que deben ser inicializados,
rc.sysinit ejecutar el archivo /etc/rc.serial.

El comando init luego ejecuta el script /etc/inittab, el cual describe cmo se debera
configurar el sistema en cada nivel de ejecucin SysV init. Los niveles de ejecucin son un
estado, o modo, definido por los servicios listados en el SysV directorio /etc/rc.d/rc<x>.d/,
donde <x> es el nmero de nivel de ejecucin.

A continuacin, el comando init configura la biblioteca de funciones fuente,
/etc/rc.d/init.d/functions, para el sistema, que establece el modo en cmo iniciar o matar un
programa y cmo determinar el PID del programa.

El programa init inicia todos los procesos de fondo buscando en el directorio apropiado rc
para el nivel de ejecucin especificado por defecto en /etc/inittab. Los directorios rc estn
numerados para corresponder al nivel de ejecucin que representan. Por ejemplo,
/etc/rc.d/rc5.d/ es el directorio para el nivel de ejecucin 5.

Cuando se arranca el nivel de ejecucin 5, el programa init consulta el directorio
etc/rc.d/rc5.d/ para determinar qu procesos iniciar o parar.

Casi todos los ficheros en /etc/rc.d/rc5.d/ son enlaces simblicos apuntando a los scripts
localizados en el directorio /etc/rc.d/init.d/. Los enlaces simblicos se usan en cada uno de
los directorios rc de manera que los niveles de ejecucin puedan ser reconfigurados al crear,
modificar y eliminar los enlaces simblicos sin que afecte a los scripts actuales a los que se
refiere.

El nombre de cada enlace simblico comienza con K o S. Los enlaces K son procesos
eliminados en ese nivel de ejecucin, mientras que aquellos que inician por S son procesos
a iniciar.

SI STEMAS OPERATI VOS ABI ERTOS 65

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
El comando init en primer lugar detiene todos los enlaces simblicos de K en el directorio
mediante la ejecucin del comando /etc/rc.d/init.d/<command> <stop>, en el que <
command>es el proceso a matar.

A continuacin inicia todos los enlaces simblicos S al ejecutar
/etc/rc.d/init.d/<command>. start.

4.2.5 Ejecutar programas adicionales en el momento de arranque

El script /etc/rc.d/rc.local lo ejecuta el comando init en tiempo de arranque, o cuando se
cambien niveles de ejecucin. El agregar comandos al final de este script es una forma fcil
de realizar tareas necesarias como arrancar servicios especiales o inicializar dispositivos sin
tener que escribir scripts complejos de inicializacin en el directorio /etc/rc.d/init.d/ y creando
enlaces simblicos. Se usa el script /etc/rc.serial si se deben configurar puertos seriales en
el momento de arranque. Este script ejecuta los comandos setserial para configurar los
puertos seriales del sistema.

4.2.6 Niveles de ejecucin de SysV Init

El sistema de niveles de ejecucin SysV init provee de un proceso estndar para controlar
cules programas init lanza o detiene cuando se inicializa un nivel de ejecucin. SysV init
fu escogido porque es ms fcil de usar y ms fiexible que el proceso tradicional init estilo
BSD.

Los ficheros de configuracin para SysV init estn en el directorio /etc/rc.d/. Dentro de este
directorio, se encuentran los scripts rc, rc.local, rc.sysinit, y, opcionalmente, los scripts
rc.serial as como los siguientes directorios:
init.d/
rc0.d/
rc1.d/
rc2.d/
rc3.d/
rc4.d/
rc5.d/
rc6.d/

El directorio init.d/ contiene los scripts usados por el comando /sbin/init cuando se controlan
los servicios. Cada uno de los directorios numerados representa los seis niveles de
ejecucin predeterminados configurados por defecto bajo Linux.

4.2.7 Niveles de ejecucin

La idea detrs de los niveles de ejecucin de SysV init gira alrededor del hecho que
sistemas diferentes se pueden usar de formas diferentes. Por ejemplo, un servidor corre de
forma ms eficiente sin el consumo de recursos del sistema excesivo creado por el sistema
X. Otras veces, el administrador del sistema puede necesitar operar el sistema en un nivel
ms bajo de ejecucin para realizar tareas de diagnstico, como reparar corrupcin del
disco duro en el nivel de ejecucin 1.

Las caractersticas de un nivel de ejecucin dado determinan qu servicios son detenidos o
iniciados por init. Por ejemplo, el nivel de ejecucin 1 (modo usuario nico) detiene cualquier
servicio de red, mientras que el nivel 3 arranca estos servicios. Asignando servicios
especficos a ser detenidos o iniciados en un nivel dado, init puede fcilmente cambiar el
modo de la mquina sin que el usuario tenga que manualmente arrancar o detener servicios.
66

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Los siguientes niveles de ejecucin estn definidos de forma predeterminada para
Linux:

. 0 . Parar
. 1 . Modo texto usuario nico
. 2 . Sin usar (usuario-definible)
. 3 . Modo texto multiusuario completo
. 4 . Sin usar (usuario-definible)
. 5 . Modo grfico multiusuario completo (con una pantalla de inicio de sesin basada en X)
. 6 . Rearrancar



Generalmente, los usuarios utilizan Linux al nivel de ejecucin 3 o nivel de ejecucin
5.ambos modos multiusuario. Ya que los niveles de ejecucin 2 y 4 no son usados, los
usuarios a veces personalizan estos niveles para cubrir necesidades especficas.
El nivel de ejecucin por defecto para el sistema est listado en /etc/inittab. Para saber el
nivel de ejecucin por defecto de un sistema, busque por la lnea similar a la que se muestra
abajo cerca de la parte superior de /etc/inittab:
id:5:initdefault:

El nivel de ejecucin predeterminado en este ejemplo es cinco, como indica el nmero
despus del punto y coma. Para cambiarlo, modifique /etc/inittab como usuario root.

4.2.8 Utilidades de los niveles de ejecucin

Una de las mejores formas de configurar los niveles de ejecucin es usando la utilidad
initscript.Estas herramientas estn diseadas para simplificar las tareas de mantener
archivos en la jerarqua del directorio SysV init y descargan a los administradores de
sistemas de tener que directamente manipular numerosos enlaces simblicos en los
subdirectorios de /etc/rc.d/.

Linux ofrece tres de tales utilidades:
. /sbin/chkconfig . La utilidad /sbin/chkconfig es una herramienta de lnea de comandos
SI STEMAS OPERATI VOS ABI ERTOS 67

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
sencilla para mantener la jerarqua del directorio /etc/rc.d/init.d.
. /sbin/ntsysv.La utilidad basada en ncurses /sbin/ntsysv provee de una interfaz interactiva
basada en texto, que muchos encuentran ms fcil de usar que chkconfig.
. Herramienta de configuracin de servicios . El programa de interfaz grfica
Herramienta de configuracin de servicios (system-config-services) es una utilidad
fiexible para la configuracin de niveles de ejecucin.




4.2.9 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

Despus de apagar todo, la opcin -h detendr la mquina, y la opcin -r la reiniciar. Los
usuarios de consola PAM pueden usar los comandos reboot y halt para apagar el equipo
mientras se est en niveles de ejecucin 1 hasta 5. Para ms informacin sobre los usuarios
de consola. Si la computadora no se apaga asmisma, tenga cuidado de no apagar la
computadora hasta que aparezca un mensaje indicando que el sistema ha sido detenido. Si
no espera por este mensaje puede significar que no todas las particiones del disco duro han
sido desmontadas, y puede llevar a un sistema de archivos corrupto.

4.2.10 El gestor de arranque GRUB

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.
68

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



a) Gestores de arranque y arquitectura del sistema

Cada arquitectura de sistemas que pueda ejecutar Red Hat Enterprise Linux usa un gestor
de arranque diferente. La lista siguiente muestra los gestores de arranque disponibles para
cada arquitectura.

Arquitectura Gestores de arranque
AMD AMD64 GRUB
IBM eServer. iSeries. OS/400
IBM eServer. pSeries. YABOOT
IBM S/390 z/IPL
IBM eServer. zSeries z/IPL
Intel Itanium. ELILO
x86 GRUB

Este captulo explica comandos y opciones de configuracin para el gestor de arranque
GRUB suministrado con Linux para la arquitectura x86.

b) GRUB

GNU GRand Unified Boot loader o GRUB es un programa que habilita al usuario a
seleccionar qu sistema operativo instalado o kernel cargar en el momento de arranque del
sistema. Permite tambin que el usuario transmita argumentos al kernel.


SI STEMAS OPERATI VOS ABI ERTOS 69

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
c) Proceso de arranque en un sistema x86 y GRUB

Esta seccin explica con ms detalle el papel especfico que desempea GRUB al arrancar
un sistema x86. Para hacerse una idea del proceso de arranque, GRUB se carga asimismo
en la memoria en las diferentes etapas:

1. La etapa 1 o cargador de arranque primario se lee en la memoria por el BIOS desde el
MBR1.El gestor de arranque primario existe en menos de 512 bytes de espacio en
disco dentro del MBR y es capaz de cargar bien sea la etapa 1.5 o la etapa 2 del gestor
de arranque.

2. La Etapa 1 del gestor de arranque se lee en la memoria por el gestor de arranque de la
Etapa 1, si es necesario. Determinados hardware requieren un paso intermedio para
pasar a la Etapa 2 del gestor de arranque. Esto sucede a menudo cuando la particin
/boot/ est por encima del cilindro 1024 del disco duro o cuando se usa el modo LBA.
La Etapa 1.5 del gestor de arranque se encuentra en la particin /boot/ o en una
pequea parte del MBR y la particin /boot/.

3. La Etapa 2 o el gestor de arranque secundario se lee en la memoria. El gestor de
arranque secundario visualiza el men GRUB y el entorno de comandos. Esta interfaz
le permite seleccionar qu sistema operativo o kernel arrancar, pasar argumentos al
kernel o ver los parmetros del sistema.

4. El gestor de arranque secundario lee el sistema operativo o el kernel as como tambin
los contenidos de /boot/sysroot/ en memoria. Una vez que GRUB determina qu
sistema operativo iniciar, ste lo carga en la memoria y transfiere el control de la
mquina a dicho sistema operativo.

El mtodo usado para arrancar Linux se conoce como mtodo de carga directa porque el
gestor de arranque carga el sistema operativo directamente. No existe un intermediario entre
el gestor de arranque y el kernel.

El proceso de arranque usado por otros sistemas operativos puede variar. Por ejemplo, los
sistemas operativos de Microsoft Windows, as como otros sistemas operativos, se
cargan mediante un mtodo de arranque de carga encadenada. Bajo este mtodo, el MBR
seala el primer sector de la particin que tiene el sistema operativo. All encuentra los
archivos necesarios para arrancar el sistema operativo.

GRUB soporta ambos mtodos de arranque, directo y de carga encadenada, permitiendo
arrancar desde casi cualquier sistema operativo.

d) Funciones de GRUB

GRUB contiene una serie de funciones que lo convierten en el mtodo favorito respecto al
resto de gestores de arranque disponibles para la arquitectura x86. A continuacin tiene una
lista de las caractersticas ms importantes:

. GRUB proporciona un verdadero entorno basado en comandos, pre-sistema operativo,
para las mquinas x86. Esta funcionalidad le otorga al usuario una gran flexibilidad en la
carga de sistemas operativos con opciones especficas o con la recopilacin de informacin
sobre el sistema. Durante muchos aos, las arquitecturas diferentes a x86 han usado
entornos previos al sistema operativo que permiten arrancar el sistema desde una lnea de
comandos.
70

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

. 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.

e) Instalacin de GRUB

Si no instal GRUB durante el proceso de instalacin, se puede hacer despus. Una vez
instalado, se convierte en el gestor de arranque por defecto. Antes de instalar GRUB,
debera asegurarse de que cuenta con el ltimo paquete disponible de GRUB desde los CD-
ROMs de instalacin.

Una vez que el paquete GRUB est instalado, abra un intrprete de comandos de la shell y
ejecute el comando /sbin/grub-install <ubicacin> donde <ubicacin> es la ubicacin en la
que la Etapa 1 de GRUB debera ser instalado. Por ejemplo, el comando siguiente instala
GRUB al MBR del dispositivo maestro IDE en el bus IDE primario:
/sbin/grub-install /dev/hda

La prxima vez que arranque el sistema, el men del gestor de arranque grfico GRUB
aparecer antes del que el kernel se cargue en memoria.

f) Terminologa de GRUB

Una de las cuestiones ms importantes que deben entenderse antes de utilizar GRUB es
cmo el programa hace referencia a los dispositivos, por ejemplo, a los discos duros y a las
particiones. Esta informacin es muy importante si desea configurar GRUB para arrancar
varios sistemas operativos.

g) Nombres de dispositivos

Cuando se refiera a un dispositivo especfico con GRUB, haga esto usando el formato
siguiente (observe que los parntesis y las comas son muy importantes en la sintaxis):
(<tipo-de-dispositivo> <numero-dispositivo-bios> , <numero-particion> )

El <tipo-de-dispositivo> especifica el tipo de dispositivo desde el cual inicia GRUB.
Las dos opciones ms comunes son hd para un disco duro o fd para un disquete de 3.5. Un
tipo de dispositivo menos usado tambin est disponible, llamado nd para un disco de la red.

El <numero-dispositivo-bios> es el nmero del dispositivo BIOS. El disco duro IDE primario
se numera 0 y un disco duro IDE secundario se numera 1. La sintaxis es equivalente a
SI STEMAS OPERATI VOS ABI ERTOS 71

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
aquella utilizada para los dispositivos por el kernel. Por ejemplo, a en hda para el kernel es
anlogo a 0 en hd0 para GRUB, b en hdb es anlogo a 1 en hd1, y as sucesivamente.

El <numero-particion> hace referencia al nmero de una particin concreta en un
dispositivo. Al igual que en el caso de <nmero-dispositivo-bios> , la mayora de los tipos de
particiones son numeradas comenzando por 0. Aunque la mayora de las particiones se
especifican con nmeros, si el sistema usa particiones BSD a stas se har referencia con
letras, con a correspondiendo a 0, b correspondiendo a 1 y as sucesivamente.

h) Nombres de archivos y listas de bloqueo

Al escribir comandos en GRUB que hagan referencia a un archivo, como una lista de
mens, es necesario especificar una ruta de archivos absoluta despus de los nmeros de
dispositivo y particin.
Lo siguiente ilustra la estructura de tal comando:
(<tipo-dispositivo><numero-dispositivo> , <numero-particion>) </ruta/a/archivo>

En este ejemplo, reemplace <tipo-dispositivo> con hd, fd o nd. Reemplace <finumero-
dispositivo> con el nmero entero para el dispositivo. Reemplace </ruta/a/archivo> con una
ruta absoluta relativa al nivel ms superior del dispositivo.

Tambin puede especificar archivos a GRUB que no aparecen realmente en el sistema de
archivos, tal como un gestor de arranque en cadena que aparece en los primeros bloques
de la particin. Para cargar tales archivos, deber indicar una lista de bloques, que indique a
GRUB, bloque por bloque, la ubicacin exacta del archivo en la particin. Puesto que un
archivo puede estar formado por varios conjuntos de bloques, hay una sintaxis especfica
para escribir listas de bloques. Cada bloque que contiene el archivo se describe con un
nmero de desplazamiento de bloques seguido de un nmero de bloques de ese punto de
desplazamiento. Los desplazamientos de bloques se listan secuencialmente y delimitados
por comas.


La siguiente es una lista de bloques de ejemplo:
0+50,100+25,200+1

Esta lista de bloques de ejemplo especifica un archivo que empieza en el primer bloque de
la particin y que usa los bloques del 0 al 49, del 99 al 124, y el 199.
Saber cmo escribir listas de bloques es til al utilizar GRUB para cargar sistemas
operativos que usan el mtodo de carga encadenada. Puede suprimir el nmero de
desplazamiento de bloques si empieza por el bloque 0. Por ejemplo, el archivo de carga
encadenada de la primera particin del primer disco duro tendr el nombre siguiente:

(hd0,0)+1

Lo siguiente muestra el comando chainloader con una designacin de lista de bloques
similar en la lnea de comandos de GRUB despus de establecer el dispositivo correcto y la
particin adecuada como raz:

chainloader +1
72

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


i) El Sistema de archivos raz y GRUB

Algunos usuarios se confunden con el uso del trmino sistema de archivos raz tiene un
significado diferente con relacin a GRUB. Es importante recordar que el sistema de
archivos raz de GRUB no tiene nada que ver con el sistema de archivos raz de Linux.

El sistema de archivos raz de GRUB es el nivel superior del dispositivo especificado. Por
ejemplo, el archivo imagen (hd0,0)/grub/splash.xpm.gz est ubicado dentro del directorio
/grub/ en el nivel superior (o raz) de la particin (hd0,0) (la cual es en verdad la particin
/boot/ para el sistema).

Luego, se ejecuta el comando kernel con la ubicacin del archivo del kernel como una
opcin. Una vez que el kernel de Linux inicia, establece el sistema de archivos raz con el
cual los usuarios de Linux estn familiarizados. El sistema de archivos raz de GRUB original
y sus montajes se olvidan; la nica finalidad de su existencia era arrancar el archivo del
kernel.

j) Archivo de configuracin de men de GRUB

El archivo de configuracin (/boot/grub/grub.conf), usado para crear la lista en la interfaz de
men de GRUB de los sistemas operativos para el arranque, bsicamente permite al usuario
seleccionar un grupo predefinido de comandos para su ejecucin de configuracin.

k) Estructura del archivo de configuracin

El archivo de configuracin de la interfaz de men de GRUB es /boot/grub/grub.conf. Los
comandos para configurar las preferencias globales para la interfaz de men estn ubicados
al inicio del archivo, seguido de las diferentes estrofas para cada sistema operativo o kernels
listados en el men.
El siguiente es un ejemplo de archivo de configuracin de men de GRUB muy bsico
diseado para arrancar bien sea Linux o Microsoft Windows 2000:

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.


SI STEMAS OPERATI VOS ABI ERTOS 73

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
l) Cambiar los niveles de ejecucin en el tiempo de arranque

Bajo Linux, es posible cambiar el nivel de ejecucin predeterminado en el momento
de arranque. Para cambiar el nivel de ejecucin de una sesin de arranque, utilice las
instrucciones siguientes:
. Cuando la pantalla de men de GRUB aparece durante el arranque, presione cualquier
tecla para entrar al men de GRUB (dentro de los primeros tres segundos).
. Presione la tecla [a] para aadir al comando kernel.
. Aada
*
espacio
+fi*
nivel-de-ejecucion
+
al final de la lnea de opciones de arranque para iniciar en el nivel de ejecucin deseado. Por
ejemplo, la entrada siguiente iniciar un proceso de arranque en el nivel 3.

grub append> ro root=LABEL=/ rhgb quiet 3





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


3. Que es FHS, y cual es su ventaja?


74

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 75

CIBERTEC CARRERA DE REDES Y COMUNICACIONES







FILESYSTEMS EN LINUX


TEMA

Describir el manejo de las particiones en linux


OBJETIVOS ESPECFICOS

Comprender como se interpretar, crear, modificar y eliminar particiones en Linux


CONTENIDOS

Particiones conceptos basicos
Herramientas de administracion
Creacion de particiones en Linux










UNIDAD
5
76

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 77

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


5.1. PARTICIONES

5.1.1. Conceptos bsicos:

En linux las particiones donde residen los archivos van sobre los sistemas ext2 o ext3
generalmente, aunque tambin soportan otro tipo de sistema de ficheros.
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.
El tamao de la memoria SWAP es el doble que la fisica disponible
EJM: 512 mgb de ram=1024mgb de swap.
En una PC standard las particiones se reparten de la siguiente manera:
-Se le asigna una etiqueta comn a los discos IDE: hd
-Se le asigna una etiqueta comn a los disco SCSI : sd
-Se le asigna una letra a cada disco, usando un orden alfanumrico: "a" primer disco,"b"
segundo disco, "c" tercer disco y "d" la cuarto disco.
-Se le asigna un numero a cada particin: 1, 2, 3...n
Por lo que tendramos: hda3 (Primer disco IDE, particin 3)hdb2 (Segundo disco IDE,
particin 2)sdc1 (Tercer disco SCSI, particin 1)
-En linux solo se pueden montar 4 particiones primarias.
3 particiones primarias y 1 extendida que puede estar vaca o alojar varias particiones o
unidades lgicas.
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.
Los sistemas operativos linux soportan mltiples tipos de particin, para el almacenamiento
de datos, que no para su ejecucin, dependiendo de que mdulos estn cargados en el
kernel (ver con lsmod), generalmente particiones fat16,fat32,ntfs... son soportadas en las
ultimas versiones de los kernels 2.4.x.

5.1.2. Herramientas para la administracin.
En casi todos los sistemas Linux o basados en Unix (freebsd, solaris, es distinto) existen una
serie de utilidades para el manejo de particiones.

78

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


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
-/boot donde ira montada la particin de arranque (no es necesario para el funcionamiento
puesto que los archivos se pueden montar en el mismo directorio sin necesidad de ser una
particin distinta a la raz).

-/home aqu se pueden montar los archivos que se usen en un servidor o espacio para
usuarios.

-/directorio.cualquiera en este se pueden montar las particiones que se deseen, pejm:
montar la particin de M$ win 98, otro s.o de linux, y la particin donde se encuentra M$ win
2000, se podran distribuir a su antojo, /win98, /debian/win2000 o dentro de cualquier
directorio, por defecto la mayora de distribuciones montan las particiones no raz, no
especificas en el directorio /mnt.
SI STEMAS OPERATI VOS ABI ERTOS 79

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
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.
La sntesis bsica del comando es la siguiente:
mount -[parametros de montaje] [tipo de particin] [dev/archivo donde se ubique la particin]
[directorio donde se desee montarla]


El comando para desmontar la particin es umount con la misma sntesis

Fichero /etc/mtab
Contiene una lista de los filesystem que estn montados en el sistema
Ejemplo de fichero /etc/mtab



80

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Fichero /etc/fstab
Al iniciar el sistema se montan los filesystems listados en /etc/fstab


cada lnea del fichero tiene las siguientes columnas
(file system) (mount point) (tipo) (opciones) (dump) (pass)
Ejemplo:
/dev/hda9 /home ext3 defaults 0 2
Alguna de las opciones son:
o rw monta tipo lectura/escritura
o ro slo lectura
o auto/noauto monta/no monta con mount -a (monta/no monta al inicio)
o exec/noexec Permite/no permite la ejecucin de ficheros binarios en la
particin
o suid/nosuid permite/no permite que los bits setuid y setgid tengan efecto
o dev/nodev interpreta/no interpreta dispositivos de bloques o caracteres en el
filesystem
o async toda la I/O se realiza de forma asncrona
o user puede montarlo un usuario (y slo el que lo monta puede desmontarlo);
implica las opciones noexec, nosuid y nodev, a menos que se fuercen (p.e.
user,exec,suid,dev)
o users puede montarlo/desmontarlo un usuario y el que desmonta no tiene que
ser el que lo mont; implica las mismas opciones que user
o defaults selecciona opciones por defecto (rw, suid, dev, exec, auto, nouser y
async)
o
Filesystems especficos pueden tener opciones especficas:
o ver el manual de mount para ms detalles
Si un directorio aparece listado en el fstab puede montarse sin especificar el
dispositivo:
$ mount /home
Campos dump y pass

SI STEMAS OPERATI VOS ABI ERTOS 81

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
dump
Lo usa el comando dump para determinar de que filesystems hacer copias de
seguridad
o valor 1 o 0 segn si la particin va a tener un backup controlado por dump o
no (normalmente no se usa)
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

Si se desea agregar una particin para se monte automticamente cuando se incie el
sistema operativo, se tendra que agregar dentro del fstab



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.
82

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Tambin existen herramientas en modo grfico, (qtparted, gparted, diskdruid, diskdrake)
para poder trabajar con discos.


SI STEMAS OPERATI VOS ABI ERTOS 83

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Hoy en da, exceptuando algunas distribuciones muy especificas, las dems permiten una
instalacin teniendo en cuenta que el usuario novel en linux probablemente desconozca
detalles sobre estos temas, es decir proporcionan herramientas grficas y asistentes
comprensibles para realizar un particionado de manera automtica.

Ejemplos de montaje de ficheros:


En este caso montamos la tercera particin del primer disco en el directorio /home, el
sistema de ficheros es ext3.
84

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



En este otro montamos la segunda particin del segundo disco en el directorio
/mnt/Windows, es el sistema de ficheros es vfat, tambin podra ser NTFS.

Aqu estamos montando un sistemas de ficheros nfs que nos provee la maquina
192.168.10.2 (concretamente nos comparte /home) en nuestro directorio /home.

En este caso hemos montado una imagen iso en un directorio /imgenes

5.2 CREACIN DE PARTICIONES EN LINUX
Si aadimos un nuevo disco al sistema ya instalado deberemos crear las particiones
y los sistemas de ficheros
Esta operacin implica los siguientes pasos:
1. creacin de particiones (comando fdisk)
2. creacin de los sistemas de ficheros (comando mkfs)
3. montado de los sistemas de ficheros (comando mount)

SI STEMAS OPERATI VOS ABI ERTOS 85

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
5.2.1 El comando para crear particiones es fdisk
Formato:
fdisk [opciones] dispositivo
donde dispositivo es el dispositivo del disco (/dev/hdx en IDE, /dev/sdx para
SCSI o SATA)
Debemos tener permiso de administrador para usarlo
Opciones:
o -l muestra la tabla de particiones del dispositivo
fdisk se usa mediante un men:





86

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Ejemplo
Cree una particin primaria de 5 GB
usamos n (new):
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-20805, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-20805, default 20805): +5G
Command (m for help): p
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

Por defecto, crea la particin tipo Linux (Id 83)
con l (list) vemos el tipo de particiones soportadas
para cambiar el tipo de particin se usa t (type)
Command (m for help): t 1
Selected partition 1
Hex code (type L to list codes): 82
Changed system type of partition 1 to 82 (Linux swap / Solaris)

Command (m for help): p

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+ 82 Linux swap / Solaris

Para que se guarden los cambios debemos usar w (write)

SI STEMAS OPERATI VOS ABI ERTOS 87

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
5.3 OTRAS HERRAMIENTAS

Existen otras herramientas para modificar las particiones:

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

5.4. CREACIN DE LOS SISTEMAS DE FICHEROS

Sobre cada particin debemos crear sistemas de ficheros con el comando mkfs
Formato:
mkfs [-V] [-t filesystem] dispositivo [n_bloques]
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)
mkfs es un front-end a distintos comandos, que permiten crear particiones de los tipos
especficos:
mkfs.ext2 o mke2fs crea sistemas ext2
mkfs.ext3 crea sistemas ext3, equivalente a mkfs.ext2 -j
mkfs.jfs, mkfs.reiserfs, mkfs.xfs crean sistemas JFS, ReiserFS y XFS,
respectivamente
mkfs.msdos, mkfs.vfat crea sistemas MS-DOS
mkswap crea un sistema de ficheros de tipo Linux swap
Cada uno de estos comandos pueden tener distintas opciones
Comandos relacionados
dumpe2fs muestra informacin de sistemas de ficheros ext2/ext3
o informacin sobre inodos, bloques y grupos
tune2fs permite ajustar parmetros en sistemas ext2/ext3
o p.e. define el intervalo entre chequeos automticos, convierte ext2 en ext3,
etc.
e2label cambia la etiqueta de un sistema ext2/ext3
88

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

existen comandos similares para otros tipos de sistemas de ficheros, p.e.
reiserfstune, jfs_tune, etc.
5.4.1. Particin de intercambio
Si lo que creamos es una particin de intercambio, la debemos inicializar con
mkswap

# 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
Una vez creada debemos activarla con swapon
# swapon /dev/hdb2
# swapon -s
Filename Type Size Used Priority
/dev/hda7 partition 377488 0 -1
/dev/hdb2 partition 5602456 0 -2
Finalmente, para que se active en el arranque, debe incluirse la entrada correspondiente
en el fichero /etc/fstab
/dev/hda2 none swap sw 0 0



5.5. MONTADO DE LOS SISTEMAS DE FICHEROS

Para poder acceder a los sistemas de ficheros debemos montarlos
Los comandos para montar y desmontar son: mount y umount
Comando mount
Permite asociar (montar) directorios a sistemas de ficheros

SI STEMAS OPERATI VOS ABI ERTOS 89

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Ejemplo
$ mount -t ext3 /dev/hdb1 /home2
Formato
mount [opciones] [-t tipo] [disp.] [dir.]
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
Desmonta los sistemas de ficheros
Formato
umount [opciones] directorio
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
Sistema que permite montar los filesystems ``bajo demanda''
cuando se accede al directorio, este se monta
se desmonta automticamente despus de un tiempo de inactividad (por defecto, 5
minutos)
suele usarse para montar sistemas remotos con NFS
Ficheros de configuracin:
o /etc/auto.master define los puntos de montado
por cada uno de los puntos definidos, se inicia un proceso automount
usando los parmetros indicados
Ejemplo de auto.master:
90

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

/home /etc/auto.home
/misc /etc/auto.misc --timeout 60
o Los ficheros le indican al automount los filesystems a montar
o Ejemplo de auto.misc
cdrom -fstype=iso9660,ro :/dev/cdrom
floppy -fstype=auto :/dev/fd0
windoz -fstype=vfat :/dev/hda1
o esto monta el cdrom, el floppy y la particin /dev/hda1 en los directorios
/misc/cdrom, /misc/floppy y /misc/windoz respectivamente
Supermount
Tipo de pseudofilesystem que para manejar dispositivos removibles (como cdroms o
diskettes)
el filesystem se monta/desmonta automticamente cuando se introduce/saca el CD o
disquete
la lnea correspondiente en el fstab debe ser del tipo:
none /mnt/cdrom supermount dev=/dev/cdrom,fs=auto 0 0
se incluye ''de serie'' en algunas distribuciones (p.e. Mandriva)
o en otras es necesario bajarse un parche para el kernel
pmount
Comando que permite al usuario montar dispositivos hotpluggable (como cdroms, pendrives,
etc.)
el dispositivo se monta debajo del directorio /media
no necesita estar listado en /etc/fstab
puede usar HAL (Hardware Abstraction Layer) pra obtener informacin de los
dispositivos
gnome-volume-manager
En el entorno GNOME monta automticamente dispositivos removibles cuando se conectan
o se inserta un CD
usa udev y HAL
el usuario puede configurar la accin realizada al conectarse el dispositivo (p.e.
empezar a tocar un CD de musica cuando se inserta)
SI STEMAS OPERATI VOS ABI ERTOS 91

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

5.6. CHEQUEO DEL SISTEMA DE FICHEROS

Peridicamente es necesario chequear los sistemas de ficheros
el comando bsico para chequeo y reparacin es fsck
Al igual que mkfs, fsck es un front-end a comandos especficos para cada filesystem:
e2fsck, fsck.ext2 o fsck.ext3 chequean sistemas ext2/ext3
fsck.jfs, fsck.reiserfs, fsck.xfs para JFS, ReiserFS y XFS
fsck.msdos, fsck.vfat para sistemas MS-DOS
Alguno de los errores que pueden aparecer se deben a:
Varios ficheros que usan el mismo bloque
Bloques marcados libres y ocupados simultneamente
Nmero de enlaces errneo
Nodos-i conteniendo informacin pero que no estn en la entrada del directorio (la
informacin se recupera en el directorio lost+found con el nmero de nodo-i)
Entradas del directorio que apuntan a nodos-i ilegales o vacos
etc.
Algunas de las opciones de fsck son:
-t filesystem tipo de filesystem a chequear
-A chequea los filesystems listados en /etc/fstab
-N no ejecuta; simplemente indica lo que hara
-R usado con -A no chequea el filesystem raz
Otras opciones dependen del filesystem particular

5.7 OTRAS UTILIDADES
du: muestra el espacio de disco usado por los ficheros y subdirectorios de un
directorio
o Formato:
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: muestra el espacio de disco usado y disponible de los sistemas de ficheros
montados
92

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

o Formato:
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



5.8 PERMISOS EN LINUX

El sistema de permisos en Linux se basa en un esquema de usuarios/grupos que lo
convierte en la base principal de la seguridad en Linux, a estos usuarios y grupos se les
asignan distintos derechos sobre los archivos y directorios.
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.
Cuales son los permisos
Los permisos propiamente dichos son tres:
r: read (lectura): Cuando el permiso de lectura est activo sobre un directorio
significa que se podr listar los recursos almacenados en l, si est asignado a un
archivo se podr leer su contenido.
w: write (escritura): Cuando el permiso de escritura est activo sobre un directorio
significa que se podr crear y borrar archivos en su interior, si esta activado para un
archivo significa que se podr modificar su contenido.
x: execute (ejecucin): Si el permiso de ejecucin est activo sobre un directorio
significa que el usuario podr realizar otras funciones dentro de l mediante los otros
permisos de lectura y escritura, y si est activo sobre un archivo se podr ejecutarlo
desde la lnea de comandos.
SI STEMAS OPERATI VOS ABI ERTOS 93

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Y donde estn los permisos?
Para poder ver los permisos de los archivos y directorios es necesario ejecutar el siguiente
comando:
$ ls l
Este comando nos dar una salida similar a la siguiente:

Ahora describamos la salida que hemos obtenido:

Con la siguiente lnea interpretamos la informacin as:
- rw- r-- r-- 1 raul raul 594 2005-09-13 13:13 foto1.png

1 2 3 4 5 6 7 8 9 10 11
1 : Tipo de archivo = es un archivo regular
2 : Permisos = los permisos para el propietario son de lectura y escritura
3 : Permisos = el grupo tiene permiso de slo lectura
4 : Permisos = los otros usuarios tienen el permiso de slo lectura
5 : Enlace Fsico = tiene un enlace fsico
6 : Propietario = el usuario raul es el propietario de este archivo
94

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

7 : Grupo = este archivo pertenece al grupo raul
8 : Tamao = su tamao es de 246417 bytes
9 : Fecha = fue creado el 03 de marzo de 2005
10 : Hora = a 13:13 horas
11 : Nombre = el archivo se llama foto1.png
Como habrs apreciado los permisos estn asignados en grupos de 3 (rwx) y corresponde
al: propietario (owner: dueo del archivo o directorio), grupo (group: grupo del archivo o
directorio) y otros (others: otro usuario diferente del propietario).
En la siguiente imagen resaltamos nuevamente la ubicacin de los permisos en caso no lo
hayamos notado:


5.9 COMANDOS RELACIONADOS
Linux dispone de 3 comandos que permite cambiar los permisos, el propietario y el grupo de
un archivo y/o directorio respectivamente:
Comando chmod : se utiliza para cambiar los permisos del archivo o directorio
$ chmod [permisos] [archivo/directorio] [opciones]
Comando chown : se utiliza para cambiar el propietario del archivo o directorio
# chown [nuevo usuario propietario] [archivo/directorio] [opciones]
Comando chgrp : utilizado para cambiar el grupo del archivo o directorio
# chgrp [nuevo grupo] [archivo/directorio] [opciones]

COMO SE CAMBIAN LOS PERMISOS?
Para cambiar los permisos se puede hacer de 2 maneras:
1. Utilizando taquigrafa basada en caracteres, o
2. Utilizando nmeros.

SI STEMAS OPERATI VOS ABI ERTOS 95

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
5.9.1. Cambio de permisos utilizando taquigrafa de caracteres
Para poder utilizar la taquigrafa basada en caracteres tomemos en cuenta la siguiente lista
con su respectiva correspondencia:

Smbolo Descripcin
Identidades
u Es el usuario propietario del archivo o directorio
g Es el grupo al que pertenece el archivo o directorio
o Otros usuarios, el resto del mundo, ni el propietario ni su grupo
a Todo el mundo propietario, grupo y otros
Permisos
r Acceso de lectura
w Acceso de escritura
x Acceso de ejecucin
Acciones
+ Aade los permisos
- 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:
Ejemplo Descripcin
Resultado

$ touch foto1.png creamos el archivo foto1.png foto1.png
$ chmod a-rwx
foto1.png
quitamos todos los permisos al archivo foto1.png ---------
$ chmod u+rwx
foto1.png
aadimos todos los permisos para el propietario rwx------
$ chmod g+x
foto1.png
aadimos el permiso de ejecucin para el grupo rwxx---
$ chmod o+r
foto1.png
aadimos el permiso de lectura para los otros usuarios rwxxr--
$ chmod u-rw
foto1.png
eliminamos los permisos de lectura y escritura para el
propietario
--xxr--
$ chmod a=r
foto1.png
establecemos como unico permiso de lectura para los
3 grupos
rrr--
$ chmod a=rx
foto1.png
establecemos los permisos de lectura y ejecucin para
los 3 grupos
r-xr-xr-x
$ chmod a=- quitamos todos los permisos ----------
96

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

foto1.png
$ chmod u+rx,o+x
foto1.png
aadimos los permisos de lectura y ejecucin al
propietario y ejecucin a otros
r-x-----x
$ chmod g+rx,o-x
foto1.png
aadimos permiso de lectura y ejecucin al grupo y
eliminamos permiso de ejecucin a otros
r-xr-x---
$ chmod ug+wx,o-x
foto1.png
aadimos permiso de escritura y ejecucin al
propietario y grupo, y eliminamos permiso de ejecucin
a otros
rwxrwx---
$ chmod a=rw
foto1.png
permite a cualquiera modificar el contenido e incluso
eliminar el archivo
rw-rw-rw-
Si cambiamos los permisos a un directorio y deseamos que estos permisos tengan efecto
sobre todos sus subdirectorios y archivos slo deberemos aadir la opcin R. Ejemplo:
$ chmod a=rw DIRECTORIO R

5.9.2 Cambio de permisos utilizando nmeros
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:
Valor Permisos Descripcin
0 --- El valor cero significa que no se han asignado permisos
1 --x slo se ha asignado el de ejecucin
2 -w- slo permiso de escritura
3 -wx permisos de escritura y ejecucin
4 r-- slo permiso de lectura
5 r-x permisos de lectura y ejecucin
6 rw- permisos de lectura y escritura
7 rwx permisos: lectura, escritura y ejecucin
Los permisos por nmeros se asignan en grupos de 3, es decir, para el propietario-grupo-
otros, no es factible asignar solo para uno o dos de ellos.

SI STEMAS OPERATI VOS ABI ERTOS 97

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ejemplos:
rw------- (600) Slo el propietario tiene el derecho de leer y escribir.
rw-r--r-- (644) Slo el propietario tiene los permisos de leer y escribir; el grupo y
los dems slo pueden leer.
rwx------ (700) Slo el propietario tiene los derechos de leer, escribir y ejecutar el
archivo.
rwxr-xr-x (755) El propietario tiene los derechos de leer, escribir y ejecutar; el
grupo y los dems slo pueden leer y ejecutar.
rwx--x--x (711) El propietario tiene los derechos de lectura, escritura y ejecucin;
el grupo y los dems slo pueden ejecutar.
rw-rw-rw- (666) Todo el mundo puede leer y escribir en el archivo. No es una
buena eleccin!
rwxrwxrwx (777) Todo el mundo puede leer, escribir y ejecutar. Tampoco es
buena eleccin!
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:
Ejemplo Descripcin Resultado
$ touch foto2.png creamos el archivo foto2.png foto2.png
$ chmod 000
foto2.png
quitamos todos los permisos al archivo foto2.png ----------
$ chmod 700
foto2.png
aadimos todos los permisos para el propietario -rwx------
$ chmod 710
foto2.png
aadimos el permiso de ejecucin para el grupo -rwxx---
$ chmod 714
foto2.png
aadimos el permiso de lectura para los otros usuarios -rwxxr--
$ chmod 114
foto2.png
eliminamos los permisos de lectura y escritura para el
propietario
---xxr--
$ chmod 444
foto2.png
establecemos como unico permiso de lectura para los
3 grupos
-rrr--
$ chmod 555
foto2.png
establecemos los permisos de lectura y ejecucin para
los 3 grupos
-r-xr-xr-x
$ chmod 000
foto2.png
quitamos todos los permisos -----------
$ chmod 501
foto2.png
aadimos los permisos de lectura y ejecucin al
propietario y ejecucin a otros
-r-x-----x
$ chmod 550
foto2.png
aadimos permiso de lectura y ejecucin al grupo y
eliminamos permiso de ejecucin a otros
-r-xr-x---
$ chmod 770
foto2.png
aadimos permiso de escritura y ejecucin al
propietario y grupo, y eliminamos permiso de ejecucin
a otros
-rwxrwx---
$ chmod 666
foto2.png
permite a cualquiera modificar el contenido e incluso
eliminar el archivo
-rw-rw-rw-


98

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


CAMBIANDO PROPIETARIOS Y GRUPOS
Otra de los puntos a la hora de establecer permisos es la necesidad de poder cambiar el
propietario y grupo del archivo o directorio, para hacer esta operacin debe estar como root
y los usuarios y grupos que utilizar deben haber sido creados previamente.
Cambiando el propietario
Utilizamos el comando chown explicado lneas arriba:
# chown clases foto1.png # estamos cambiando el propietario del archivo, ahora el
usuario clases ser el propietario del archivo foto1.png
# chown raul foto2.png # el usuario raul ser el propietario del archivo foto2.png
Si vamos a cambiar el propietario de un directorio y con todos sus subdirectorios y archivos
en forma recursiva utilizaremos la opcin R:
# chown clases datos/ R # el usuario clases sera el nuevo propietario de todos los
archivos y subdirectorios que estn dentro del directorio datos/

Cambiando el grupo
Utilizamos el comando chgrp explicado lneas arriba:
# chgrp clases foto1.png # estamos cambiando el propietario del archivo, ahora el archivo
foto1.png ser del grupo clases
# chgrp raul foto2.png # el archivo foto2.png ser del grupo raul
Si vamos a cambiar el grupo de un directorio y con todos sus subdirectorios y archivos en
forma recursiva utilizaremos la opcin R:
# chgrp clases datos/ R # todos los archivos y sub directorios del directorio datos/ sern
del grupo clases


SI STEMAS OPERATI VOS ABI ERTOS 99

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Autoevaluacin

1. Cul es el comando que se usa para crear un filesystem?
(a) fsck
(b) mkfs
(c) fdisk
(d) chmod

2. Cul es el comando que te permite reparar una particion?
(a) mkfs
(b) mount
(c) fdisk
(d) fsck

3. Cul es el comando que permite el cambio de permisos?
(a) who
(b) lastlog
(c) chmod
(d) chown

4. Para lograr el permiso rwxr-xr-x, es necesario el valor?
(a) 777
(b) 644
(c) 755
(d) 744












100

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 101

CIBERTEC CARRERA DE REDES Y COMUNICACIONES













INSTALACIN DE
APLICACIONES LINUX


TEMA

Describir las distintas formas de instalar aplicaciones en Linux


OBJETIVOS ESPECFICOS

Comprender el uso de RPMs
Entender como instalar aplicaciones compilndolas
Instalacion de paquetes via yum

CONTENIDOS

Introduccin a RPM
Manejo de RPM
Construyendo un RPM
Compilacion de aplicacin en Linux

UNIDAD
6
102

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 103

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

6.1 RPM (RedHat Package Manager)
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.



6.1.1. 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.
RPM tambin est diseado para disponer de potentes parmetros de consulta. Usted
puede hacer bsquedas de paquetes a lo largo de toda la base de datos o slo de ciertos
ficheros. Tambin puede encontrar fcilmente a qu paquete pertenece un fichero y de
dnde proviene. Los ficheros RPM en s mismos son archivos comprimidos, pero puede
consultar paquetes independientes fcil y rpidamente, gracias a una cabecera binaria a
104

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

medida aadida al paquete con toda la informacin que puede necesitar, almacenada sin
comprimir. Esto permite consultas rpidas.
Otra poderosa caracterstica es la habilidad de verificar paquetes. Si est preocupado por
haber borrado algn fichero importante, slo tiene que verificar el paquete. Quedar
cumplidamente informado de cualquier anomala. Llegados a ese punto, podr reinstalar el
paquete si lo considera necesario. Cualquier fichero de configuracin que se tenga quedar
a salvo.

6.1.2 INFORMACIN GENERAL
6.1.2.1 Adquirir RPM
La mejor forma de conseguir RPM es instalando Red Hat Commercial Linux,CentOS, etc. Si
no quiere hacer eso, puede seguir usando RPM. Puede conseguirse en:
ftp://ftp.redhat.com/pub/redhat/code/rpm
http://rpm.pbone.net
http://www.rpmfind.net/

6.1.2.2. Requerimientos de RPM
El principal requerimiento para ejecutar RPM es cpio 2.4.2 o superior. Aunque el sistema fue
ideado para ser usado con Linux, puede ser perfectamente portado a cualquier sistema
Unix. De hecho, ha sido compilado en SunOS, Solaris, AIX, Irix, AmigaOS, y otros. Queda
advertido que los paquetes binarios generados en diferentes tipos de sistemas Unix no
sern compatibles.
Estos son los mnimos requerimientos para instalar RPMs. Para construir RPMs a partir de
las fuentes, necesitar todo lo normalmente requerido para construir un paquete, cosas
como gcc, make, etc.

6.2. USANDO RPM
En su forma ms simple, RPM puede usarse para instalar paquetes:
SI STEMAS OPERATI VOS ABI ERTOS 105

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


El siguiente comando ms simple es desinstalar un paquete:


Uno de los ms complejos pero ms tiles comandos le permiten instalar paquetes a travs
de FTP. Si est conectado a la Red y quiere instalar un nuevo paquete, todo lo que necesita
hacer es especificar el fichero con un URL vlido, como esto:



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:
106

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Podr encontrar ms detalles acerca de la funcin de estos parametros en la pgina del
manual de RPM.

6.3. MANEJO DE RPM
RPM es una herramienta potentsima y, como puede ver, dispone de varios parmetros. La
mejor forma de apercibirse de ellas es examinando unos cuantos ejemplos. Antes
mostramos una instalacin/desinstalacin sencilla, ahora van unos cuantos ms:
Supongamos que ha borrado unos cuantos ficheros por accidente, pero no est
seguro de qu es lo que ha borrado. Si quiere verificar completamente su sistema y
ver qu se ha perdido, puede hacer:
SI STEMAS OPERATI VOS ABI ERTOS 107

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Supongamos que se encuentra con un fichero que no reconoce. Para saber a qu
paquete pertenece puede hacer:

Supongamos que acaba de hacerse con un nuevo paquete RPM de koules, pero no
sabe qu puede ser. Para obtener informacin al respecto:
rpm -qpi koules-1.2-2.i386.rpm
La salida podra ser:
Name : koules Distribution: Red Hat Linux Colgate
Version : 1.2 Vendor: Red Hat Software
Release : 2 Build Date: Mon Sep 02 11:59:12 1996
Install date: (none) Build Host: porky.redhat.com
Group : Games Source RPM: koules-1.2-2.src.rpm
Size : 614939
Summary : SVGAlib action game with multiplayer, network, and sound support
Description :
This arcade-style game is novel in conception and excellent in execution.
No shooting, no blood, no guts, no gore. The play is simple, but you
still must develop skill to play. This version uses SVGAlib to
run on a graphics console.
Ahora quiere saber qu ficheros instala el paquete RPM. Puede hacer:
rpm -qpl koules-1.2-2.i386.rpm
La salida es:
/usr/doc/koules
/usr/doc/koules/ANNOUNCE
/usr/doc/koules/BUGS
/usr/doc/koules/COMPILE.OS2
/usr/doc/koules/COPYING
108

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

/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.

6.4. COMPILAR APLICACIONES EN LINUX

El proceso de compilar un programa e instalarlo desde la consola suele ser una tarea
bastante rutinaria, ya que, salvo raras excepciones, siempre se procede de la misma
manera, y solo son necesarias tres rdenes.
Se debe tener correctamente instalado y configurado nuestro compilador C/C++ (gcc) y
todas las bibliotecas necesarias (que, por lo general, es algo de lo que se encarga el
programa de instalacin de nuestra distribucin), daremos por hecho que todo est
dispuesto en nuestro sistema para poder compilar programas de forma correcta.

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:
tar -xvzf nombredelprograma.tar.gz


Comprobamos que se creo un directorio con el nombre del archivo y cambiamos a ese
directorio tecleando la orden:
cd nombredelprograma

Observacin

En este momento sera recomendable leer la documentacin que acompaa al programa,
que normalmente est contenida en un archivo con el nombre README. Tambin es
recomendable leer el archivo INSTALL, si existe, ya que en l se describe la forma de
instalar el programa. Ambos archivos suelen estar escritos en ingls, y contienen una
referencia de las dependencias especiales que necesita el programa para poder ser
compilado y la forma de instalarlo.
SI STEMAS OPERATI VOS ABI ERTOS 109

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Este ltimo paso es muy recomendable, pues cabe la posibilidad de que el programa se
instale de otra forma diferente a la que se detalla ac.

A continuacin deberemos configurar los archivos que nos permitirn compilar el programa.
Como norma general, deberamos instalar nuestros programas en el directorio /usr/local/bin,
ya que sta es la forma ms adecuada de asegurarnos que podremos acceder a ellos
localmente y en todo momento, ya que los otros directorios que suelen contener programas
ejecutables (como /bin y /sbin) pueden no estar disponibles localmente, sino en algn lugar
remoto de la red local, en caso de que estemos en una. Si se usa ese directorio, el
programa ser accesible por todos los usuarios de nuestro sistema, pero habremos de tener
permisos de superusuario para instalar all nuestra aplicacin. En caso contrario, siempre
nos queda la posibilidad de instalarlo en nuestro directorio personal (por ejemplo, en
/home/usuario/bin), aunque en este caso slo nosotros podremos acceder a l. Si optamos
por instalar el programa en el directorio /usr/local/bin, deberemos configurarlo mediante la
orden:
./configure --prefix=/usr/local

Observacin

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


Dependiendo de la complejidad de la aplicacin y del nmero de archivos de cdigo fuente
que la compongan (y, sobre todo, de la velocidad de nuestro procesador y del rendimiento
de nuestro sistema), el proceso puede durar desde pocos segundos hasta varias horas.
Durante todo este tiempo, la consola ir mostrando todo lo que se est haciendo, y tal vez
se muestren algunos mensajes de aviso o de error. En este ltimo caso, la compilacin se
detendr y deberemos tratar de solucionar los problemas que originaron el error, en caso de
que sepamos cmo hacerlo (ya que suelen ser necesarios conocimientos de C/C++). Pero lo
normal es que no ocurra ningn error durante la compilacin, ya que todo suele estar
probado por el autor del programa.

Una vez compilada nuestra aplicacin deberemos instalarla en el directorio que
seleccionamos anteriormente como destino final. Si no tenemos permisos de lectura y
110

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

escritura sobre ese directorio, deberemos autentificarnos primero como superusuario
(usuario root) con la orden:
Su


Y, finalmente, instalaremos la aplicacin con el comando:
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.

Si el directorio de destino de nuestra aplicacin est incluido en nuestro PATH, podremos
ejecutar la aplicacin directamente desde la consola tecleando su nombre. Lo ms usual es
que tanto el directorio /usr/local/bin como el /home/usuario/bin estn ya incluidos en nuestro
PATH personal.
Un poco de limpieza
Durante la compilacin de un programa se genera un buen nmero de archivos adicionales
en el directorio en el que fue descomprimido. Normalmente, esos archivos no se necesitan
para nada (a menos que pensemos modificar el cdigo fuente del programa y volver a
compilarlo), por lo que es recomendable eliminarlos para ahorrar espacio en nuestro disco
duro. Para ello, tras la instalacin podemos ejecutar la orden:
make clean

Desinstalar un programa compilado

Si lo que queremos es desinstalar un programa compilado a partir del cdigo fuente,
cambiamos en la consola al directorio en el que fue descomprimido, compilado e instalado,
nos autentificamos como usuario root, y a continuacin ejecutamos la orden:
make uninstall

Despus de la desinstalacin podemos eliminar el directorio donde fue descomprimido el
programa si no pensamos volver a utilizarlo.

SI STEMAS OPERATI VOS ABI ERTOS 111

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Resumen

Como compilar un programa en Linux desde su cdigo fuente, se seguirn los siguientes
pasos:

tar xvzf aplicacin-a-instalar.tar.gz
cd aplicacin-a-instalar
./configure
make
make install
make clean


INSTALACIN DE APLICACIONES VIA YUM
Al instalar una nueva aplicacin o programa con cualquiera de los mtodos anteriores,
podriamos tener algunos problemas de dependencias que algunas veces nos puede dar
mas de un dolor de cabeza, existe un mtodo de instalacin y actualizacin de paquetes que
nos cubre con esa necesidad, ese mtodo es la instalacin de paquetes via yum.
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:

6.5 Actualizar sistema.
Actualizacin del sistema con todas las dependencias que sean necesarias:
112

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



6.6 Bsquedas
Realizar una bsqueda de algn paquete o trmino en la base de datos en alguno de los
depsitos yum configurados en el sistema:
yum search cualquier-paquete
Ejemplo:


6.7 Consulta de informacin
Consultar la informacin contenida en un paquete en particular::
yum info cualquier-paquete

SI STEMAS OPERATI VOS ABI ERTOS 113

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ejemplo:


6.8 Instalacin de paquetes
Instalacin de paquetera con resolucin automtica de dependencias:
yum install cualquier-paquete
Ejemplo:

114

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

6.9 Desinstalacin de paquetes
Desinstalacin de paquetes junto con todo aquello que dependa de stos:
yum remove cualquier-paquete
Ejemplo:

6.10 Listado de paquetes.
Lo siguiente listar todos los paquetes disponibles en la base de datos yum y que pueden
instalarse:
yum list available | less
Lo siguiente listar todos los paquetes instalados en el sistema:
yum list installed |less
Lo siguiente listar todos los paquetes instalados en el sistema y que pueden (deben)
actualizarse:
yum list updates | less

6.11 Limpieza del sistema.
Yum deja como resultado de su uso cabeceras y paquetes RPM almacenados en el interior
del directorio localizado en la ruta /var/cache/yum/. Particularmente los paquetes RPM que
se han instalado pueden ocupar mucho espacio y es por tal motivo conviene eliminarlos una
vez que ya no tienen utilidad. Igualmente conviene hacer lo mismo con las cabeceras viejas
de paquetes que ya no se encuentran en la base de datos. A fin de realizar la limpieza
correspondiente, puede ejecutarse lo siguiente:
yum clean all

SI STEMAS OPERATI VOS ABI ERTOS 115

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Autoevaluacin

1. Qu es el RPM?


2. Si se desa consulta la informacin del paquete algo.rpm, se usa?
(a) rpm i algo.rpm
(b) rpm Uvh algo.rpm
(c) rpm qf algo.rpm
(d) rpm qp algo.rpm

3. Cules son los pasoa para instalar una aplicacin desde su cdigo fuente?



4. Qu te permite hacer yum?

116

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 117

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

















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
Comprender e implementar las cuotas de disco

Contenidos

Archivos de registro
Ubicacin
Visualizacin de los archivos de registro
El daemon SYSLOG
Cuotas de disco
UNIDAD
9
118

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 119

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

9.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.
Algunos archivos de log estn controlados por un demonio llamado syslogd. Encontrar una
lista de mensajes de log mantenidos por syslogd en el archivo de configuracin
/etc/syslog.conf.

9.2 UBICACIN DE LOS ARCHIVOS DE REGISTRO
La mayora de archivos de log estn localizados en el directorio /var/log. Algunas
aplicaciones como por ejemplo httpd y samba poseen un directorio en /var/log para sus
archivos de log.

Observe los mltiples archivos en el directorio de archivos log seguidos de nmeros. Estos
se crean cuando los archivos de log circulan. Los archivos de log circulan de manera que los
tamaos de los archivos no sean demasiado amplios. El paquete logrotate contiene una
tarea de cron que hace circular automticamente los archivos de log al archivo de
configuracin /etc/logrotate.conf y los archivos de configuracin en el directorio
/etc/logrotate.d. Por defecto, se configura para circular cada semana y mantener la validez
de los archivos previos de log durante cuatro semanas.
120

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


9.3 VISUALIZACIN DE LOS ARCHIVOS DE REGISTRO
La mayora de los archivos de registro estn en formato de texto plano. Puede visualizarlos
con cualquier editor de texto tal como Vi o Emacs. Algunos archivos log pueden ser ledos
por todos los usuarios del sistema; sin embargo se requiere de privilegios como root para
visualizar la mayora de ellos. Para poder visualizarlos en tiempo real puede usar el
comando tail.

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.

SI STEMAS OPERATI VOS ABI ERTOS 121

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
9.4 DEMONIO SYSLOGD
Todos los archivos de registro que se llevan a cabo en un sistema Linux se manejan por
el demonio syslogd y su archivo de configuracin /etc/syslog.conf. El archivo de
configuracin especifica sobre qu subsistemas se deben grabar los mensajes (por
ejemplo cron, daemon, mail, etc.), qu niveles de mensajes registrar (por ejemplo debug,
info, warn, etc) y qu hacer con esos mensajes (aadirlo a un archivo de registro,
enviarlo a la impresora, etc.).
Syslog permite tambin el registro remoto; guardando tus archivos de registro en otros
equipos de la red. La ventaja de esto es que si tu sistema queda comprometido por
alguien sern incapaces de borrar sus pasos de tus archivos de registro haciendo mas
sencillo el buscar su origen y las acciones que llevaron a cabo.

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' que ha generado ese
mensaje (por ejemplo, todos los programas relacionados con el correo generarn
mensajes ligados al servicio mail).
En segundo lugar, la prioridad est compuesta de uno de los siguientes trminos, en
orden ascendente: debug, info, notice, warning, warn (equivalente a warning), err,
error (equivalente a err), crit, alert, emerg, y panic (equivalente a emerg). La prioridad
122

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

define la gravedad o importancia del mensaje almacenado. Todos los mensajes de la
prioridad especificada y superiores son almacenados de acuerdo con la accin
requerida.
La segunda parte de cada lnea del archivo de configuracin de syslogd es el campo de
accin, y describe el destino de los mensajes (dnde se van a guardar o qu programa
los va a procesar); este destino puede ser uno de los siguientes:
Un archivo plano: Normalmente los mensajes del sistema son almacenados en
archivos planos. Dichos archivos han de estar especificados con la ruta de acceso
completa (comenzando con / ').
Podemos preceder cada entrada con el signo menos, , para omitir la
sincronizacin del archivo (vaciado del buffer de memoria a disco). Aunque puede
ocurrir que se pierda informacin si el sistema cae justo despus de un intento de
escritura en el archivo, utilizando este signo se puede conseguir una mejora
importante en la velocidad, especialmente si estamos ejecutando programas que
mandan muchos mensajes al demonio syslogd.
# Guardamos todos los mensajes de prioridad crtica en
"critical"
#
*.=crit /var/adm/critical
Un dispositivo fsico: Tambin tenemos la posibilidad de enviar los registros del
sistema a un dispositivo fsico del mismo, tpicamente un terminal o una impresora.
As conseguimos, entre otras cosas, que esas entradas permanezcan relativa o
totalmente inalteradas (en funcin de qu dispositivo las reciban). Por ejemplo,
podemos tener uno de los terminales virtuales que muchos sistemas Unix ofrecen en
su consola dedicado a listar los mensajes del sistema, que podrn ser consultados
con solo cambiar a ese terminal mediante la combinacin de teclas correspondiente:
# Enviamos todos los mensajes a tty12 (ALT+F12 en Linux) y
todos
# los mensajes criticos del nucleo a consola
#
*.* /dev/tty12
kern.crit /dev/console
Una tubera con nombre: Algunas versiones de syslogd permiten enviar registros a
ficheros de tipo pipe simplemente anteponiendo el smbolo | al nombre del archivo;
dicho archivo ha de ser creado antes de iniciar el demonio syslogd, mediante
comandos como mkfifo o mknod. Esto es til para debug y tambin para procesar los
registros utilizando cualquier aplicacin de Unix, tal y como veremos al hablar de logs
remotos cifrados.
Por ejemplo, la siguiente lnea de /etc/syslog.conf enviara todos los mensajes de
cualquier prioridad a uno de estos archivos denominado /var/log/mififo:
# Enviamos todos los mensajes a la tubera con nombre
# /var/log/mififo
#
*.* |/var/log/mififo
SI STEMAS OPERATI VOS ABI ERTOS 123

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
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).
En el siguiente ejemplo utilizamos un sistema a priori confiable para enviarle algunos
de nuestros registros:
# Enviamos los mensajes de prioridad warning y superiores al
# fichero "syslog" y todos los mensajes (incluidos los
# anteriores) a la maquina "secure.upv.es"
#
*.warn /usr/adm/syslog
*.* @secure.upv.es
Unos usuarios del sistema (si estn conectados): Se especifica la lista de usuarios
que deben recibir un tipo de mensajes simplemente escribiendo sus login, separados
por comas:
# Enviamos los mensajes con la prioridad "alert" a root y
toni
#
*.alert root, toni
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:
# Mostramos los mensajes urgentes a todos los usuarios
# conectados, mediante wall
*.=emerg *



9.5 QUOTAS DE DISCO EN LINUX
Debe iniciarse el sistema en nivel de corrida 1 (mono usuario), ya que se requiere
no haya procesos activos utilizando contenido de la particin a la cual se le
aplicar la cuota de disco.
Obviamente, durante la instalacin, debi asignarse una particin dedicada para, por
mencionar un ejemplo, los directorios /var y /home.
Con la finalidad de aadir el soporte para cuotas en las particiones anteriormente
mencionadas, se debe aadir en el fichero /etc/fstab los parmetros usrquota y
grpquota a las lneas que definen la configuracin de las particiones /var y /home:
124

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

LABEL=/var /var ext3 defaults,usrquota,grpquota 1 2
LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2
Debe remontar las particiones para que surtan efecto los cambios:
mount -o remount /var
mount -o remount /home
Se deben crear los ficheros aquota.user, aquota.group, quota.user y quota.group, los
cuales se utilizarn en adelante para almacenar la informacin y estado de las
cuotas en cada particin.
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
La primera vez que se ejecuta el mandato anterior es normal marque advertencias
refirindose a posibles ficheros truncados que en realidad no eran otra cosa sino
ficheros de texto simple vacos a los cuales se les acaba de convertir en formato
binario. Si se ejecuta de nuevo quotacheck - avug, no deber mostrar advertencia
alguna.
Para activar las cuotas de disco recin configuradas, solo bastar ejecutar:
quotaon /var
quotaon /home
Vaya al nivel de corrida 3 a fin de aplicar cuota de disco a algunos usuarios.
init 3

9.5.1 Edquota.
Es importante conocer que significa cada columna mostrada por edquota.
Blocks: Bloques. Corresponde a la cantidad de bloques de 1 Kb que est
utilizando el usuario.
Inodes: Inodos. Corresponde al nmero de ficheros que est utilizando el
usuario. Un inodo (tambin conocido como Index Node) es un apuntador
hacia sectores especficos de disco duro en los cuales se encuentra la
informacin de un fichero. Contiene adems la informacin acerca de
permisos de acceso as como los usuarios y grupos a los cuales pertenece el
fichero.
SI STEMAS OPERATI VOS ABI ERTOS 125

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Soft: Limite de gracia. Limite de bloques de 1 KB que el usuario puede utilizar
y que puede rebasar hasta que sea excedido el periodo de gracia (de modo
predeterminado son 7 das).
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
Lo anterior deber devolver algo como lo siguiente a travs de vi u otro editor de texto
simple:
Disk quotas for user fulano (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda7 0 0 0 0 0 0
/dev/hda5 24 0 0 10 0 0

9.5.2 Cuota absoluta (Hard)
Suponiendo que se quiere asignar una cuota de disco de 6 MB para el usuario fulano en
en /dev/hda7 y /dev/hda5, se utilizara lo siguiente:
Disk quotas for user fulano (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda7 0 0 6144 0 0 0
/dev/hda5 24 0 6144 10 0 0
El usuario siempre podr rebasar una cuota de gracia pero nunca una cuota absoluta.

9.5.3 Cuota de gracia (Soft)
El sistema tiene de modo predeterminado un periodo de gracia de 7 das que se puede
modificar con el mandato edquota -t, donde se puede establecer un nuevo periodo de
gracia por das, horas, minutos o segundos.
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/hdb7 7days 7days
/dev/hdb5 7days 7days
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
126

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

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:
Disk quotas for user fulano (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda7 0 6144 0 0 0 0
/dev/hda5 24 6144 0 10 0 0
Aplicando cuotas masivamente.
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`



9.6 COMPROBACIONES
Utilice el mandato edquota con el usuario fulano.
edquota fulano
Asigne al usuario fulano una cuota de disco de 50 MB en todas las particiones con cuota
de disco habilitada:
Disk quotas for user fulano (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda7 0 0 51200 0 0 0
/dev/hda5 24 0 51200 10 0 0
Desde otra terminal acceda hacia el sistema como el usuario fulano y ejecute el mandato
quota y observe con detenimiento la salida:
Disk quotas for user fulano (uid 501):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda7 0 0 51200 1 0 0
/dev/hda5 24 0 51200 10 0 0
Realice una copia del directorio /usr/lib como el subdirectorio ~/prueba-cuotas dentro de
su directorio de inicio:
cp -r /usr/lib ~/prueba-cuotas
Notar que llegar un momento en el que el sistema indicar que ya no es posible continuar
copiando contenido dentro de ~/prueba-cuotas debido a que se ha agotado el espacio en la
particin.
SI STEMAS OPERATI VOS ABI ERTOS 127

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Utilice de nuevo el mandato quota y observe con detenimiento la salida, en donde
aparecer un asterisco justo junto a la cantidad en la columna de bloques bloques, el cual
indica que se ha excedido la cuota del disco:
Disk quotas for user fulano (uid 501):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda7 0 0 51200 1 0 0
/dev/hda5 51200* 0 51200 7439 0 0
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








128

CARRERA DE REDES Y COMUNICACIONES CIBERTEC




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

2. Cul es el directorio que contiene los archivos logs del sistema?
(a) /var/log/xferlog
(b) /var/log/maillog
(c) /var/log
(d) /var/log/secure

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

4. Indique ejemplos donde se puede aplicar cuotas de disco?

SI STEMAS OPERATI VOS ABI ERTOS 129

CIBERTEC CARRERA DE REDES Y COMUNICACIONES















SERVIDOR NFS Y SAMBA

TEMA

Describir la funcin de los servidores NFS y Samba


OBJETIVOS ESPECFICOS

Comprender el funcionamiento del servidor NFS
Comprender el funcionamiento del servidor Samba


CONTENIDOS

Introduccin a NFS
Funcionamiento NFS
Configuracin del servidor NFS
Configuracin del cliente NFS
Introduccin a Samba
Configuracin de samba cliente
Configuracin de samba Servidor

UNIDAD
10
130

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

10.1 SERVICIO NFS INTRODUCCIN

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.




10.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.

Todas las versiones de NFS pueden utilizar el Protocolo de control de transmisiones (TCP)
ejecutndose sobre una red IP. En el caso de NFSv4, ste lo requiere. NFSv2 y NFSv3
pueden utilizar el Protocolo de datagrama de usuarios (UDP) sobre una red IP para
proporcionar conexiones de red sin supervisin (stateless) entre el cliente y el servidor.

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.
SI STEMAS OPERATI VOS ABI ERTOS 131

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
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.

Cuando se autentifique utilizando NFSv4, se crea una conexin atenta y, de forma opcional,
est disponible la autenticacin de usuarios y grupos con Kerberos. NFSv4 no tiene
interaccin con portmapper, rpc.mountd, rpc.lockd y rpc.statd, pues estos han sido
incorporados en el kernel. NFSv4 escucha en el puerto TCP 2049.

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).

Los TCP wrappers leen los archivos /etc/hosts.allow y /etc/hosts.deny para determinar si a
un cliente particular o red tiene acceso o no al servicio NFS.

Despus de que al cliente se le permite acceso gracias a un TCP wrapper, el servidor NFS
recurre a su archivo de configuracin, /etc/exports, para determinar si el cliente tiene
suficientes privilegios para acceder a los sistemas de archivos exportados. Una vez
otorgado el acceso, todas las operaciones de archivos y de directorios estn disponibles
para el usuario.


10.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.

. portmap. El servicio RPC para Linux; responde a las peticiones para servicios RPC
y configura las conexiones al servicio RPC solicitado. No se utiliza con NFSv4.

Los siguientes procesos RPC facilitan los servicios NFS:

. rpc.mountd . Este proceso recibe las peticiones de montaje desde clientes NFS y
verifica que el sistema de archivos solicitado est actualmente exportado. Este
proceso es iniciado automticamente por el servicio nfs y no requiere de la
configuracin del usuario. No se utiliza con NFSv4.

. 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.

132

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

. rpc.lockd . Un proceso opcional que permite a los clientes NFS bloquear archivos
en el servidor. Esto corresponde al servicio nfslock. No se utiliza con NFSv4.

. rpc.statd. Este proceso implementa el protocolo RPC Network Status Monitor
(NSM) el cual notifica a los clientes NFS cuando un servidor NFS es reiniciado luego
de haber sido apagado abruptamente. Este proceso es iniciado automticamente por
el servicio nfslock y no requiere configuracin por parte del usuario. No se utiliza con
NFSv4.

. rpc.rquotad . Proporciona informacin de cuotas de usuario para los usuarios
remotos. Este proceso se inicia automticamente por el servicio nfs y no requiere
configuracin por parte del usuario.
. rpc.idmapd . Este proceso proporciona al cliente y servidor NFSv4 llamadas
ascendentes (upcalls) que hacen corresponder los nombres NFSv4 (los cuales son
cadenas en la forma usuario@dominio) y los UIDs y GIDs locales. Para que idmapd
funcione con NFSv4, el /etc/idmapd.conf debe estar configurado. Se requiere este
servicio para su uso con NFSv4.

. rpc.svcgssd . Este proceso proporciona al servidor los mecanismos de transporte
para el proceso de autenticacin (Kerberos versin 5) con NFSv4. Se requiere este
servicio para su uso con NFSv4.

. rpc.gssd. Este proceso proporciona al cliente los mecanismos de transporte para el
proceso de autenticacin (Kerberos versin 5). Se requiere este servicio para su uso
con NFSv4.


10.4 INICIAR Y DETENER NFS

Para ejecutar un servidor NFS, debe estar ejecutndose el servicio portmap. Para verificar
que portmap est activo, escriba el comando siguiente como root:
/sbin/service portmap status, Si el servicio portmap se est ejecutando, entonces se puede
iniciar nfs.

Para iniciar un servidor NFS, como root escriba:

/sbin/service nfs start

Para detener el servidor, como usuario root, escriba:

/sbin/service nfs stop

La opcin restart es un atajo para detener y luego iniciar NFS. Esta es la forma ms
eficiente de hacer que los cambios en la configuracin tomen efecto luego de
modificar el archivo de configuracin por NFS.

Para reiniciar el servidor, como usuario root, escriba:

/sbin/service nfs restart

La opcin condrestart (reinicio condicional) solamente inicia nfs si este est
actualmente ejecutndose. Esta opcin es til para los scripts, porque no inicia el
demonio si este no se est ejecutando.

SI STEMAS OPERATI VOS ABI ERTOS 133

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Para reiniciar condicionalmente el servidor, como root escriba:

/sbin/service nfs condrestart

Para recargar el archivo de configuracin del servidor NFS sin reiniciar el servicio,
como root escriba:

/sbin/service nfs reload

Por defecto, el servicio nfs no arranca automticamente en el momento del inicio.
Para configurar NFS para que inicie en el momento del arranque, utilice una utilidad
de initscript, tal como /sbin/chkconfig, /sbin/ntsysv o la Herramienta de configuracin
de servicios.


10.5 CONFIGURACIN DEL SERVIDOR NFS

Existen tres formas de configurar un servidor NFS en Linux: usando la Herramienta de
configuracin del servidor NFS (system-config-nfs), modificando manualmente su archivo
de configuracin (/etc/exports), o utilizando el comando /usr/sbin/exportfs.




134

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

10.5.1 El archivo de configuracin /etc/exports

El archivo /etc/exports controla cules sistemas de archivos son exportados a las mquinas
remotasy especifica opciones. Las lneas en blanco son ignoradas, se pueden comentar
lneas con el smbolo # y las lneas largas pueden ser divididas con una barra invertida (\).
Cada sistema de archivos exportado debe tener su propia lnea y cualquier lista de hosts
autorizadas colocada despus de un sistema de archivos exportado, debe estar separada
por un espacio. Las opciones para cada uno de los hosts deben ser colocadas entre
parntesis directamente detrs del identificador del host, sin ningn espacio de separacin
entre el host y el primer parntesis.

Una lnea para un sistema de archivos exportado tiene la estructura siguiente:
<export > <host1> (<options>) <host2> (<options>) <host3> (<options>)

En esta estructura, reemplace
<export> :con el directorio a exportar, reemplace

<host1> : con el host o la red a la cual va a compartir el directorio y reemplace
<options> : con las opciones para ese host o red. Los hosts adicionales se pueden
especificar en una lista separada por espacios.

Se pueden usar los mtodos siguientes para especificar nombres de host:
. host nico .Cuando una mquina en particular es especificada con nombre completo
de dominio, nombre de mquina o direccin IP.

. comodines . Usamos un carcter * o ? para referirnos a un grupo de nombres
completos de dominio o direcciones IP o que coincidan con una cadena particular de
letras. Los comodines no se deberan de utilizar con direcciones IP; sin embargo, es
posible para estos funcionar accidentalmente si fallan las bsquedas de DNS
inversas.

Tenga cuidado cuando especifique comodines con nombres de dominio completos, pues
tienden a ser ms exactos de lo que usted cree. Por ejemplo, el uso de *.ejemplo.com como
comodn, permitir a ventas.ejemplo.com acceder al sistema de archivos exportado, pero no
a bob.ventas.ejemplo.com. Para coincidir ambas posibilidades, debera usar *.ejemplo.com y
tambin *.*.ejemplo.com

. redes IP . Permite la coincidencia de hosts basados en sus direcciones IP dentro de
una red ms grande. Por ejemplo, 192.168.0.0/28 permite al acceso a las primeras 16
direcciones IP, desde la 192.168.0.0 a la 192.168.0.15, acceder al sistema de
archivos exportado, pero no a la 192.168.0.16 y superiores.

. grupos de redes. Permite usar un nombre de grupo de red NIS, escrito como
@<group-name> Esto pone al servidor NIS controlando el acceso de este sistema de
archivos, donde los usuarios pueden ser aadidos o borrados de un grupo NIS sin
que afecte a /etc/exports. En su forma ms sencilla, el archivo /etc/exports slo
especifica el directorio a exportar y los hosts que pueden usarlo, como en el ejemplo
siguiente:

/exported/directory bob.example.com

En el ejemplo, bob.example.com puede montar /exported/directory/. Como no se especifica
ninguna opcin en este ejemplo, tomarn efecto las siguientes opciones predeterminadas de
NFS:
SI STEMAS OPERATI VOS ABI ERTOS 135

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

. ro . Se montan los sistemas de archivos como de slo lectura (read-only). Los host
remotos no pueden hacer cambios a los datos compartidos en el sistema de
archivos. Para permitir que los hosts puedan hacer cambios, debe especificar la
opcin rw (lectura-escritura, read-write).

. wdelay. Provoca que el servidor NFS retrase el escribir a disco si sospecha que otra
peticin de escritura es inminente. Esto puede mejorar el rendimiento reduciendo las
veces que se debe acceder al disco por comandos de escritura separados. Use
nofiwdelay para desactivar esta opcin, la cual
slo funciona si est usando la opcin sync
.
. rootfisquash . Previene a los usuarios root conectados remotamente de tener
privilegios como root asignndoles el id del usuario de nobody. Esto reconvierte el
poder del usuario root remoto al de usuario local ms bajo, previniendo la alteracin
desautorizada de archivos en el servidor remoto. Alternativamente, la opcin
nofirootfisquash lo desactiva. Para reconvertir a todos los
usuarios, incluyendo a root, use la opcin allfisquash. Para especificar los ID de
usuario y grupo para usar con usuarios remotos desde un host particular, utilice las
opciones anonuid y anongid, respectivamente. De esta manera, puede crear una
cuenta de usuario especial para que los usuarios NFS remotos compartan y
especificar (anonuid= uid-value, anongid= gid-value ),

donde
<uid-value>es el nmero de ID del usuario y

<gid-value>es el nmero de ID del grupo.

Cada valor predeterminado para un sistema de archivos exportado debe ser explcitamente
ignorado.

Por ejemplo, si no se especifica la opcin rw, entonces el sistema de archivos es exportado
como de slo lectura. Lo siguiente es una lnea de muestra de /etc/exports la cual
sobreescribe dos opciones predeterminadas:

/another/exported/directory 192.168.0.3(rw,sync)
En este ejemplo 192.168.0.3 puede montar /another/exported/directory/ como lectura/escritura
y todas las transferencias al disco son efectuadas antes de completar la peticin de escritura
del cliente.

Adicionalmente, hay otras opciones que estn disponibles que no tienen especificado un
valor predeterminado.

Estas incluyen la habilidad de desactivar la verificacin por subdirectorios, permitir el acceso
desde puertos inseguros y permitir bloquear archivos inseguros (necesario para algunas
implementaciones antiguas de clientes NFS). Vea la pgina man de exports para estas
opciones menos usadas.

10.5.2 El comando exportfs

Cada sistema de archivos que se exporta a usuarios remotos a travs de NFS, as como los
niveles de acceso relativos a ellos, son listados en el archivo /etc/exports. Cuando comienza
el servicio nfs, se lanza el comando /usr/sbin/exportfs y lee este archivo, pasa el control a
136

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

rpc.mountd (si es NFSv2 or NFSv3) para el proceso de montaje real, luego a rpc.nfsd donde
los sistemas de archivos estn disponibles a los usuarios remotos.

Cuando se ejecuta manualmente, el comando /usr/sbin/exportfs permite al superusuario
exportar o no de forma selectiva, directorios concretos sin reiniciar los servicios NFS.
Cuando se le pasan las opciones apropiadas, el comando /usr/sbin/exportfs escribe los
sistemas de archivos exportados
a /var/lib/nfs/xtab. Como rpc.mountd se refiere al archivo xtab para decidir privilegios de acceso
a un sistema de archivos, los cambios en la lista de sistemas de archivos exportados toman
efecto inmediatamente.

Lo siguiente es una lista de las opciones ms comunes disponibles para /usr/sbin/exportfs:

. -r . Provoca que todos los directorios listados en /etc/exports sean exportados
construyendo una nueva lista de exportacin en /etc/lib/nfs/xtab. Esta opcin refresca
la lista de exportacin con cualquier cambio que hubiramos realizado en /etc/exports.

. -a . Provoca que todos los directorios sean exportados o no, dependiendo de qu
otras opciones hemos pasado a /usr/sbin/exportfs. Si no se pasan otras opciones,
/usr/sbin/exportfs exporta todos los sistemas de archivos especificados en /etc/exports.

. -o sistema-de-archivos . Permite especificar directorios a exportar que no estn
listados en /etc/exports. Reemplace sistema-de-archivos con los sistemas de archivos
adicionales a exportar. Estos sistemas de archivos deben tener el mismo formato en
que fueron especificados en /etc/exports. Esta opcin se utiliza a menudo para probar
un sistema de archivos antes de aadirlo de forma permanente a la lista de sistemas
a exportar.

. -i. Ignora /etc/exports; slo las opciones dadas desde la lnea de comandos son
usadas para definir los sistemas de archivos exportados.
. -u . No exporta todos los directorios compartidos. El comando /usr/sbin/exportfs ua
suspende la comparticin de archivos NFS mientras que mantiene todos los
demonios NFS activos. Para reactivar NFS, teclee exportfs -r.

. -v . Operacin descriptiva, donde los sistemas de archivos exportados o dejados de
exportar son mostrados en gran detalle al ejecutarse el comando exportfs. Si no se
pasan opciones al comando /usr/sbin/exportfs, mostrar una lista de los sistemas de
archivos actualmente exportados.


10.6 ARCHIVOS DE CONFIGURACIN DE CLIENTES NFS

Las comparticiones NFS son montadas en el lado del cliente usando el comando mount. El
formato del comando es como sigue:

mount -t <nfs-type>-o <options><host>:</remote/export></local/directory>

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.

SI STEMAS OPERATI VOS ABI ERTOS 137

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Si est accediendo a una comparticin NFS emitiendo manualmente el comando mount, el
sistema de archivos debe ser remontado manualmente despus de reiniciar el sistema.


10.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.

Una muestra de lnea de /etc/fstab para montar un NFS exportado ser parecida a:

<server>:</remote/export></local/directory><nfs-type><options>0 0

Reemplace <server> con el nombre de la mquina, direccin IP o nombre de dominio
totalmente cualificado del servidor que exporta el sistema de archivos.

Reemplace </remote/export>con la ruta al directorio exportado.
Sustituya </local/directory;>con el sistema de archivos local en el cual se montar
el directorio exportado. Este punto de montaje debe existir antes de que /etc/fstab
sea ledo o el montaje fallar.

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


10.7 SERVICIO SAMBA INTRODUCCIN
10.7.1 Acerca de Samba.
SAMBA es un conjunto de programas, originalmente creados por Andrew Tridgell y
actualmente mantenidos por The SAMBA Team, bajo la Licencia Publica General GNU, y
que implementan en sistemas basados sobre UNIX el protocolo SMB. Sirve como
reemplazo total para Windows NT, Warp, NFS o servidores Netware.

Necesitar tener instalados los siguientes paquetes, que seguramente vienen incluidos en
los discos de instalacin de su distribucin predilecta:

138

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

samba: Servidor SMB.
samba-client: Diversos clientes para el protoclo SMB.
samba-
common:
Ficheros necesarios para cliente y servidor.
Consulte a la base de datos RPM del sistema si se encuentran instalados estos paquetes,
utilizando el siguiente mandato:
rpm -q samba samba-client samba-common
Si se utiliza Red Hat Enterprise Linux, solo bastar realizar lo siguiente para instalar o
actualizar la programtica necesaria:
up2date -i samba samba-client
Si utiliza CentOS 4 o White Box Enterprise Linux 4, solo bastar realizar lo siguiente para
instalar o actualizar la programtica necesaria:
yum -y install samba samba-client


10.8 CONFIGURACIN BASICA DE SAMBA
Para la mayora de los casos la configuracin de Samba como servidor de archivos es
suficiente.

10.9 ALTA DE CUENTAS DE USUARIO
Es importante sincronizar las cuentas entre el servidor Samba y las estaciones Windows.
Es decir, si en una mquina con Windows ingresamos como el usuario "paco" con clave de
acceso "elpatito16", en el servidor Samba deber existir tambin dicha cuenta con ese
mismo nombre y la misma clave de acceso. Como la mayora de las cuentas de usuario que
se utilizarn para acceder hacia samba no requieren acceso al interprete de mandatos del
sistema, no es necesario asignar clave de acceso con el mandato passwd y se deber
definir /sbin/nologin o bien /bin/false como interpete de mandatos para la cuenta de
usuario involucrada.
useradd -s /sbin/nologin usuario-windows
smbpasswd -a usuario-windows
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:
SI STEMAS OPERATI VOS ABI ERTOS 139

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
useradd -s /bin/bash usuario-windows
passwd usuario-windows
smbpasswd -a usuario-windows


10.10 EL FICHERO lMHOSTS
Es necesario empezar resolviendo localmente los nombres NetBIOS asocindolos con
direcciones IP correspondientes. Para fines prcticos el nombre NetBIOS debe tener un
mximo de 11 caracteres. Normalmente tomaremos como referencia el nombre corto del
servidor o el nombre corto que se asign como alias a la interfaz de red. Este lo
estableceremos en el fichero /etc/samba/lmhosts, en donde encontraremos lo siguiente:
127.0.0.1 localhost
Debemos aadir entonces el nombre que hayamos elegido asociado a la direccin IP que se
tenga dentro de la red local. Opcionalmente podr aadir tambin los nombres y direccin
IP del resto de las mquinas que conformen la red local. La separacin de espacios se hace
con un tabulador.

Ejemplo:
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


10.11 CONFIGURACIN DEL SERVIDOR SAMBA

10.11.1 Parmetros principales del fichero smb.conf.
Modifique el fichero /etc/samba/smb.conf con cualquier editor de texto. Dentro de este
notar que la informacin que le ser de utilidad viene comentada con un smbolo # y los
ejemplos con ; (punto y coma), siendo estos ltimos los que tomaremos como referencia.
Empezaremos por establecer el grupo de trabajo editando el valor del parmetro workgroup
asignando un grupo de trabajo deseado:
workgroup = MIGRUPO
Opcionalmente puede establecer con el parmetro netbios name otro nombre distinto para
el servidor si acaso fuese necesario, pero siempre tomando en cuenta que dicho nombre
deber corresponder con el establecido en el fichero /etc/samba/lmhosts:
netbios name = maquinalinux
140

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

El parmetro server string es de carcter descriptivo. Puede utilizarse un comentario breve
que de una descripcin del servidor.
server string = Servidor Samba %v en %L
10.11.2 Parmetros tiles para la seguridad.
La seguridad es importante y esta se puede establecer primeramente estableciendo la lista
de control de acceso que definir que mquinas o redes podrn acceder hacia el servidor. El
parmetro hosts allow sirve para determinar esto. Si la red consiste en las mquinas con
direccin IP desde 192.168.1.1 hasta 192.168.1.254, el rango de direcciones IP que se
definir en hosts allow ser 192.168.1., de modo tal que slo se permitir el acceso dichas
mquinas. Note por favor el punto al final de cada rango. Modifique sta, de manera que
quede del siguiente modo:
hosts allow = 192.168.1. 127.
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

10.11.3 Impresoras en Samba.
Las impresoras se comparten de modo predeterminado, as que solo hay que realizar
algunos ajustes. Si se desea que se pueda acceder hacia la impresora como usuario
invitado sin clave de acceso, basta con aadir public = Yes en la seccin de impresoras del
siguiente modo:
[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.
SI STEMAS OPERATI VOS ABI ERTOS 141

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
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
Se pude definir tambin a un usuario o bien un grupo (@grupo_que_sea) para la
administracin de las colas de las impresoras:
[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
Con lo anterior se define que el usuario fulano y quien pertenezca al grupo
opers_impresion podrn realizar tareas de administracin en las impresoras.
10.11.4 Compartiendo directorios a travs de Samba.
Para los directorios o volmenes que se irn a compartir, en el mismo fichero de
configuracin encontrar distintos ejemplos para distintas situaciones particulares. En
general, puede utilizar el siguiente ejemplo que funcionar para la mayora:
[Lo_que_sea]
comment = Comentario que se le ocurra
path = /cualquier/ruta/que/desee/compartir
El volumen puede utilizar cualquiera de las siguientes opciones:
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.
142

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

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 antecedidos por una
@. Ejemplo: fulano, mengano, @administradores
directory mask Es lo mismo que directory mode. Define que permiso
en el sistema tendrn los subdirectorios creados
dentro del recurso. Ejemplos: 1777
create mask Define que permiso en el sistema tendrn los nuevos
ficheros creados dentro del recurso. Ejemplo: 0644
En el siguiente ejemplo se compartir a travs de Samba el recurso denominado ftp, el cual
est localizado en el directorio /var/ftp/pub del disco duro. Se permitir el acceso a
cualquiera pero ser un recurso de solo lectura salvo para los usuarios administrador y
fulano. Todo directorio nuevo que sea creado en su interior tendr permiso 755 y todo
fichero que sea puesto en su interior tendr permiso 644.
[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

10.11.5 Configuracin avanzada de Samba.
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.
SI STEMAS OPERATI VOS ABI ERTOS 143

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
10.11.6 Re-asignacin de grupos de Windows en Samba.
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:
net groupmap list
Devolver la siguiente informacin:
System Operators (S-1-5-32-549) -> -1
Domain Admins (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-512)
-> -1
Replicators (S-1-5-32-552) -> -1
Guests (S-1-5-32-546) -> -1
Domain Guests (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-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
Lo anterior corresponde al mapa de los grupos que, de modo predeterminado, utilizar
Samba si ste fuese configurado como Controlador Primario de Dominio. XXXXXXXXXX-
XXXXXXXXXX-XXXXXXXXXX corresponde a un nmero generado aleatoriamente al
iniciarse Samba por primera vez. Tome nota de dicho nmero, ya que lo requerir ms
adelante para re-asignar los nombres al espaol en el mapa de grupos.
Los grupos anteriormente descritos trabajarn perfecta y limpiamente asocindolos contra
grupos en el sistema, pero solo si utiliza alguna versin de Windows en ingles. Si utiliza
alguna versin de Windows en espaol, habr que re-asignar los nombres de los grupos
a los correspondientes al espaol y asociarles a grupos en el sistema, esto a fin de
permitir asignar usuarios a dichos grupos y de este modo delegar tareas de administracin
del mismo modo que en Windows.
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
144

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

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:
net groupmap modify \
ntgroup="Nombre grupo Windows en espaol" \
sid="nmero-de-identidad-en-sistema" \
unixgroup="grupo_en_linux" \
comment="comentario descriptivo acerca del grupo"
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

net groupmap modify ntgroup="Administradores" \
sid="S-1-5-32-544" unixgroup=administradores \
comment="Los administradores tienen acceso completo y sin restricciones al
equipo o dominio"

net groupmap modify ntgroup="Admins. del dominio" \
sid="S-1-5-21-$SIDSAMBA-512" unixgroup=admins_dominio \
comment="Administradores designados del dominio"

net groupmap modify ntgroup="Duplicadores" \
sid="S-1-5-32-552" unixgroup=duplicadores \
comment="Pueden duplicar archivos en un dominio"

net groupmap modify ntgroup="Invitados del dominio" \
sid="S-1-5-21-$SIDSAMBA-514" unixgroup=invitados \
comment="Todos los invitados del dominio"

net groupmap modify ntgroup="Invitados" \
sid="S-1-5-32-546" unixgroup=invitados \
comment="Los invitados tienen de modopredeterminado el mismo acceso que
los miembros del grupo Usuarios, excepto la cuenta Invitado que tiene mas
restricciones"

net groupmap modify ntgroup="Operadores de copias" \
SI STEMAS OPERATI VOS ABI ERTOS 145

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
sid="S-1-5-32-551" unixgroup=opers_copias \
comment="Los operadores de copia pueden sobrescribir restricciones de
seguridad con el unico proposito de hacer copias de seguridad o restaurar
archivos"

net groupmap modify ntgroup="Opers. de cuentas" \
sid="S-1-5-32-548" unixgroup=opers_cuentas \
comment="Pueden administrar cuentas de usuarios y grupos del dominio"

net groupmap modify ntgroup="Opers. de impresin" \
sid="S-1-5-32-550" unixgroup=opers_impresion \
comment="Pueden operar impresoras del dominio"

net groupmap modify ntgroup="Opers. de servidores" \
sid="S-1-5-32-549" unixgroup=opers_sistema \
comment="Pueden administrar sistemas del dominio"

net groupmap modify ntgroup="Usuarios avanzados" \
sid="S-1-5-32-547" unixgroup=usrs_avanzados \
comment="Los usuarios avanzados tienen mas derechos administrativos con
algunas restricciones. De este modo, pueden ejecutar aplicaciones heredadas
junto con aplicaciones certificadas"

net groupmap modify ntgroup="Usuarios del dominio" \
sid="S-1-5-21-$SIDSAMBA-513" unixgroup=usuarios_dominio \
comment="Todos los usuarios del dominio"

net groupmap modify ntgroup="Usuarios" \
sid="S-1-5-32-545" unixgroup=usuarios \
comment="Los usuarios no pueden hacer cambios accidentales o
intencionados en el sistema. Pueden ejecutar aplic. certificadas, pero no la
mayora de las heredadas"

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.
Una vez hecho lo anterior, al volver a realizar lo siguiente:
net groupmap list
Se deber de mostrar ahora esto otro:
Opers. de servidores (S-1-5-32-549) -> opers_sistema
Admins. del dominio (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-
512) -> admins_dominio
Duplicadores (S-1-5-32-552) -> duplicadores
Invitados (S-1-5-32-546) -> invitados
Invitados del dominio (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-
XXXXXXXXXX-514) -> invitados
Usuarios avanzados (S-1-5-32-547) -> usrs_avanzados
Opers. de impresin (S-1-5-32-550) -> opers_impresion
146

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Administradores (S-1-5-32-544) -> administradores
Opers. de cuentas (S-1-5-32-548) -> opers_cuentas
Usuarios del dominio (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-
XXXXXXXXXX-513) -> usuarios_dominio
Operadores de copias (S-1-5-32-551) -> opers_copias
Usuarios (S-1-5-32-545) -> usuarios
De este modo, si por ejemplo, se agrega al usuario fulano al grupo admins_dominio, se
tendr el mismo efecto que si se hiciera lo mismo en Windows agregando al usuario al grupo
Admins. del dominio. Esto por supuesto solamente tendr utilidad si Samba se configura y
utiliza como Controlador Primario de Dominio.
11.11. Alta de cuentas de usuario en Controlador Primario de Dominio.
Si se configur Samba para funcionar como Controlador Primario de Dominio, ser
necesario asignar a root una clave de acceso en Samba, la cual por supuesto puede ser
diferente a la del sistema, debido a que las estaciones de trabajo necesitan autenticar
primero con el usuario root de Samba para poder unirse dominio y poder crear de este modo
una cuenta de mquina en el sistema a travs del parmetro add machine script ya
descrito anteriormente.
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.
useradd -s /sbin/nologin -G usuarios,usuarios_dominio usuario-windows
smbpasswd -a usuario-windows
Si el usuario ya existiese, solo ser necesario agragarlo a los grupos usuarios y
usuarios_dominio con gpassswd del siguiente modo:
gpasswd -a usuario-windows usuarios
gpasswd -a usuario-windows usuarios_dominio
En teora en el directorio definido para el recurso Profiles se deben crear automticamente
los directorios de los usuarios donde se almacenarn los perfiles. De ser necesario es
posible generar stos directorios utilizando el siguiente guin:
cd /home
for user in *
do
mkdir -p /var/lib/samba/profiles/$user
chown $user.$user /var/lib/samba/profiles/$user
done






SI STEMAS OPERATI VOS ABI ERTOS 147

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
10.12 PARAMETROS DE CONFIGURACIN AVANZADA EN EL
FICHERO smb.conf

10.12.1. Anunciando el servidor Samba en los grupos de trabajo.
La opcin remote announce se encarga de que el servicio nmbd se anuncie a si mismo de
forma peridica hacia una red en particular y un grupo de trabajo especfico. Esto es
particularmente til si se necesita que el servidor Samba aparezca no solo en el grupo de
trabajo al que pertenece sino tambin otros grupos de trabajo. El grupo de trabajo de destino
puede estar en donde sea mientras exista una ruta y sea posible la transmisin exitosa de
paquetes.
remote announce = 192.168.1.255/MI-DOMINIO 192.168.2.255/OTRO-
DOMINIO
El ejemplo anterior defini que el servidor Samba se anuncie a si mismo al los grupos de
trabajo MI-DOMINIO y OTRO-DOMINIO en las redes cuyas IP de transmisin son
192.168.1.255 y 192.168.2.255 correspondientemente.

10.12.2. Ocultando y denegando acceso a ficheros.
No es conveniente que los usuarios acceder o bien puedan ver la presencia de ficheros
ocultos en el sistema, es decir ficheros cuyo nombre comienza con un punto,
particularmente si acceden a su directorio personal en el servidor Samba (.bashrc,
.bash_profile, .bash_history, etc.). Puede utilizarse el parmetro hide dot files para
mantenerlos ocultos.
hide dot files = Yes
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:
veto files = /*Security*/*.tmp/
10.12.3. Opciones para cliente o servidor Wins.
Puede habilitar convertirse en servidor WINS o bien utilizar un servidor WINS ya existente.
Se puede ser un servidor WINS o un cliente WINS, pero no ambas cosas a al vez.
Si se va ser el servidor WINS, debe habilitarse lo siguiente:
wins support = Yes
Si se va a utilizar un servidor WINS ya existente, debe descomentar la
siguiente lnea y especificar que direccin IP utiliza dicho servidor WINS:
148

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

wins server = 192.168.1.1
10.12.4. Opciones especficas para Controlador Primario de Dominio (PDC).
Si se va a configurar Samba como Controlador Primario de Dominio, se debe especificar
todos los parmetros descritos a continuacin.
Si se quiere que las claves de acceso del sistema y Windows se mantengan sincronizadas,
es necesario descomentar las siguiente lenas:
unix password sync = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *New*UNIX*password* %n\n *ReType*new*UNIX*password*
%n\n
*passwd:*all*authentication*tokens*updated*successfully*
El parmetro local master define al servidor como examinador del dominio (o master
browser); El parmetro domain master define al servidor maestro del dominio; El parmetro
preferred master define al servidor como maestro del domino preferido en caso de haber
ms servidores presentes en el mismo dominio como controladores de dominio; El
parmetro time server se utiliza para definir que las estaciones debern sincronizar la hora
con el servidor al unirse al dominio; El parmetro domain logons define que el servidor
permitir a las estaciones autenticar contra Samba.
local master = Yes
domain master = Yes
preferred master = Yes
time server = Yes
domain logons = Yes
La configuracin de Controlador Primario de Dominio requiere adems definir donde se
almacenarn los perfiles de los usuarios. Windows 95, 98 y ME requieren se defina con el
parmetro logon home, en tanto que Windows NT, 2000 y XP requieren se haga con el
parmetro logon path. Para efectos prcticos y de previsin, utilice ambos parmetros y
defina la unidad H para dicho volumen:
logon path = \\%L\Profiles\%U
logon home = \\%L\%U\.profile
logon drive = H:
Si se va a utilizar Samba como Controlador Primario de Dominio, es necesario establecer el
guin que ejecutarn las estaciones Windows al conectarse hacia el servidor. Esto se hace
a travs del parmetro logon script el cual puede definir o bien un guin a utilizar por cada
usuario (%u.bat) o bien por cada mquina (%m.bat) o bien de modo general para todos
(logon.cmd). Para no complicar las cosas, defina inicialmente un guin general para todos
del siguiente modo:
logon script = logon.cmd
El fichero /var/lib/samba/netlogon/logon.cmd deber contener algo como lo siguiente:
SI STEMAS OPERATI VOS ABI ERTOS 149

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
REM windows client logon script
REM

net time \\mi-servidor /SET /YES
net use H: \\mi-servidor\homes /PERSISTENT:NO
El Controlador Primario de Dominio va a necesitar tambin se definan los guiones a ejecutar
para distintas tareas como alta de mquinas, usuarios y grupos as como la baja de estos.
add user script = /usr/sbin/useradd %u
add machine script = /usr/sbin/useradd -d /dev/null -g 100 -s /bin/false -c
"Cuenta de mquina" -M %u
delete user script = /usr/sbin/userdel %u
delete group script = /usr/sbin/groupdel %g
add user to group script = /usr/bin/gpasswd -a %u %g
set primary group script = /usr/sbin/usermod -g %g %u
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.
Directorio para Netlogon y perfiles en Controlador Primario de Dominio (PDC).
Si se va a utilizar Samba como Controlador Primario de Dominio, es necesario definir los
recursos donde residir netlogon y tambin donde se almacenarn los perfiles de los
usuarios:
[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
create mask = 0600
directory mask = 0700
Genere con el mandato mkdir los directorios /var/lib/samba/profiles y
/var/lib/samba/netlogon. El directorio /var/lib/samba/profiles deber pertenecer a root y al
grupo users y tener permiso 1777 a fin de permitir crear el directorio de perfil
correspondiente para cada usuario.
mkdir -p -m 1777 /var/lib/samba/profiles
mkdir -p /var/lib/samba/netlogon
150

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

chgrp users /var/lib/samba/profiles



10.13 INICIAR EL SERVICIO Y AADIRLO AL ARRANQUE DEL
SISTEMA
Si iniciar Samba por primera vez realice lo siguiente:
/sbin/service smb start
Si va a reiniciar el servicio, realice lo siguiente:
/sbin/service smb restart
Para que Samba inicie automticamente cada vez que inicie el servidor solo ejecute el
siguiente mandato:
/sbin/chkconfig smb on


10.14 ACCEDIENDO HACIA SAMBA
10.14.1 Modo texto.
Smbclient.
Indudablemente el mtodo ms prctico y seguro es el mandato smbclient. Este permite
acceder haca cualquier servidor Samba o Windows como si fuese el mandato ftp en modo
texto.
Para acceder al cualquier recurso de alguna mquina Windows o servidor SAMBA
determine primero que volmenes o recursos compartidos posee est. utilice el mandato
smbclient del siguiente modo:
smbclient -U usuario -L alguna_maquina
Lo cual le devolvera ms menos lo siguiente:
Domain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

Sharename Type Comment
--------- ---- -------
homes Disk Home Directories
netlogon Disk Network Logon Service
ftp Disk ftp
IPC$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en mi-
servidor)
SI STEMAS OPERATI VOS ABI ERTOS 151

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
ADMIN$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en mi-
servidor)
epl5900 Printer Created by redhat-config-printer 0.6.x
hp2550bw Printer Created by redhat-config-printer 0.6.x
Anonymous login successful
Domain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

Server Comment
--------- -------
mi-servidor Servidor Samba 3.0.7-1.3E en mi-servidor

Workgroup Master
--------- -------
MI-DOMINIO MI-SERVIDOR
La siguiente corresponde a la sintaxis bsica para poder navegar los recursos compartidos
por la mquina Windows o el servidor SAMBA:
smbclient //alguna_maquina/recurso -U usuario
Ejemplo:
smbclient //LINUX/FTP -U jbarrios
Despus de ejecutar lo anterior, el sistema solicitar se proporcione la clave de acceso del
usuario jbarrios en el equipo denominado LINUX.
smbclient //LINUX/FTP -U jbarrios
added interface ip=192.168.1.254 bcast=192.168.1.255 nmask=255.255.255.0
Password:
Domain=[miusuario] OS=[Unix] Server=[Samba 2.2.1a]
smb: \>
Pueden utilizarse virtualmente los mismos mandatos que en el interprete de ftp, como seran
get, mget, put, del, etc.
Por montaje de unidades de red.
Si necesita poder visualizar desde GNU/Linux a las mquinas con Windows e interactuar
con los directorios compartidos por ests, necesitar realizar algunos pasos adicionales. De
manera predeterminada, y por motivos de seguridad, solo root puede utilizar los mandatos
smbmnt y smbumount. Deber entonces establecer permisos de SUID a dichos mandatos.
Puede hacerlo ejecutando, como root lo siguiente:
chmod 4755 /usr/bin/smbmnt
chmod 4755 /usr/bin/smbumount
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
152

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Lo cual le devolvera ms menos lo siguiente:
Anonymous login successful
Domain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

Sharename Type Comment
--------- ---- -------
homes Disk Home Directories
netlogon Disk Network Logon Service
ftp Disk ftp
IPC$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en mi-
servidor)
ADMIN$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en mi-
servidor)
epl5900 Printer Created by redhat-config-printer 0.6.x
hp2550bw Printer Created by redhat-config-printer 0.6.x
Anonymous login successful
Domain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

Server Comment
--------- -------
mi-servidor Servidor Samba 3.0.7-1.3E en mi-servidor

Workgroup Master
--------- -------
MI-DOMINIO MI-SERVIDOR

En el ejemplo anterior hay un volumen compartido llamado algn_volumen. Si queremos
montar este, debemos crear un punto de montaje. ste puede crearse en cualquier
directorio sobre el que tengamos permisos de escritura. Para montarlo, utilizamos entonces
la siguiente lnea de mandato:
smbmount //alguna_maquina/algn_volumen /punto/de/montaje/
Si la mquina Windows requiere un usuario y una clave de acceso, puede aadir a lo
anterior las opciones -username=el_necesario -password=el_requerido -
workgroup=MIGRUPO
Si la distribucin de GNU/Linux utilizada es reciente, tambin puede utilizar el ya conocido
mandato mount del siguiente modo:
mount -t smbfs -o username=el_necesario,password=el_requerido
//alguna_maquina/algn_volumen /punto/de/montaje/
Si se genera una cuenta pcguest, similar a la cuenta nobody, podemos montar volmenes
SMB sin ingresar una clave de acceso pero con privilegios restringidos, o aquellos que
definamos a un volumen accedido por un usuario invitado. Esto sera el mtodo por eleccin
para compartir volmenes en una red de rea local. Puede generarse una cuenta pcguest o
bien dejar que el sistema tome al usuario nobody. Si opta por lo primero, solo de de alta la
cuenta NO asigne clave de acceso alguna. Montar volmenes remotos como usuarios
invitado es muy sencillo. Un ejemplo real sera:
SI STEMAS OPERATI VOS ABI ERTOS 153

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
mount -t smbfs -o guest //LINUX/FTP //var/ftp
Lo anterior monta un volumen SAMBA de una mquina con GNU/Linux en otra mquina con
GNU/Linux.
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:
//LINUX/FTP /var/ftp smbfs user,auto,guest,ro,gid=100 0 0
Recurdese que el volumen compartido debe estar configurado para permitir usuarios
invitados:
[FTP]
comment = Programtica libre (RPMS)
path = /var/ftp/pub
public = Yes
guest ok = Yes

Modo grfico
Desde el entorno de GNOME
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.


154

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

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.
Uniendo mquinas al dominio del Controlador Primario de Dominio
El controlador de dominio permite utilizar a Samba como servidor de autenticacin y servidor
de archivos que adems permite almacenar el perfil, preferencias y documentos del usuario
en el servidor automticamente sin la intervencin del usuario.
Creando manualmente cuentas de mquinas
Bajo algunas circunstancias ser necesario crear cuentas de mquinas (trust accounts o
cuentas de confianza) a fin de permitir unirse al dominio. el procedimiento es simple:
/usr/sbin/useradd -d /dev/null -g 100 -s /bin/false -c "Cuenta de mquina" -M
maquina-windows$
smbpasswd -a maquina-windows$
Es de resaltar que las cuentas de mquinas deben incluir obligatoriamente un smbolo $ al
final del nombre.
Windows 95/98/ME y Windows XP Home
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:
Acceder hacia Men de inicio Configuraciones Panel de control
Red
Seleccione la pestaa de Configuracin
Seleccione Cliente de redes Microsoft
Haga clic en el botn de propiedades
Seleccione Acceder a dominio de Windows NT y especifique el dominio
correspondiente.
Clic en todos los botones de Aceptar y reinicie el sistema
Acceda con cualquier usuario que haya sido dado de alta en el servidor
Samba y que adems cuente con una clave de acceso asignada con
smbpasswd.
Windows NT
Crear manualmente la cuenta de mquina como se decribi anteriormente.
Acceder hacia Men de inicio Configuraciones Panel de control
Red.
Seleccionar la pestaa de Identificacin.
Clic en el botn de Cambiar.
SI STEMAS OPERATI VOS ABI ERTOS 155

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ingrese el nombre del dominio y el nombre del sistema. No selecione
Crear una cuenta de mquina en el Dominio.
Clic en Aceptar
Espere algunos segundos.
Deber mostrarse un mensaje emergente de confirmacin que dice
Bienvenido a MI-DOMINIO
Reinicie el sistema
Acceda con cualquier usuario que haya sido dado de alta en el servidor
Samba y que adems cuente con una clave de acceso asignada con
smbpasswd.
Windows 2000/2003 y Windows XP Profesional
Clic derecho en el icono de Mi PC.
Seleccionar Propiedades
Haga clic en la pestaa de Identificacin de red o Nombre del sistema.
Clic en el botn de Propiedades.
Clic en el botn Miembro de dominio
Ingrese el nombre del dominio y el nombre de la mquina y haga clic en el
botn de Aceptar
Aparecer un dilogo que preguntar por una cuenta y clave de acceso con
privilegios de administracin en el servidor. Especifique la root y la clave de
acceso que asign a la cuenta de root con el mandato smbpasswd (NO LA
CLAVE DE ACCESO DE ROOT EN EL SISTEMA).
Espere algunos segundos.
Deber mostrarse un mensaje emergente de confirmacin que dice
Bienvenido a MI-DOMINIO
Reinicie el sistema
Acceda con cualquier usuario que haya sido dado de alta en el servidor
Samba y que adems cuente con una clave de acceso asignada con
smbpasswd.
156

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Autoevaluacin


1. Qu permite el servicio NFS?

2. Qu permite el servicio samba?

3. Cul es el archivo de configuracin del servicio NFS?
(a) smb.conf
(b) exports
(c) resolv.conf
(d) hosts













SI STEMAS OPERATI VOS ABI ERTOS 157

CIBERTEC CARRERA DE REDES Y COMUNICACIONES















SERVIDORES DNS




TEMA

Describir el uso del Sistema de Nombres de Dominio (DNS).



OBJETIVOS ESPECFICOS

Comprender el funcionamiento del Sistema de Nombres de Dominio
Comprender el funcionamiento del Servidor DNS de solo-cach


CONTENIDOS

Introduccin a DNS
Funcionamiento del DNS
Configuracin del Servidor DNS
Configuracin y consultas del cliente DNS.
Configuracin de DNS Primario
UNIDAD
11
158

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 159

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
11.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.

La mayora de empresas son pequeas y medianas con un nmero pequeo de hosts por lo
que la responsabilidad de la administracin de los servidores de nombres recae en el
Proveedor de Servicios de Internet (ISP), esta empresa se encargar de la administracin
del espacio de nombres de su dominio DNS, alojar y gestionar los datos de su zona 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.




11.1.1 Berkeley Intenet name Domain - Bind

Bind es una aplicacin de los protocolos del Sistema de Nombre de Dominio (DNS)
y proporciona los principales componentes del Sistema de Nombre de Dominio,
incluyendo:
Un servidor DNS (named).
Una biblioteca resolver DNS (cliente DNS).
Herramientas por verificar el funcionamiento apropiado del servidor de DNS.

La pgina oficial del proyecto es: http://www.isc.org

160

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

ISC BIND se puede instalar tanto en Linux como en Windows 2008/7/8




11.2 INSTALACIN DEL SERVIDOR DNS



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.
SI STEMAS OPERATI VOS ABI ERTOS 161

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
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.


11.2.1 Demonio: named

Es el demonio encargado de activar/desactivar el servidor DNS y es manipulado
por el script /etc/init.d/named.



BIND almacena su configuracin en las siguientes ubicaciones:
/etc/named.conf Archivo de configuracin para el demonio named.
Directorio /var/named/ - Directorio de trabajo de named el cual almacena los
archivos de zonas, estadsticas y cach.


11.3 TIPOS DE SERVIDORES DNS.

Hay dos tipos de servidores de nombres:
Servidor Maestro: Tambin denominado Primario. Obtiene los
datos del dominio a partir de un fichero hospedado en el mismo
servidor.
Servidor Esclavo: Tambin denominado Secundario. Al iniciar
obtiene los datos del dominio a travs de un Servidor Maestro (o
primario), realizando un proceso denominado transferencia de zona.

162

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Un gran nmero de problemas de operacin de servidores DNS se atribuyen a las pobres
opciones de servidores secundarios para las zonas de DNS. De acuerdo al RFC 2182, el
DNS requiere que al menos tres servidores existan para todos los dominios delegados (o
zonas).

Una de las principales razones para tener al menos tres servidores para cada zona es
permitir que la informacin de la zona misma est disponible siempre y forma confiable
hacia los Clientes DNS a travs de Internet cuando un servidor DNS de dicha zona falle, no
est disponible y/o est inalcanzable.

Contar con mltiples servidores tambin facilita la propagacin de la zona y mejoran la
eficiencia del sistema en general al brindar opciones a los Clientes DNS si acaso
encontraran dificultades para realizar una consulta en un Servidor DNS. En otras palabras:
tener mltiples servidores para una zona permite contar con redundancia y respaldo del
servicio.

Con mltiples servidores, por lo general uno acta como Servidor Maestro o Primario y los
dems como Servidores Esclavos o Secundarios. Correctamente configurados y una vez
creados los datos para una zona, no ser necesario copiarlos a cada Servidor Esclavo o
Secundario, pues ste se encargar de transferir los datos de manera automtica cuando
sea necesario.

Los Servidores DNS responden dos tipos de consultas:

Consultas Iterativas (no recursivas): El cliente hace una consulta
al Servidor DNS y este le responde con la mejor respuesta que
pueda darse basada sobre su cach o en las zonas locales. Si no es
posible dar una respuesta, la consulta se reenva hacia otro Servidor
DNS repitindose este proceso hasta encontrar al Servidor DNS que
tiene la Zona de Autoridad capaz de resolver la consulta.

Consultas Recursivas: El Servidor DNS asume toda la carga de
proporcionar una respuesta completa para la consulta realizada por
el Cliente DNS. El Servidor DNS desarrolla entonces Consultas
Iterativas separadas hacia otros Servidores DNS (en lugar de
hacerlo el Cliente DNS) para obtener la respuesta solicitada.


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:

Tipo de Registro. Descripcin.
A (Address)
Registro de direccin que resuelve un nombre de un
anfitrin hacia una direccin IPv4 de 32 bits.
AAAA
Registro de direccin que resuelve un nombre de un
anfitrin hacia una direccin IPv6 de 128 bits.
SI STEMAS OPERATI VOS ABI ERTOS 163

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Tipo de Registro. Descripcin.
CNAME (Canonical
Name)
Registro de nombre cannico que hace que un nombre
sea alias de otro. Los dominios con alias obtiene los sub-
dominios y registros DNS del dominio original.
MX (Mail Exchanger)
Registro de servidor de correo que sirve para definir una
lista de servidores de correo para un dominio, as como
la prioridad entre stos.
PTR (Pointer)
Registro de apuntador que resuelve direcciones IPv4
hacia el nombre anfitriones. Es decir, hace lo contrario al
registro A. Se utiliza en zonas de Resolucin Inversa.
NS (Name Server)
Registro de servidor de nombres que sirve para definir
una lista de servidores de nombres con autoridad para un
dominio.
SOA (Start of Authority)
Registro de inicio de autoridad que especifica el Servidor
DNS Maestro (o Primario) que proporcionar la
informacin con autoridad acerca de un dominio de
Internet, direccin de correo electrnico del
administrador, nmero de serie del dominio y parmetros
de tiempo para la zona.
SRV (Service)
Registro de servicios que especifica informacin acerca
de servicios disponibles a travs del dominio. Protocolos
como SIP (Session Initiation Protocol) y XMPP
(Extensible Messaging and Presence Protocol) suelen
requerir registros SRV en la zona para proporcionar
informacin a los clientes.
TXT (Text)
Registro de texto que permite al administrador insertar
texto arbitrariamente en un registro DNS. Este tipo de
registro es muy utilizado por los servidores de listas
negras DNSBL (DNS-based Blackhole List) para la
filtracin de Spam. Otro ejemplo de uso son las VPN,
donde suele requerirse un registro TXT para definir una
llave que ser utilizada por los clientes.

Las zonas que se pueden resolver son:

Zonas de Reenvo.
Devuelven direcciones IP para las bsquedas hechas para nombres FQDN (Fully Qualified
Domain Name).

En el caso de dominios pblicos, la responsabilidad de que exista una Zona de Autoridad
para cada Zona de Reenvo corresponde a la autoridad misma del dominio, es decir, y por lo
general, quien est registrado como autoridad del dominio tras consultar una base de datos
WHOIS. Quienes compran dominios a travs de un NIC (por ejemplo ejemplo: www.nic.mx)
son quienes se hacen cargo de las Zonas de Reenvo, ya sea a travs de su propio Servidor
DNS o bien a travs de los Servidores DNS de su ISP.

Salvo que se trate de un dominio para uso en una red local, todo dominio debe ser primero
tramitado con un NIC como requisito para tener derecho legal a utilizarlo y poder propagarlo
a travs de Internet.

164

CARRERA DE REDES Y COMUNICACIONES CIBERTEC




Zonas de Resolucin Inversa.

Devuelven nombres FQDN (Fully Qualified Domain Name) para las bsquedas hechas para
direcciones IP.

En el caso de segmentos de red pblicos, la responsabilidad de que exista de que exista
una Zona de Autoridad para cada Zona de Resolucin Inversa corresponde a la autoridad
misma del segmento, es decir, y por lo general, quien est registrado como autoridad del
segmento tras consultar una base de datos WHOIS.

Los grandes ISP, y en algunos casos algunas empresas, son quienes se hacen cargo de las
Zonas de Resolucin Inversa.


11.4 CONFIGURACIN DEL SERVIDOR DNS

Para configurar el servidor DNS BIND se puede realizar creando el archivo /etc/named.conf
manualmente, pero para facilitar su configuracin recomendamos el uso de la herramienta
de configuracin Sistema de nombre de dominio (system-config-bind).

11.4.1. Archivo /etc/named.conf

Es una coleccin de sentencias que estn encerradas entre llaves { }, y terminan con
punto y coma.

No edite manualmente el archivo /etc/named.conf o cualquiera de los archivos del
directorio /var/named/ si esta usando la herramienta de configuracin Sistema de
nombre de dominio. Cualquier cambio manual a estos ser sobrescrito la siguiente
vez que use la herramienta de configuracin Sistema de nombre de dominio.

11.4.2. Configuracin del servidor BIND DNS

Haga clic en el men Sistema del panel superior, luego en Administracin, luego
en Configuracin de servidores, luego en Sistema de nombres de dominio. Se
mostrara la imagen inferior, luego haga clic en el botn Aceptar.

SI STEMAS OPERATI VOS ABI ERTOS 165

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


La siguiente imagen muestra configuracin de los archivos de zona predeterminados.



Guarde los cambios haciendo clic en Guardar, se creara el archivo /etc/named.conf usando
los archivos de zona ubicados en el directorio /var/named/
166

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


Ahora tenemos el servidor BIND DNS en su configuracin bsica para que funcione como
servidor BIND DNS de solo-cach debemos agregar la sentencia allow-query para permitir
las peticiones de consulta de los clientes DNS (resolvers).

Seleccione Servidor DNS y luego haga clic en el botn Propiedades, se
mostrara la imagen inferior:



En la vista superior derecha seleccionar la opcin allow-query, luego hacer clic
en el botn +.
En la vista inferior derecha seleccionar Direccin IPv4, luego llene los campos
de la lista, agregando la direccin de red y luego haga clic en el botn Aadir.
Haga clic en el botn Aplicar y luego en el botn Aceptar.
Guarde los cambios haciendo clic en Guardar.

SI STEMAS OPERATI VOS ABI ERTOS 167

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


Se mostrar el siguiente mensaje, clic en Si.



Luego se visualiza el siguiente mensaje, clic en Aceptar.



Otra forma de iniciar el servidor DNS es ejecutando el siguiente comando:
/etc/init.d/named start

11.4.3. Configuracin del Firewall local

En forma predeterminada el equipo tiene configurado un Firewall personal que permite
que el equipo se conecta hacia fuera sin ninguna restriccin pero cualquier peticin de
acceso al equipo es denegada.

168

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Para que las peticiones al servidor DNS de solo-cach puedan ingresar al equipo
debemos configurar el Firewall local, permitiendo nicamente que las peticiones al
puerto 53 usando los protocolos TCP y UDP estn permitidas.

Haga clic en el men Sistema del panel superior, luego en Administracin, luego en
Nivel de seguridad y cortafuegos. Se mostrara la imagen inferior:
Clic en la pestaa Opciones de Cortafuegos.
Clic en la opcin Otros puertos.
Clic en el botn Aadir.



Ingrese el nmero de puerto 53 y elija el protocolo TCP, luego clic en el botn
Aceptar.
Repita este paso para configurar puerto 53, protocolo UDP.



Se mostrara la siguiente imagen:

SI STEMAS OPERATI VOS ABI ERTOS 169

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


Haga clic en el botn Aplicar y luego en el botn Aceptar.


11.4.4. Configuracin del cliente DNS (resolver)

Para configurar el cliente DNS en un equipo Linux solo se debe modificar el archivo
/etc/resolv.conf y agregar la siguiente entrada:

nameserver ip_servidor_dns






170

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

En el caso de que el equipo cliente tenga instalado Windows:

Seleccione el icono Mis sitios de red, haga clic derecho y seleccione
Propiedades del men de opciones.
Luego haga clic sobre Conexin de rea local y seleccione la opcin
Propiedades.
Seleccione la opcin Protocolo Internet (TCP/IP) de la lista y haga clic en la
opcin Propiedades.
Elija la opcin Usar las siguientes direcciones de servidor DNS e ingrese la
direccin IP de su nuevo servidor DNS en la caja Servidor DNS preferido.
Presione el botn Aceptar y nuevamente clic en el botn Aceptar, cierre la
ventana Conexiones de red.



SI STEMAS OPERATI VOS ABI ERTOS 171

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
11.5 CONSULTAS A LOS SERVIDORES DNS

11.5.1 Comando host

Herramienta que permite realizar consultas a los servidores de nombre.



11.5.2 Comando dig

Herramienta que permite actualizar el archivo de zona named.ca y realizar consultas DNS.


172

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

11.5.2 Comando nslookup

Permite realizar consultas interactivas a los servidores 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

Authoritative answers can be found from:
pe nameserver = NS-PE.RIPE.NET.
pe nameserver = ICHU.RCP.NET.pe.
pe nameserver = EKEKO.RCPIP.NET.
ICHU.RCP.NET.pe internet address = 161.132.5.14
EKEKO.RCPIP.NET internet address = 209.45.127.2
NS-PE.RIPE.NET internet address = 193.0.12.173
> server NS-PE.RIPE.NET
Default server: NS-PE.RIPE.NET
Address: 193.0.12.173#53
Default server: NS-PE.RIPE.NET
Address: 2001:610:240:0:53:cc:12:173#53
> set q=ns
> cibertec.edu.pe
Server: NS-PE.RIPE.NET
Address: 193.0.12.173#53

Non-authoritative answer:
*** Can't find cibertec.edu.pe: No answer

Authoritative answers can be found from:
cibertec.edu.pe nameserver = NS3.FIRSTCOM.COM.pe.
cibertec.edu.pe nameserver = DNSCIB.cibertec.edu.pe.
cibertec.edu.pe nameserver = NS3.ATTLA.COM.pe.
DNSCIB.cibertec.edu.pe internet address = 200.0.119.61
> server NS3.FIRSTCOM.COM.pe
Default server: NS3.FIRSTCOM.COM.pe
Address: 200.14.241.36#53
> set q=any
> cibertec.edu.pe
Server: NS3.FIRSTCOM.COM.pe
Address: 200.14.241.36#53

cibertec.edu.pe nameserver = ns3.firstcom.com.pe.
cibertec.edu.pe nameserver = dnscib.cibertec.edu.pe.
cibertec.edu.pe nameserver = ns3.attla.com.pe.
cibertec.edu.pe
origin = dnscib.cibertec.edu.pe
mail addr = root.upc.edu.pe
serial = 3034526519
refresh = 120
retry = 900
expire = 1200
minimum = 1200
SI STEMAS OPERATI VOS ABI ERTOS 173

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
cibertec.edu.pe mail exchanger = 10 fenix-si.cibertec.edu.pe.
cibertec.edu.pe mail exchanger = 5 antispamsi.cibertec.edu.pe.
> set q=mx
> cibertec.edu.pe
Server: NS3.FIRSTCOM.COM.pe
Address: 200.14.241.36#53

cibertec.edu.pe mail exchanger = 10 fenix-si.cibertec.edu.pe.
cibertec.edu.pe mail exchanger = 5 antispamsi.cibertec.edu.pe.
> exit

debian:~#


Solo digite el texto que se encuentra resaltado en negrita.



11.6 CONFIGURACIN DEL SERVIDOR DNS PRIMARIO



Para esta configuracin tendremos que plantear un escenario ficticio:
Nombre del dominio: vasquez.com.pe
Servidores DNS proporcionados por nuestro ISP: 200.48.225.130, 200.48.225.146
Puerta de enlace: 192.168.1.1


11.6.1. Creacin de una nueva zona directa

Haga clic en el men Sistema del panel superior, luego en Administracin, luego en
Configuracin de servidores, luego en Sistema de nombres de dominio.

Clic en Nuevo.

174

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



Seleccionar el elemento a agregar, en este caso Zona.



En la seccin Clase clic en Aceptar.



Ingrese el nombre del domino, clic en Aceptar.

SI STEMAS OPERATI VOS ABI ERTOS 175

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


Se mostrara los parmetros de la zona, clic en Aceptar.



176

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Se mostrara la venta principal de configuracin
Clic en Guardar.



11.6.2 Configurando la zona

11.6.2.1. Agregando un nuevo Registro de Recurso (RR)

Seleccione el dominio.
Clic en Nuevo.

SI STEMAS OPERATI VOS ABI ERTOS 177

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


11.6.2.2.Agregando un nuevo host

Clic en A Direccin IPv4
Se mostrara una nueva ventana
Ingrese el Nombre de dominio totalmente calificado (FQDN), por ejemplo
para el servidor Web: server1.vasquez.com.pe.


178

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Marcando la casilla Crear Record de mapeo inverso se creara la zona
inversa.
Clic en Guardar.



11.6.2.3 Agregando un nuevo alias

Clic en CNAME Alias
Se mostrara una nueva ventana
Ingrese el alias en la casilla Nombre de Dominio.
Ingrese el Nombre de dominio totalmente calificado (FQDN) en la casilla
Nombre Cannico.
Clic en Aceptar.


SI STEMAS OPERATI VOS ABI ERTOS 179

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


Se mostrara la ventana principal.
Clic en Guardar.



Luego finalizada la configuracin se crearan en el directorio /var/named los
siguientes archivos:
o vasquez.com.pe.db Archivo de zona directa
o 192.168.1.db Archivo de zona inversa

180

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

11.6.2.4 Consultas al servidor DNS Primario

Desde un equipo cliente ejecutamos los comandos mostrados en la figura inferior para
comprobar el funcionamiento del servidor DNS Primario.



SI STEMAS OPERATI VOS ABI ERTOS 181

CIBERTEC CARRERA DE REDES Y COMUNICACIONES


Autoevaluacin

Segn lo expuesto en clase, de un ejemplo de cmo usar el servidor DNS Primario.



































182

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 183

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
















SERVIDOR DHCP

TEMA

Entender e implementar el servidor DHCP


OBJETIVOS ESPECFICOS

Comprender el funcionamiento del servidor DHCP


CONTENIDOS

Introduccin
Configuracin de un servidor DHCP
Configuracin de cliente DHCP

UNIDAD
12
184

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 185

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
12.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.






Existen tres mtodos de asignacin en el protocolo DHCP:

Asignacin manual: La asignacin utiliza una tabla con direcciones
MAC (acrnimo de Media Access Control Address, que se traduce
como direccin de Control de Acceso al Medio). Slo los anfitriones
con una direccin MAC definida en dicha tabla recibir el IP
asignada en la misma tabla. sto se hace a travs de los parmetros
hardware ethernet y fixed-address.
Asignacin automtica: Una direccin de IP disponible dentro de un
rango determinado se asigna permanentemente al anfitrin que la
requiera.
Asignacin dinmica: Se determina arbitrariamente un rango de
direcciones IP y cada anfitrin conectado a la red est configurada
186

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

para solicitar su direccin IP al servidor cuando se inicia el
dispositivo de red, utilizando un intervalo de tiempo controlable
(parmetros default-lease-time y max-lease-time) de modo que las
direcciones IP no son permanentes y se reutilizan de forma
dinmica.


12.2 CONFIGURACIN DE UN SERVIDOR DHCP EN LINUX

Se requiere instalar el paquete dhcp el cual deber estar incluido en los discos de
instalacin de la mayora de las distribuciones.

yum -y install dhcp

Si se utiliza Red Hat Enterprise Linux, solo bastar realizar lo siguiente para instalar o
actualizar la programtica necesaria:

up2date -i dhcp



12.3 DHCP FICHERO DE CONFIGURACIN

Considerando como ejemplo que se tiene una red local con las siguientes
caractersticas:

Nmero de red 192.168.0.0
Mscara de sub-red: 255.255.255.0
Puerta de enlace: 192.168.0.1
Servidor de nombres: 192.168.0.1, 148.240.241.42 y 148.240.241.10
Servidor Wins: 192.168.0.1
Servidores de tiempo: 66.187.224.4 y 66.187.233.4
Rango de direcciones IP a asignar de modo dinmico: 192.168.0.11-
192.168.0.199


Puede utilizar el siguiente contenido para crear desde cero el fichero /etc/dhcpd.conf.


ddns-update-style interim;
ignore client-updates;
shared-network miredlocal {
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option domain-name "redlocal.net";
option domain-name-servers 192.168.0.1, 148.240.241.42,
SI STEMAS OPERATI VOS ABI ERTOS 187

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
148.240.241.10;
option netbios-name-servers 192.168.0.1;
option ntp-servers 66.187.224.4, 66.187.233.4;
range 192.168.0.11 192.168.0.199;
default-lease-time 21600;
max-lease-time 43200;
}
host m253 {
option host-name "m253.redlocal.net";
hardware ethernet 00:50:BF:27:1C:1C;
fixed-address 192.168.0.253;
}
host m254 {
option host-name "m254.redlocal.net";
hardware ethernet 00:01:03:DC:67:23;
fixed-address 192.168.0.254;
}
}

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:

# Command line options here
DHCPDARGS=eth0

Para ejecutar por primera vez el servicio, ejecute:

/sbin/service dhcpd start

Para hacer que los cambios hechos a la configuracin surtan efecto, ejecute:

/sbin/service dhcpd restart

Para detener el servicio, ejecute:

/sbin/service dhcpd stop

Para aadir dhcpd al arranque del sistema, 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.
188

CARRERA DE REDES Y COMUNICACIONES CIBERTEC


12.4 CONFIGURACIN DE UN CLIENTE DHCP:

Para hacer que una mquina linux use IPs dadas por una servidor DHCP basta indicarle
que use IP dinmica, lo que se consigue poniendo las siguientes lneas en
/etc/sysconfig/network-scripts/ifcfg-eth0:

DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
Tambin hay que comentar la lnea GATEWAY=...
en el fichero /etc/sysconfig/network


12.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



SI STEMAS OPERATI VOS ABI ERTOS 189

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Autoevaluacin

1. El archivo /var/log/secure muestra conexiones repetidas al puerto TCP 53.

2. Cul es el nombre del servicio que esta siendo accedido?

















190

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 191

CIBERTEC CARRERA DE REDES Y COMUNICACIONES







SERVIDOR WEB

TEMA

Describir el uso del Servidor HTTP Apache.



OBJETIVOS ESPECFICOS

Comprender el funcionamiento del Servidor HTTP Apache.


CONTENIDOS

Introduccin
Configuracin del Servidor HTTP Apache.
UNIDAD
13
192

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 193

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
13.1 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.

Pgina oficial: http://httpd.apache.org.
Documentacin en espaol: http://httpd.apache.org/docs/2.0/es/

Tiene una estructura modular, que permite agregar funciones que no se encuentran en el
cdigo fuente de Apache. Estos mdulos pueden ser desarrollados por Apache o por
terceros.



Adicionalmente se tiene que HTTP Apache registra el acceso de cada navegador
web generando un hit (nombre del host, da, hora, pagina accedida) en el archivo
access.log. Cualquier problema con el servidor HTTP Apache se registra en el
archivo error.log.

13.2. INSTALACIN DEL SERVIDOR HTTP APACHE

HTTP Apache se puede instalar tanto en Linux como en Windows 2000/2003, para el caso
especfico de Linux se deben instalar los siguientes paquetes:
httpd Potente, eficiente y extensible servidor web.
httpd-manual Paquete que contiene el manual y la gua de referencia para el
servidor HTTP Apache.
194

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

system-config-httpd Herramienta de configuracin para el servidor HTTP
Apache.

Activamos el demonio httpd:
/etc/init.d/httpd start

No olvidar permitir en el Firewall local las peticiones de acceso al servidor HTTP
Apache.



Desde un equipo cliente podemos cargar la pgina web predeterminada.

SI STEMAS OPERATI VOS ABI ERTOS 195

CIBERTEC CARRERA DE REDES Y COMUNICACIONES



13.3 CONFIGURACIN DEL SERVIDOR HTTP APACHE

El archivo /etc/httpd/conf/httpd.conf es el archivo de configuracin del servidor HTTP
Apache, donde podemos:
Definir las direcciones IP/nmeros de puertos.
Mdulos.
Archivos de registro.
Definir el usuario que inicia el servidor.
Control de acceso.
Mensajes de error.
Hosts virtuales, etc.

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

En forma predeterminada despus de la instalacin el servidor HTTP Apache tiene la
configuracin bsica que le permite funcionar.


196

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

### Section 1: Global Environment
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
ServerRoot "/etc/httpd"
# PidFile: The file in which the server should record its process
# identification number when it starts.
PidFile run/httpd.pid
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, in addition to the default.
Listen 80
# User/Group: The name (or #number) of the user/group to run httpd as.
User apache
Group apache
### Section 2: 'Main' server configuration
# ServerAdmin: Your address, where problems with the server should be
# e-mailed. This address appears on some server-generated pages, such
# as error documents. e.g. admin@your-domain.com
ServerAdmin root@localhost
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
DocumentRoot "/var/www/html"
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
DirectoryIndex index.html index.html.var
# ErrorLog: The location of the error log file.
ErrorLog logs/error_log
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
# The location and format of the access logfile (Common Logfile Format).
CustomLog logs/access_log combined
### Section 3: Virtual Hosts


No olvidar configurar el servidor ISC BIND para poder usar el nombre de domino
www.vasquez.com.pe.


13.4 PAGINA WEB PREDETERMINADA

La pagina predeterminada index.html para el acceso al servidor web debe estar
ubicada en el directorio /var/www/html/.

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>

SI STEMAS OPERATI VOS ABI ERTOS 197

CIBERTEC CARRERA DE REDES Y COMUNICACIONES



13.5 ARCHIVOS DE REGISTRO

En el servidor HTTP Apache podemos apreciar que equipos se conectan al
servidor ejecutando el siguiente comando:
tail f /var/log/httpd/access_log



En caso de algn error en el servidor podemos ejecutar el comando:
tail f /var/log/httpd/error_log

198

CARRERA DE REDES Y COMUNICACIONES CIBERTEC




Ejercicio 1:
Crear una segunda pgina web en el directorio /var/www/html/datos/ y probar el acceso.

Anote sus observaciones:



-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
SI STEMAS OPERATI VOS ABI ERTOS 199

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

13.6 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.

Obviamente estos nombres deben estar registrados en el servidor DNS.


13.6 CONFIGURACIN DE LOS HOSTS VIRTUALES

Paso 1. Apache identifica un host virtual con el parmetro NameVirtualHost, la IP indicada
ser tomada como referencia para realizar la bsqueda de sitios virtuales en las
secciones definidas para cada sitio empiezan con <VirtualHost ip> y finaliza con
</VirtualHost>.

### Section 3: Virtual Hosts
NameVirtualHost 192.168.1.3
<VirtualHost 192.168.1.3>
ServerName www.vasquez.com.pe
DocumentRoot /var/www/html/
</VirtualHost>
<VirtualHost 192.168.1.3>
ServerName www.vasquez.org.pe
DocumentRoot /var/www/html1/
</VirtualHost>

Paso 2. Crear el directorio /var/www/html1

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>

Paso 4. Configuracin del servidor DNS primario para agregar dominio vasquez.org.pe,
y agregar el registro correspondiente

200

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



Paso 5. Reiniciar los demonios: named y hhtpd.

Paso 6. Probar desde un equipo cliente el acceso al servidor web








SI STEMAS OPERATI VOS ABI ERTOS 201

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
Ejercicio 2:
Crear una segunda pgina web en el directorio /var/www/html2 y probar el acceso.

Anote sus observaciones:



-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------

































202

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Autoevaluacin
1. 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

2. Cul es el archivo de configuracin del servidor Web?
(a) httpd.conf
(b) apache.conf
(c) web.conf
(d) http.conf

3. El servidor web acepta peticiones al puerto 80 qu directiva debemos
modificar par que ahora solo acepte peticiones la puerto 8080?
(a) Ports
(b) Listen
(c) ServerDocument
(d) ServerRoot

4. Si deseo permitir el acceso al servidor web qu protocolo debo seleccionar
en el cortafuegos?
(a) smtp
(b) imap
(c) pop3
(d) http
SI STEMAS OPERATI VOS ABI ERTOS 203

CIBERTEC CARRERA DE REDES Y COMUNICACIONES













SERVIDOR DE CORREO


TEMA

Describir e implementar el uso de de un servidor de correo


OBJETIVOS ESPECFICOS

Comprender el funcionamiento de un servidor.
Configuracin del servicio de correo en Linux con Postfix


CONTENIDOS

Introduccin
Funcionamiento
Configuracin





UNIDAD
14
204

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SI STEMAS OPERATI VOS ABI ERTOS 205

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

14.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.

En Software Libre se tiene que el servidor de Correos consta de los siguientes
elementos mnimos:
Servidor SMTP (Simple Mail Transfer Protocol)
o Proporciona un mtodo para transferir correos sobre un protocolo de transporte
como el TCP/IP.
o Protocolo utilizado para el envo de mensajes a otros servidores de SMTP y la
recepcin de los mensajes de los usuarios.
o El puerto que habilita es el 25.
Servidor POP3 (Post Office Protocol)
o Permite recuperar el correo al MUA, pero este se almacenar localmente en el
disco duro de las mquinas de los usuarios.
o La entrega de los mensajes a los clientes del servidor es mediante un acceso
autenticado.
o El puerto que habilita es el 110.
Servidor IMAP (Internet Message Access Protocol).
o Es un protocolo con ms opciones a comparacin de POP3, soporta algunas
caractersticas que no estn incluidas en POP, como la manipulacin de mltiples
carpetas remotas, visualizar correos sin necesidad de bajarlo del servidor.
o Facilita la utilizacin de webmails (servicios de correo basado sobre web).
o El puerto que habilita es el 143.


14.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.


14.3 CONFIGURACIN

14.3.1.Configuracin Postfix

Postfix tiene dos archivos de configuracin los cuales son:
/etc/postfix/master.cf
Este archivo contiene la configuracin para los procesos maestros de Postfix.
Cada lnea indica como un componente debe funcionar

/etc/postfix/main.cf
206

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

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 1. Agregue las siguientes lneas en el archivo /etc/postfix/main.cf

# Parmetros configurables por el usuario
myhostname = centos.vasquez.com.pe
mydomain = vasquez.com.pe
myorigin = $mydomain
mynetworks = 192.168.1.0/24, 127.0.0.0/8
inet_interfaces = all

Paso 2. Desactivar el MTA Sendmail en el arranque del sistema.



Paso 3. Activar el MTA Postfix en el arranque del sistema.



Paso 4. Iniciar el servidor SMTP: /etc/init.d/postfix start

SI STEMAS OPERATI VOS ABI ERTOS 207

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

14.3.2 Configuracin dovecot

Paso 1. El archivo de configuracin es /etc/dovecot.conf, agregue la siguiente
lnea:

protocols = imap pop3

Paso 2. Iniciar el servidor SMTP: /etc/init.d/dovecot start

14.3.3 Configuracin Firewall local

Habilitar los puertos: SMTP (25) y POP3 (110)



208

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

14.3.4 Configuracin del MUA

Se usar el programa KMail como cliente de correo.

Paso 1. Haga clic en el programa KMail, se mostrara la siguiente imagen.



Paso 2. Selecciones el tipo de cuenta POP3, luego clic en el botn Siguiente.



Paso 3. Ingrese los datos correspondiente en cada casilla, luego clic en el botn
Siguiente.


SI STEMAS OPERATI VOS ABI ERTOS 209

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

Paso 4. Ingrese el nombre de la cuenta de usuario y la contrasea, luego clic en
el botn Siguiente.



Paso 4. Ingrese la direccin IP de los servidores: entrante (SMTP) y saliente
(POP3), luego clic en el botn Finalizar.



Se mostrara la siguiente imagen.


210

CARRERA DE REDES Y COMUNICACIONES CIBERTEC




COMPROBANDO EL FUNCIONAMIENTO DEL SERVIDOR DE
CORREOS

Paso 1. Enviar un mensaje usando el comando mail (sistema de
procesamiento de correo inteligente que permite enviar y recibir
mensajes).



Paso 2. Ver en el archivo de registro las transacciones del servidor SMPT.
tail f /var/log/maillog

SI STEMAS OPERATI VOS ABI ERTOS 211

CIBERTEC CARRERA DE REDES Y COMUNICACIONES

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




212

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

14.4 RESTRICCIONES
Para evitar que nuestro servidor de correos sea usado para hacer SPAM o sea
usado como Open Relay tenemos las siguientes restricciones:
Restricciones del emisor (smtpd_sender_restrictions).
Restricciones de nombre/direccin cliente (smtpd_client_restrictions).
Uso del comando HELO (smtpd_helo_required y smtpd_helo_restrictions).
Restricciones del destinatario (smtpd_recipient_restrictions).
o Restricciones UCE.

14.4.1 Restricciones del emisor

El parmetro smtpd_sender_restrictions restringe las direcciones que el sistema
acepta cuando se ingresa el comando MAIL FROM.

Una configuracin tpica en el main.cf sera:

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

Cada vez que se modifica el archivo /etc/postfix/access debemos ejecutar:
postmap hash:/etc/postfix/access
postfix reload

14.4.2 Restricciones de nombre/direccin cliente

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.

Una configuracin tpica en el main.cf sera:

smtpd_client_restrictions = hash:/etc/postfix/access,
reject_maps_rbl
maps_rbl_domains = rbl.maps.vix.com,
relays.orbd.org,
sbl.spamhaus.org


SI STEMAS OPERATI VOS ABI ERTOS 213

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
14.4.3 Uso del comando HELO

El parametro smtpd_helo_required determina si los clientes deben enviar un
HELO (o EHLO) al servidor antes de comenzar una sesin SMTP. El
parmetro smtpd_helo_restrictions restringe aquellos hosts que pueden
enviar el comando HELO.

Una configuracin tpica en el main.cf sera:

smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks,
reject_invalid_hostname,
reject_unknown_hostname,
reject_non_fqdn_hostname


14.4.4 Restricciones del destinatario

El parmetro smtpd_recipient_restrictions restringe los recipientes o
destinatarios que acepta el Servidor de Correos cuando se ejecuta RCPT
TO.

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


14.5 COMANDOS

14.5.1 postqueue

Controla la cola de Postfix

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.

214

CARRERA DE REDES Y COMUNICACIONES CIBERTEC



14.5.2.postsuper

Gestiona las tareas en la cola Postfix.

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.



SI STEMAS OPERATI VOS ABI ERTOS 215

CIBERTEC CARRERA DE REDES Y COMUNICACIONES
14.5.3.postconf

Utilitario de configuracin que muestra informacin referente al sistema de
correo Postfix.



Autoevaluacin

Establecer diferencias entre postfix, sendmail,, zimbra, y aplicaciones as como
clientes de correo ms utilizados en el medio empresarial.
216

CARRERA DE REDES Y COMUNICACIONES CIBERTEC




Bibliografa digital


http://www,redhat.com Pgina Web de Red Hat

http://www.europe.redhat.com/ Pgina Web de Red Hat Europa

http://www.wikilearning.com/ Comunidad Wiki

http://www.linuxparatodos.net Linux Para Todos - Factor Evolucin

http://www.tercerainformacion.es/spip.php?article15580
Linux utilizado por el 78% de los servidores principales del mundo

http://www.alcancelibre.org/staticpages/index.php/manuales-indice
Manual de Linux

También podría gustarte