samba

En este apunte describo cómo entregar un servicio de ficheros a través de la red con SMB2 (Samba). Es un ejemplo muy sencillo, como servidor un equipo Linux y como cliente un Mac OSX. Tengo otro apunte sobre SMB y QNAP muy parecido.

SMB (Server Message Block) es un “Protocolo” de red que entre otras cosas hace posible la compartición de archivos e impresoras entre nodos de una red. Lo inventó IBM, pero el que lo modificó, lo llevó a la fama y hoy en día mantiene y sigue ampliando es Microsoft. CIFS (Common Internet File System) es un “Dialecto” de SMB. Un dialecto es un conjunto de “mensajes” que definen una versión particular del protocolo SMB. Microsoft implementa SMB en sus equipos y añadió múltiples mejoras en su dialecto CIFS. Samba es una implementación libre del protocolo SMB (o llámalo CIFS si quieres) que está disponible en plataformas GNU/Linux (por ejemplo el QNAP), Mac OS X o Unix.

  • SAMBA 3.5.2 usa SMB1 (estable y muy implementado)
  • SAMBA >= 3.6.0 usa SMB2 (entró en pista en 2014 en QNAP, MacOSX, …)
  • SAMBA >= 4.0.0 usa SMB3 (ya por el 2014 estaba en “desarrollo”, estable y poco implementado)

El protocolo nativo de Apple de toda la vida eta AFP, desde OSX Mavericks incorpora y recomienda SMB2, ha pasado a considerarse el protocolo por defecto, en este PDF OSX Mavericks Core Technology Overview, pagina 21 encontrarás más información.

 

Instalación del Servidor

Se trata de un Linux con Gentoo e instalo Samba (versión 3.6.x // SMB2)

 

Configuración

Preparo el fichero smb.conf. En este ejemplo voy a compartir un único directorio llamado /cloud

&mbsp;

Configuración

Arranco el servicio y lo configuro para que arranque de forma automática en el próximo boot

 

tdbsam

El backend para guardar el nombre/contraseña de los usuarios de Samba puede ser: smbpasswd, tdbsam o ldapsam. Para entornos simples (caseros) el recomendado es tdbsam, formato “TDB” (trivial database). Las dos líneas relacionadas en la sección [global]de la configuración son:

El siguiente paso es crear las cuentas en Samba, en este ejemplo creo solo una:

Por si acaso lo necesitas, echa un ojo al comando pbedit, puedes borrar cuentas con pdbedit -x usuario o ver el detalle de una cuenta creada con pdbedit -Lv usuario.

Cliente OSX

Desde el Finder conecto con el servicio. Es tan sencillo como pulsar CMD+K en el Finder y escribir la notación apropiada

SMB2-1

Nos pedirá la contraseña del usuario, que puedo guardar en el Llavero para que la próxima vez ya no la solicite

SMB2-2