Cap06 y Cap07 Samba

Descargar como doc, pdf o txt
Descargar como doc, pdf o txt
Está en la página 1de 15

TECSUP Redes III

“SAMBA”

1. INTRODUCCION

El protocolo SMB es usado por Microsoft Windows 3.11, NT y 95 para compartir discos e
impresoras. Usando el paquete de herramientas Samba creado por Andrew Tridgell, las
máquinas UNIX (incluyendo Linux) pueden compartir discos e impresoras con servidores
Windows.

Hay cuatro cosas que uno puede hacer con Samba:

1. Compartir una unidad de Linux con máquinas Windows.


2. Compartir una unidad de Windows con máquinas Linux.
3. Compartir una impresora de Linux con máquinas Windows.
4. Compartir una impresora de Windows con máquinas Linux.

Más Información: www.samba.org

2. INSTALACION

La última versión del código de Samba está disponible en:

ftp://nimbus.anu.edu.au/pub/tridge/samba/

De todas maneras, si has instalado la distribución RedHat de Linux, tienes la opción de instalarlo
como paquete formato RPM. Algunas otras distribuciones incluyen los ejecutables de Samba.

Se requieren los dos demonios siguientes para el paquete Samba:

 smbd (El demonio de SMB)


 nmbd (Provee un nameserver de NetBIOS para soporte de clientes)

3. COMPROBACION DE PARAMETROS .

3.1. PUERTOS.

Samba es implementado sobre Tcp-IP , implica que utiliza puertos tcp / udp .
En /etc/services , el servicio de samba esta registrado con los siguientes puertos .
Compruebe :

Netbios-ns 137/tcp
Netbios-ns 137/udp

Netbios-ssn 139/tcp
Netbios-ssn 139/udp

-1-
TECSUP Redes III

3.2. ACTIVACION.

Existe dos maneras de activar el demonio, manualmente o automaticamente .

Manual

En el siguiente directorio /etc/rc.d/init.d/ , estan ubicados todos los scripts de los servicios
de Linux el de samba es el smb

Desde cualquier ruta

# /etc/rc.d/init.d/smb parametros

Parametros :

start : activar el demonio de samba .


stop : detener el demonio de samba .
restart : detener y activar el demonio de samba

Automáticamente

Para habilitar permanentemente la activación del servicio, y no realizar el proceso manual


cada vez que el equipo se inicia . Ejecute el utilitario setup, ubicado en /etc .

# setup

Utilitario, para configurar diferentes servicios:

Autentificacion : cambiar nivel de seguridad .


Keyboard : cambiar el modelo de teclado .
Mouse : cambiar el modelo del mouse y la conexión del puerto .
System Services : Habilitar y deshabilitar el inicio de los servicios .
Timezone : Variar el horario
X Configuration : Configurar el entorno grafico (tarjeta de video, monitor).

En la sección Services podrá habilitar la opción Smb:

-2-
TECSUP Redes III

3.3. ARCHIVO hosts

Comprueba que el archivo /etc/hosts , tenga las dos siguientes lineas :

127.0.0.1 localhost
a.b.c.d hostname

Donde:
a.b.c.d es la dirección IP de tu maquina, y
hostname es el nombre de tu maquina , ingresada en el archivo /etc/sysconfig/network.

Esta comprobación es importante para que el servicio pueda habilitarse , porque con este
nombre de hostname será visto a nivel de toda la red , la maquina con Linux .

3.4. CUENTA DE INVITADO

Crear una cuenta : smbguest , que pertenezca al grupo smbguest .


Password : smbguest

Esta cuenta será utilizada por Samba cuando se realice una conexión de invitado por las
maquinas Windows.

4. USUARIOS

Cada vez que registre un nuevo usuario en el Unix para que acceda a los recursos del Unix
también deberá de registrarlo el password en el archivo de password de samba :

smbpasswd –a <user>

Este paso adicional se realiza debido a que Windows posee encriptación en los passwords al
momento de registrarlo en el archivo de password de samba el usuario podrá acceder a recursos
de Windows que necesita validación de usuario y contraseña .

El archivo donde se registra a los usuarios con el comando smbpasswd se llama :


/etc/smbusers .

-3-
TECSUP Redes III

5. ARCHIVOS DE CONFIGURACION.

El archivo se llama smb.conf , ubicado en /etc . Existe 4 niveles en la configuracion :

Nivel share
Si no deseas crear una cuenta para cada maquina de windows , para ingresar a tus recursos de
Unix . Permitiendo compartir directorios y impresoras .

Nivel user
Este nivel , necesitas tener cuenta en el Unix de los usuarios que desean ingresar mediante
windows .

PDC
En el nivel user , puedes hacer que linux se comporte como Primary Domain Controller . Con las
características de : scripts de inicio , profiles .

Server
En este nivel puede incorporar a samba en un PDC existente

6. NIVEL SHARE

6.1. PARAMETROS GLOBALES.

workgroup :Nombre del grupo al cual pertenecerá el servidor .


netbios name : Nombre del servidor , igual al registrado en /etc/sysconfig/network
guest account :Nombre de la cuenta que será utilizado para realizar las
conexiones de invitado
security :Nivel a escoger ( share , user )
server string :Comentario del equipo que será visualizado en el browser de la red

Observaciones
El grupo y el nombre de la maquina no puede exceder de los 15 caracteres. Debe de ser
únicos en la red .

[global]

workgroup = linux
netbios name = pc60
server string = Comparticion con samba pc60
guest account = smbguest
security = share

6.2. COMPARTIENDO UN RECURSO DE LINUX SIN PASSWORD.

 Nombre del recurso a compartir


 Ruta del recurso a compartir
 Autorización del usuario guest , para poder leer e escribir .

-4-
TECSUP Redes III

Ejercicio

Cree en la raíz una carpeta llamada data, debe de tener los siguientes permisos, propietario
y grupo.

drwx --- --- 2 smbguest smbguest 1024 oct 19 20:12 data/

Los archivos y directorios creados en este recurso compartido por usuario de windows, el
propietario será la cuenta de invitado ( smbguest ) , con los siguientes permisos 744 ( -rwx r
—r-- ) para los archivos y 755 ( - rwx r-x r-x ) para los directorios

Parámetros que permitirían variar estos valores :

create mask : para los archivos


directory mask : para los directorios

[data]
comment = recurso data compartido
path = /data
guest ok = yes
guest only = yes
read only = no

Después de realizar los cambios respectivos puede activarlos reiniciando el servicio de


Samba

# /etc/rc.d/init.d/smb restart

O espera un minuto porque el demonio de Samba releerá la configuración del archivo


smb.conf .

En una maquina de Windows mediante el explorador de red , deberá de visualizar a linux ,


ofreciendo el recurso data , ingrese al recurso copie información , borre , renombre ,
conéctese como unidad de red . Comprobando los derechos permitidos por el nivel share.

6.3. COMPARTIENDO UN RECURSO DE LINUX CON PASSWORD.

Ejercicio

Crear un usuario: user1 y que pertenezca al grupo : share

Crear en la raíz un directorio llamado archivos, que tenga los siguientes permisos y
propietario:

drwx r-x --- 2 user1 share 1024 oct 19 20:12 archivos/

Agregar en el archivo smb.conf, el siguiente bloque :

-5-
TECSUP Redes III

[archivos]
comment = Recurso con password
path = /archivos
guest ok = no
read only = no
username = user1

Mediante el explorador de red de Windows acceda al recurso archivos solicitara el ingreso


de un password ingrese el password de user1 , permitiendo ingresar al recurso . Copie ,
modifique y borre información del recurso)

6.4. COMPARTIENDO IMPRESORAS.

Esta sección mostrara como configurar a las impresoras para que sean accesibles a los
usuarios de Windows , con password o sin password . Dependiendo del nivel de Samba si
es share o user.

6.4.1.Configuración manual de impresoras

Para compartir una impresora de la relación de /etc/printcap , la sección a ingresar en


el archivo smb.conf seria:

El nombre de la seccion debe de ser un nombre valido de la relación de impresoras


definidas en /etc/printcap .

path : parámetro que especifica el directorio de spool de los archivos enviados


antes de imprimirlos . Si usted escoge un determinado directorio deberá de
asegurarse que el propietario sea el usuario invitado ( smbguest ) y que el grupo
( smbguest ) . Si obvia este parámetro asumirá los directorios predeterminados en el
archivo /etc/printcap.

print ok : Requerido para compartir la impresora .

guest ok : Permisos al usuario guest

Ejercicio

Compartir en Unx una impresora llamada lp0 , con opción a asccii y postscript .

[lp0]
comment = impresora compartida
print ok = yes
guest ok = yes

-6-
TECSUP Redes III

6.4.2.Configuración automática de impresoras

Para compartir exactamente todas las impresoras que tengas registradas en el


archivo /etc/printcap , la sección a ingresar en el archivo smb.conf seria :

El nombre de la sección debe de llamarse printers .

browseable : Setee la opción no , para que no aparezca el recurso printers como un


directorio .

[printers]
comment = Impresoras compartidas
print ok = yes
guest ok = yes
browseable = no

6.4.3.Configurar password a impresoras

A igual que se configuro restricción a los recursos de discos con un password el


mismo procedimiento se realiza:
Desabilitar la comparición guest y predeterminar un usuario del cual se solicitara el
password que posee para poder conectarse a la impresora desde una PC con
Windows .

Ejercicio

Restringir el acceso a la impresora lp0 mediante la solicitud del password de user1.

[lp0]
comment = Impresora restringida
print ok = ok
guest ok = no
username = user1

7. NIVEL USER

En la sección global deberá de figurar los siguientes parámetros similar a la sección de share .
Como se había explicado este nivel requiere una cuenta de Unix para cada cuenta de Windows
que desea acceder a los recursos del servidor

[global]
workgroup = linux
netbios name = pc60
server string = Comparticion de recursos de Linux
guest account = smbguest
security = users

-7-
TECSUP Redes III

7.1. COMPARTIR SIN PASSWORD.

Si necesita compartir un recurso en este modo sin necesidad de password o autentificación,


deberá de agregar el siguiente parámetro en la sección de global .

map to guest = bad user

Este parámetro permitirá la conexión de cualquier usuario como acceso guest.

Ejemplo

En la raíz cree un directorio llamado publico, y que tenga los siguientes permisos :

drwx rwx rwx 2 smbguest smbguest 1024 oct 19 20:12 publico/

[publico]
comment = recurso compartido sin password
path = /publico
guest ok = yes
read only = yes

Compruebe mediante el entorno de red, si puede acceder y que derechos tiene.

7.2. ACCESO MIXTO.

Mediante este tipo de accesos, podemos personalizar el acceso a los recursos asignado
algunos usuarios que solo puedan leer, otros que lean e escriban y un tercer grupo permitir
la administración.

Parametros

valid users = Listas de usuarios o grupos que están permitidos acceder al respectivo recurso
.

invalid users = Lista de usuarios o grupos que no están permitidos acceder al servidor , este
dato es innecesario debido a que los usuarios no listados en valid users esta
automáticamente no permitidos conectarse .

admin users = Lista de usuarios o grupos que están permitidos para acceder como root
( superusuario )

Ejemplo

Registre a los siguientes usuarios en el sistema de unix y el de samba : user2 y user3 los
passwords que sean igual que el nombre de los usuarios .

En la sección del recurso compartido como public , agregar los siguientes parámetros:

-8-
TECSUP Redes III

Explicacion :

valid users = user2, user3


invalid users = user1
read list = user2
write list = user3

Los usuarios autorizados a visualizar el recurso es user2 y user3


El usuario invalidado es user1
El usuario que solo puede leer es user2
El usuario que puede escribir es user3

Observacion

También se podría trabajar con grupos, ejemplo si desea que el grupo contabilidad pueda
leer únicamente la sintaxis es :

read list = +contabilidad

Si necesita que accedan a este recurso compartido sin necesidad de password mediante el
usuario guest, no olvide agregar al usuario guest ( smbguest ) en la relación de usuarios
validados .

8. CARACTERISITICAS AVANZADAS.

8.1. LA SECCION [homes]

Cuando Samba encuentra esta sección en el archivo smb.conf , automáticamente habilitara


un recurso compartido para cada usuario que se conecta . Esta sección no creara un
recurso compartido llamado homes , pero creara un recurso con el nombre del usuario que
se conecta al servidor samba .

[homes]
writeable = yes
guest ok = no
valid user = %S
browseable = no

La configuración realizada, se describe a continuación: Cada vez que un usuario X de


Windows se conecta al Linux, observara en su entorno de red un recurso compartido
llamado X. Este recurso tiene permiso de lectura e escritura para el usuario X . La ruta de
este directorio esta definido en el archivo /etc/passwd en la entrada del usuario X ( home
personal ) .

La línea valid user = %S , es usada para asegurar que únicamente el usuario pueda
utilizar el recurso X , cuando X se conecte. El parámetro de %S será reemplazado por el
nombre del usuario .

-9-
TECSUP Redes III

El parametro browseable es seteado no, para que no aparezca en la relación de recursos


compartidos y únicamente lo pueda apreciar el usuario X .

Ingrese los siguientes parámetros en la sección de homes , por motivos de seguridad :

create mask = 0600


directory mask = 0700

Estas dos líneas permitirá que únicamente el propietario tenga derecho de lectura e
escritura de archivos e directorios .

8.2. PERSONALIZACION.

En la sección de homes puede agregarse el parámetro path, permitiendo definir el directorio


personal de los usuarios que se conecta al Linux ignorando el directorio home especificado
en el archivo /etc/passwd , ejemplo :

path = /samba/%S

El directorio de los usuarios estarán ubicados en /samba con su respectivo nombre del
usuario .

Ejercicio
Cree el directorio samba y compruebe el encaminamiento de los usuarios a este directorio.

8.3. EJECUCION DE COMANDOS.

Samba ofrece la posibilidad de ejecutar comandos de Unix cuando un usuario se conecta y


desconecta de un recurso compartido. Esto puede ser ejecutados por cuatros parámetros:

preexec, postexec, root preexec y root postexec

Los comandos exec y postexec son ejecutados con el ID del usuario de Unix que esta
realizando la conexión.

El comando root preexec y root postexec son ejecutados con el ID del root .

Ejercicio

Se desea llevar una auditoria de las conexiones que realizan a nuestro recurso [homes] ,
agrega las siguientes líneas a la sección de homes .

root preexec = /bin/sh –c ‘echo “[%T] %u conectado desde %m (%I)” >>


/var/log/samba/audit/%S.log’

root postexec = /bin/sh –c ‘echo “[%T] %u desconectado” >> /var/log/samba/audit/%S.log

Antes de reiniciar el demonio de samba , cree el directorio audit en /var/log/samba .

-10-
TECSUP Redes III

El archivo log contendrá la siguiente información, tiempo de conexión %T , usuario %u ,


nombre de la maquina %m, y la dirección IP %I .

Ejecute el siguiente comando para que visualice como va agregando las líneas de log cada
vez que se conecta y desconecta del recurso.

# tail -f /var/log/samba/audit/<user>.log

8.4. REGISTRANDO USUARIOS DE UNIX.

Si no deseas crear una cuenta de unix para cada usuario de Windows que desean acceder
a tus recursos, en el archivo /etc/smbusers, podrás asociar usuarios de Windows a
usuarios de unix .

Ejemplo

hali = willian elena luis

<usuariode unix > = <user1 de windows> <user2 de windows>

9. HABILITANDO COMO PDC

La sección global del archivo smb.conf tendrá la siguiente estructura:

[global]

netbios name = PDC


workgroup = DOMAIN
server string = Samba %v como PDC
guest account = smbguest

domain logons = yes


time server = yes

os level = 255
preferred master = yes
domain master = yes
local master = yes

Ejercicio

Configure el archivo smb.conf con los datos escritos arriba reemplazando el valor de PDC
por pc<#ip> , y DOMAIN por linux . También registre la sección de homes . Compruebe
configurando una maquina con Windows con la opción de logearse a servidor NT .

-11-
TECSUP Redes III

10. CONFIGURANDO SAMBA MEDIANTE LA WEB.

Samba trae un utilitario llamado SWAT , que es un software de administración de Samba


mediante web, donde podrás configurar los parámetros de una forma mas amigable los pasos
descritos hasta el momento ha sido mediante una configuración manual ingresando los
parámetros y valores en el archivo de configuración, mediante este utilitario los parámetros
estarán definidos únicamente habrá que ingresar los valores correctos tener presente que swat
es una pantalla de ingreso de valores de los parámetros, al final estos datos es ingresado al
archivo de configuración smb.conf .

10.1. HABILITAR SWAT

Swat ocupa el puerto 901 de tcp , este servicio es controlado por el demonio inetd en el
archivo /etc/inetd.conf esta registrado la entrada de swat :

swat stream tcp nowait.400 root /usr/sbin/swat swat

Si esta línea esta comentada descomentada y para activar reinicia el demonio de inetd :

# /etc/rc.d/inetd.d/inet restart

10.2. Accediendo al SWAT

Mediante un browser ( Netscape ) acceda a la dirección de su Pc al puerto 901

http://<direccion_ip>:901 o http://localhost:901

Aparecerá una ventana solicitándote un usuario y password , el usuario por default es el


root e ingrese su respectivo password .

-12-
TECSUP Redes III

Swat esta dividido en 7 partes:

Home
Enlances de ayudas y manuales de samba e utilidades. Recomendable darle una
lectura.

Globals
Configuración de las variables globales de Samba

Shares
En esta seccion configure los recursos de disco a compartir a la red .

Printers
En esta sección configure los recursos de impresoras a la red .

-13-
TECSUP Redes III

Status
Sección que permite ver el estado del demonio de samba, detenerlo e iniciarlo ,
también nos ofrece las actividades de samba actualmente como que recurso esta
siendo accedido y por quien .

View
Muestra el archivo de configuración smb.conf , que ha sido generado por los datos
que se ha rellenado en las secciones de Globals , Shares y printers .

Password
Agregar , modificar e eliminar usuarios que están permitidos acceder al swat .

11. ACCEDIENDO A RECURSOS DE WINDOWS DESDE LINUX .

11.1. SMBCLIENT

Esta utilidad posee el estilo de los comandos ftp, al acceder al recurso de las PC con
Windows.

Sintaxis :

smbclient //servername/recurso [password] [-U username]

Ejercicio

En una PC con Windows comparta un recurso llamado data sin password e ingrese
desde Linux mediante smbclient .
Observara que aparecerá un prompt : smb> , estando este prompt usted puede
tipear los comandos ls , get , put , o help . Como si se tratara de un cliente ftp .

Para observar los recursos que esta compartiendo un HOST .

# smbclient -L <host>

-14-
TECSUP Redes III

SMBMOUNT

Comando que permite realizar montaje de un recurso compartido por una maquina
Windows. Sintaxis:

smbmount //servername/recurso /mount/point -o username=user password=password

Ejercicio
En el directorio mnt cree un directorio llamado samba, luego en una maquina Windows
comparta un recurso . Luego asignare un password.

12. HERRAMIENTAS Xwindows

Del site : http://linux.tecsup.edu.pe/ftp/linux/samba , baje los siguientes programas :

LinNeighborhood-0.6.1-1.i386.rpm
xsmbrowser-2.4.0-1.noarch.rpm

Estos programas permitirán acceder a los recursos de Windows, mediante un Browser de la red.

-15-

También podría gustarte