INSTALACIÓN DE UNA RED LOCAL CON SAMBA Y CLIENTES
CON WINDOWS XP PROFESIONAL. UN EJEMPLO PRÁCTICO
1. PREÁMBULO
Con el fin de facilitar la comunicación entre ordenadores de distintos fabricantes se desarrolló el
modelo OSI (Open Systems Interconnection), propuesto por la Organización Internacional de
Normalización (ISO). En el modelo OSI existen 7 niveles (ver tabla siguiente).
Niveles Tipo
1 Físico
2 Enlace de datos
3 Red
4 Transporte
5 Sesión
6 Presentación
7 Aplicación
Cada nivel inferior proporciona servicios a los niveles superiores y, a su vez, dispone de un
conjunto de servicios propio. Cada servicio está definido mediante un protocolo.
La red local que vamos a describir es una red Ethernet (nivel físico y de enlace de datos) cuyo
protocolo de aplicación es SMB (Service Message Block) también conocido como NetBIOS
(Network Basic Input/Output System) y con protocolo de transporte TCP/IP.
2. MATERIAL
La red consta de los siguientes elementos
1. Tres ordenadores:
1. Un servidor con sistema operativo Mandrake Linux 8.2 corriendo sobre un Celeron de 900
Mhz y una memoria de 642 Mb (con nombre “ramanujan”).
2. Un cliente con Windows XP corriendo sobre un Celeron de 1000 Mhz y una memoria de 256
Mb (con nombre NetBIOS “gauss”)
3. Un cliente con Windows XP corriendo sobre un Athlon 1333 Mhz y una memoria de 512 Mb.
(con nombre NetBIOS “evariste”)
2. Un switch-hub OvisLink de 8 puertos.
3. Cables RJ-45.
4. Dos SAI (Servicio de Alimentación Ininterrumpida).
3. Instalación de Samba en el servidor
La instalación de Samba no es automática dentro del proceso general de instalación de Mandrake
Linux. Es necesario optar por una instalación personalizada con elección de paquetes individuales y
buscar los paquetes:
samba-client
samba-server
samba-common
samba-swat
samba-doc
Como no vamos a trabajar con LDAP no vale la pena instalar los paquetes anteriores con dicha
opción, así que desestimaremos los paquetes
samba-common-ldap
samba-server-ldap
samba-swat-ldap
Una vez terminada la instalación el servidor Samba comenzará a funcionar automáticamente con
los “demonios” SMB y NMB.
Para obtener la última versión de estos paquetes podemos acceder a la página
[Link]
4. Configuración
La configuración de samba se realiza a través del fichero [Link]. Este y otros ficheros que
vamos a explicar se encuentran en /etc/samba.
El fichero [Link] tiene una serie de secciones entre las que destacamos [global], [home],
[printers], etc. En cada una de ellas se introducen una serie de comandos para especificar cuestiones
globales, de directorios de usuario, impresoras, etc. No explicaremos en detalle tales opciones. El
lector puede encontrar una descripción completa en la documentación de Samba que acompaña al
paquete o bien en
[Link]
Al instalar Samba se nos crean unos archivos de configuración de ejemplo. Pueden sernos muy
útiles adaptándolos a nuestras necesidades. Una herramienta interesante para la configuración es
SWAT. A esta aplicación se accede desde una sesión X-Window y un navegador como Netscape o
Mozilla. Basta escribir la dirección
[Link]
en el navegador. Se nos pedirá el nombre de usuario (root) y la contraseña de éste para acceder.
Todas las opciones se nos presentan entonces de manera gráfica y podemos configurarlas
fácilmente.
Nuestro objetivo es crear una red con un servidor Linux y clientes XP. Nada más clarificador que
explicarlo a través de ejemplos, por tanto voy a copiaros un fichero [Link] válido y daré algunas
explicaciones básicas sobre los apartados de que consta
# Samba config file created using SWAT
# from [Link] ([Link])
# Date: 2002/08/02 [Link]
# Global parameters
[global]
workgroup = LABORATORIO
netbios name = RAMANUJAN
server string = Samba Server %v
encrypt passwords = Yes
update encrypted = Yes
log file = /var/log/samba/log.%m
max log size = 50
name resolve order = wins lmhosts bcast
socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192
printcap name = lpstat
character set = ISO8859-1
domain logons = Yes
os level = 65
preferred master = True
domain master = True
dns proxy = No
wins support = Yes
printing = cups
add user script = /usr/sbin/useradd -d /dev/null -s /bin/false -M %u
[homes]
comment = Home Directories
read only = No
browseable = No
available = No
[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
guest ok = Yes
[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
guest ok = Yes
printable = Yes
print command = lpr-cups -P %p -o raw %s -r # using client side
printer drivers.
browseable = No
En la sección [global] vamos a comentar las principales opciones.
workgroup = LABORATORIO Este es el nombre del grupo de trabajo (que
corresponde al dominio NT o 2000)
netbios name = RAMANUJAN Nombre del servidor (en nuestro caso el servidor
Linux corriendo Samba)
encrypt passwords = Yes Las contraseñas que envían los clientes están
update encrypted = Yes
encriptadas por lo que hay que activar estas
opciones
name resolve order = wins lmhosts bcast Este es el orden de resolución de nombres. He
puesto wins porque haremos que el servidor
Linux también sea un servidor wins
workgroup = LABORATORIO Este es el nombre del grupo de trabajo (que
corresponde al dominio NT o 2000)
domain logons = Yes Estas opciones habilitan el ingreso de los
os level = 65
preferred master = True
clientes en el dominio, siendo el servidor Linux
domain master = True el servidor principal del dominio.
wins support = Yes El servidor Linux hace de servidor wins
add user script = /usr/sbin/useradd -d Esta opción es muy importante. Hasta que no la
/dev/null -s /bin/false -M %u
añadí al fichero [Link] no conseguí una
adecuada identificación de los clientes. Con esta
línea conseguimos que los ordenadores clientes
creen cuentas de forma dinámica.
La sección [homes] hace referencia a los directorios de los usuarios. Veamos sus opciones
comment = Home Directories Comentario sobre los directorios
read only = No No sólo lectura. También se puede escribir en el
directorio
browseable = No Impedimos que otros usuarios puedan “navegar”
por nuestro directorio personal
available = No No mostramos nuestro directorio personal a los
demás.
La sección [netlogon] proporciona la posibilidad de un directorio general (cuya ruta se indica) para
todos los usuarios que será visible al autentificarse. Finalmente, la sección [printers] nos da la
posibilidad de imprimir con cups en el servidor Linux (sin embargo, no usaré tal opción. La
impresora estará instalada en un cliente XP).
Para más información recomendamos la página
[Link]
5. Habilitación de usuarios
Para poder acceder desde los clientes XP al domino con el servidor Linux hemos de realizar una
serie de acciones en el ordenador del servidor y en el del cliente. En primer lugar, hemos de crear
las cuentas de usuario en el servidor Linux. Por ejemplo, supongamos que los usuarios tienen los
nombres xp1 y xp2. Desde una sesión gráfica (también se puede hacer desde la consola) accedemos
a la utilidad “userconf” dentro del menú de “Configuración->Otros”. Desde allí creamos los
usuarios y les dotamos de contraseñas (necesitaremos ser “root” para esto). Tales usuarios también
han de crearse con el mismo nombre y la misma contraseña en los clientes XP. Esto se hace a través
del “Panel de Control->Cuentas de usuario” (necesitaremos ser “Administrador” para esto). A
continuación vamos a habilitar tales usuarios en Samba. Para ello, desde la consola y como “root”
accedemos al directorio /etc/samba y tecleamos
smbpasswd -a xp1
Recibiremos como respuesta que introduzcamos una contraseña. Tras teclear dos veces la
contraseña de xp1 (la segunda vez es para confirmar) tendremos dicho usuario añadido al fichero
smbpasswd. Realizaremos el mismo proceso con el usuario xp2. Habilitaremos dichos usuarios
tecleando los comandos
smbpasswd -e xp1
smbpasswd -e xp2
Finalmente, es necesario que el usuario root del servidor Linux tenga también una cuenta en
Samba. Para ello, simplemente volvemos a teclear en la línea de comandos
smbpasswd -a root
y se nos pedirá una contraseña (no es necesario que sea la misma que la que tenemos como root en
el sistema). Luego habilitamos mediante
smbpasswd -e root
y ya está terminado este paso.
6. El fichero lmhosts
Este fichero realmente no es necesario para resolver los nombres NetBIOS en nuestra red local ya
que hemos habilitado al servidor Samba como servidor WINS. Sin embargo, es cómodo tenerlo
bien configurado. Se halla también en el directorio /etc/samba. Las entradas a añadir son del tipo
dirección IP nombre
Por ejemplo, mi fichero es
[Link] localhost
[Link] evariste
[Link] ramanujan
[Link] gauss
Como se puede apreciar la red local tiene direcciones del tipo 192.168.1.x.
7. Configuración de la red en los clientes XP
Este paso es muy importante. Accedemos al Panel de Control y desde allí a Conexiones de Red.
Hacemos doble clic en Conexión de Área Local, veremos una ventana como la siguiente
Hacemos doble clic en el botón Propiedades y accedemos a una nueva ventana
Nos interesa el protocolo TCP/IP por lo que haremos clic sobre él y luego sobre el botón
Propiedades. Aparecerá esta ventana
donde seleccionaremos la opción “Usar la siguiente dirección IP” y en “Dirección IP” ponemos la
del cliente en cuestión (en la imagen es el cliente con el usuario xp1) y tiene la dirección
[Link], la máscara de subred [Link] y la puerta de enlace predeterminada es el
dispositivo con el que se accede a Internet desde la red local (la dirección IP de este dispositivo ha
de ser de la misma red 192.168.1.x). Una vez configurados estos paramétros hacemos clic en
“Opciones Avanzadas”. Aparecerá unas pestañas de las cuales sólo nos interesa la llamada “WINS”
Señalamos en la configuración de NetBIOS la opción “Habilitar NetBIOS sobre TCP/IP”, le
damos a aceptar y cerramos todas las ventanas. La red ya está configurarada.
7. Los últimos retoques en los clientes. Claves del registro y
certificados
Este es uno de los puntos más frecuentes de error. Para poder ingresar a los clientes XP en el
dominio LABORATORIO que hemos señalado en [Link], necesitaremos modificar varias claves
del registro. Las dos primeras modificaciones las haremos mediante dos ficheros
samba_xp_domain_member.reg
Win2000_PlainPassword.reg
Estos ficheros se pueden obtener de la dirección
[Link]
Para ejecutarlos basta hacer un doble clic sobre ellos. El resto de las modificaciones del registro
precisan del uso de una potente herramienta de configuración de XP llamada “Directiva de grupo”.
La podemos ejecutar desde “Inicio->Ejecutar”, escribiendo “[Link]” en el cuadro de texto. En
la ventana que nos aprece deberemos seleccionar la rama “Configuración de Windows-
>Configuración de seguridad”
En esa rama seleccionaremos “Configuración del equipo->Opciones de Seguridad”. Allí
dejaremos como deshabilitadas las opciones:
“Cliente de redes de Microsoft: firmar digitalmente las comunicaciones (siempre)”
“Miembro de dominio: descifrar o firmar digitalmente datos de un canal seguro (siempre)”.
Luego accedemos a la rama “Configuración de usuario->Configuración de Windows-
>Configuración de seguridad->Directiva de claves públicas”. Allí buscamos “Configuración de
Inscripción automática” y señalamos la opción “No registrar certificados automáticamente”.
8. Ingreso de los clientes en el dominio
Una vez hecho todo lo anterior podemos “entrar” en el dominio LABORATORIO. En primer
lugar, desde los clientes Windows, accedemos al “Panel de Control->Sistema” y allí buscamos la
pestaña “Nombre de Equipo”
le damos al botón “Cambiar” y accedemos a la pantalla
En el nombre de equipo ponemos el correspondiente al cliente (en este caso “evariste”) y luego el
nombre del dominio (en este caso “LABORATORIO”). Le damos a aceptar y nos pedirá que
introduzcamos el nombre de un usuario con permiso para ingresar el equipo en el dominio y su
contraseña correspondiente. En este punto sólo hemos de introducir como nombre de usuario “root”
y como contraseña la que hemos creado para “root” como usuario de samba. Hecho esto se nos da
la bienvenida al dominio y se nos pide reiniciar el equipo. En el reinicio escribimos el nombre del
usuario (xp1, en este caso) y su contraseña y ya estamos “dentro” del “LABORATORIO”.