Samba es un proyecto de software libre que implementa el protocolo de archivos compartidos de Windows para Sistemas operativos de tipo UNIX. Este protocolo anteriormente era conocido como SMB, catalogado luego como CIFS. De esta manera, se vuelve realidad el hecho de que computadoras con GNU/Linux, Mac OS X o Unix en general, sean vistos como servidores o se relacionen como clientes en las redes basadas en Windows.
Índice de contenidos
Aprendamos un poco de Samba
La creación de Samba es la idea de Andrew Tridgell. Es un proyecto que nació en 1991 cuando creó un programa servidor de archivos para su red local, la cual soportaba un protocolo reconocido como DEC de Digital Pathworks. Aunque en ese momento el no lo supo, dicho protocolo se convertiría en SMB luego.
¿Por qué usar Samba?
Samba, básicamente, es una suite de aplicaciones Unix que implementa el protocolo SMB (Server Message Block). Este protocolo es empleado para operaciones cliente-servidor en una red. Entonces, mediante el uso de este protocolo Samba le permite a Unix establecen comunicación con productos Microsoft Windows a través del protocolo. De esta manera, una maquina Unix con Samba puede ingresar a la red Microsoft, mostrándose como Servidor y brindar los siguientes servicios:
- Compartir diversos sistemas de archivos.
- Compartir impresoras, con instalación en el servidor como en los clientes.
- Proveer un visualizados de clientes en red, lo que facilitara la colaboración con nuestros usuarios.
- Permite realizar verificación de clientes a través de un login contra un dominio Windows.
- Proporcionar o asistir con un servidor de resolución de nombres WINS.
Funcionamiento
Hoy día, la Suite Samba incluye en su implementación un par de demonios fundamentales. Estos son los encargados de proporcionar los recursos compartidos a los clientes SMB en la red (también denominados como servicios).
Los demonios antes mencionados son:
smbd: Es el demonio encargado de permitir la compartición de archivos e impresoras sobre la red SMB, ademas de proporcionar verificación y otorgar autorización para el acceso de clientes SMB.
nmbd: Es el demonio que se encarga de buscar a través del Windows Internet Name Service (WINS), y brinda la ayuda necesaria mediante un visualizador.
Configuración
La configuración de Samba en Linux es realizada a través de la edición de un solo archivo ubicado en /etc/samba/smb.conf.
A continuación, un ejemplo de una configuración básica:
#============== Configuración global ===================#
[global]
workgroup = PRUEBAGROUP
server string = Samba %v
wins support = no
load printers = no
#======= Seguridad =======#
security = user
map to guest = bad user
guest ok = yes
public = yes
hosts allow = 127.0.0.1 192.168.22.0/24
hosts deny = 0.0.0.0/0
#============== Definición comparticiones ==================#
[Musica]
comment = Música prueba.
path = /home/Datos/Musica/
available = yes
browsable = yes
writable = no
comment = Videos prueba.
path = /home/Datos/Videos/ [Box] copy = Musica
comment = Otros datos.
path = /home/Datos/Box/
writable = yes [/php]
¿Qué puede hacer Samba por mí?
Como fue mencionado anteriormente, Samba brinda toda la ayuda para que las maquinas Windows y Unix puedan coexistir en una misma red. Sin embargo, podemos puntualizar razones específicas por las cuales desearías instalar en tu red un servidor Samba. A continuación las enumeramos:
- Quieres ahorrar el gasto que genera pagar un servidor Windows NT para obtener las funcionalidades que este nos proporcionan.
- Deseas proporcionar un espacio común para realizar transferencias de datos entre un Servidor NT hacia un Linux o viceversa.
- Para compartir otros recursos como impresoras, entre clientes Windows y Linux.
- Resulta útil para establecer comunicación a ficheros NT desde un servidor Linux.
Veamos ahora a Samba en acción
Asumiremos que tenemos la siguiente configuración básica de red:
- Un servidor Samba en una máquina Linux, a esta la denominaremos hydra.
- Un par de clientes Windows, cuyos nombres serán phoenix y chimaera
- Todos conectados a través de red de área local (LAN).
- Adicionalmente, asumiremos también que hydra tiene una impresora de inyección conectada y una compartición de disco denominada network (ambos recursos pueden ser ofrecidos a las otras dos máquinas).
El gráfico representativo de esta red podemos verlo en la figura a continuación:
Como se puede observar, en esta red, cada una de las computadoras esta dentro del mismo grupo de trabajo. Para quienes no estén relacionados con el termino, un Grupo de Trabajo, es una etiqueta simple que identifica a un conjunto determinado de maquinas / computadoras / equipos que pertenecen a una red SMB. En una misma red pueden coexistir varios grupos de trabajo, pero para efectos del ejemplo solo colocamos uno.
Esperamos que te haya gustado nuestro articulo de introducción a Samba, recuerda que si etas interesado en sacar todo el potencial a tu sistema Linux, puedes echar un vistazo a nuestra sección.