Samba (software)

Este artículo trata sobre Samba (programa). Para otros usos de este término, véase Samba (desambiguación).
Samba
Información sobre la plantilla
Samba logo.png
Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS)
Última versión estable3.5.10 (26 de julio de 2011)
GéneroAcceso Remoto
IdiomaMultilenguaje
LicenciaLicencia GPL
Sitio web
http://www.samba.org/


Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para sistemas de tipo UNIX. De esta forma, es posible que ordenadores con GNU/Linux, Mac OS X o Unix en general se vean como servidores o actúen como clientes en redes de Windows. Samba también permite validar usuarios haciendo de Controlador Principal de Dominio (PDC), como miembro de dominio e incluso como un dominio Active Directory para redes basadas en Windows; aparte de ser capaz de servir colas de impresión, directorios compartidos y autentificar con su propio archivo de usuarios. Entre los sistemas tipo Unix en los que se puede ejecutar Samba, están las distribuciones GNU/Linux, Solaris y las diferentes variantes BSD entre las que podemos encontrar el Mac OS X Server de Apple.

Historia

Samba fue desarrollado originalmente para Unix por Andrew Tridgell utilizando un sniffer o capturador de tráfico para entender el protocolo usando ingeniería inversa. El nombre viene de insertar dos vocales al protocolo estándar que Microsoft usa para sus redes, el SMB o server message block. En un principio Samba tomó el nombre de smbserver pero tuvieron que cambiarlo por problemas con una marca registrada. Tridgell buscó en el diccionario de su máquina.

Características

SMB/CIFS

Protocolo de red (que pertenece a la capa de aplicación en el modelo OSI) que permite compartir archivos e impresoras (entre otras cosas) entre nodos de una red es decir compartir recursos entre computadoras. Mediante el soporte de este protocolo, Samba permite a los servidores Unix entrar en acción, comunicando con el mismo protocolo de red que los productos de Microsoft Windows. De este modo, una máquina Unix con Samba puede enmascararse como servidor en su red Microsoft y servicios.

Samba es una implementación de una docena de servicios y una docena de protocolos, entre los que están: NetBIOS sobre TCP/IP (NetBT), SMB (también conocido como CIFS), DCE/RPC o más concretamente, MSRPC, el servidor WINS también conocido como el servidor de nombres NetBIOS (NBNS), la suite de protocolos del dominio NT, con su Logon de entrada a dominio, la base de datos del gestor de cuentas seguras (SAM), el servicio Local Security Authority (LSA) o autoridad de seguridad local, el servicio de impresoras de NT y recientemente el Logon de entrada de Active Directory, que incluye una versión modificada de Kerberos y una versión modificada de LDAP. Todos estos servicios y protocolos son frecuentemente referidos de un modo incorrecto como NetBIOS o SMB.

Samba configura directorios Unix y GNU/Linux (incluyendo sus subdirectorios) como recursos para compartir a través de la red. Para los usuarios de Microsoft Windows, estos recursos aparecen como carpetas normales de red.

Los usuarios de GNU/Linux pueden montar en sus sistemas de archivos estas unidades de red como si fueran dispositivos locales, o utilizar la orden smbclient para conectarse a ellas muy al estilo del cliente de la línea de órdenes ftp.

Cada directorio puede tener diferentes permisos de acceso sobrepuestos a las protecciones del sistema de archivos que se esté usando en GNU/Linux. Por ejemplo, las carpetas home pueden tener permisos de lectura y escritura para cada usuario, permitiendo que cada uno acceda a sus propios archivos; sin embargo, deberemos cambiar los permisos de los archivos localmente para dejar al resto ver nuestros archivos, ya que con dar permisos de escritura en el recurso no será suficiente. La configuración de Samba se logra editando un solo archivo, accesible en /etc/smb.conf o en /etc/samba/smb.conf.

Samba implica a un par de demonios (procesos de UNIX) que proporcionan recursos compartidos a clientes SMB sobre la red . Estos demonios son:

  • smbd : Un demonio que permite compartición de archivos e impresoras sobre una red SMB y proporciona autentificación y autorización de acceso para clientes SMB.
  • nmbd Un demonio que busca a través del Windows Internet Name Service (WINS), y ayuda mediante un visualizador.

Razones para tener instalado Samba

  • No quieres usar un servidor Windows NT, ahorrándote el problema de las licencias.
  • Querer proporcionar un área común para datos para realizar transiciones desde windows hacia Unix, o viceversa.
  • Deseas compartir impresoras entre clientes Windows y Unix.
  • Puede que quieras acceder a ficheros NT desde un servidor Unix.
  • Mayor seguridad a que existe la posibilidad de acceder al código fuente.

Una máquina UNIX con Samba puede enmascararse como servidor en una red Microsoft y ofrecer los siguientes servicios:

  • Compartir uno o más sistemas de archivos.
  • Compartir impresoras, instaladas tanto en el servidor como en los clientes.
  • Autenticar clientes logueandose contra un dominio Windows.
  • Proporcionar o asistir con un servidor de resolución de nombres WINS.

Ejemplo de Configuración Básica

$ vi /etc/samba/smb.conf

[global]
workgroup = nombreGrupoTrabajo

[compartido]
comment = Archivos Compartidos
path = /home/nombreUsuario/compartido
browseable = yes
read only = no
guest ok = yes
writable = yes
valid users = nombreUsuario

Véase también

Fuentes