Samba: Necesaria Introducción

samba_logo

¡Hola Amigos!. Empezaré declarando que No es lo mismo utilizar Samba que escribir sobre él. Como dijo un gran poeta hindú o persa (no recuerdo bien), “Moviendo el dedo se escribe, y una vez escrito, ni toda tu devoción ni todas tus lágrimas podrán borrar algo de lo escrito”. Pido disculpas adelantadas por la extensión del artículo o por alguna omisión involuntaria. ¡Gracias!.

¿Que es Samba para los usuarios de UNIX/Linux?. Entre otras definiciones es tremenda forma de bailar practicada en Brasil y en muchos otros países, que excede con mucho a mis modestos conocimientos sobre el Cómo Divertirse. :-) Así pues, acudo a mi enciclopedia y encuentro:

De Wikipedia: 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 computadoras 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.

Veremos:

  • Ejemplos del uso de Samba
  • Instalemos y leamos Documentación
  • Versiones Samba 3.xxx y Samba 4.xxx
  • Permisos y derechos en carpetas y archivos en GNU/Linux
  • Algunos programas relacionados con Samba en Wheezy
  • Recomendaciones

Ejemplos del uso de Samba

El Inmenso proyecto Samba está presente en muchos programas y servicios en nuestro mundo Linux: En el diario y simple acceso a recursos compartidos en redes SMB/CIFS que hacemos diariamente los que tenemos instalados Linux en nuestras estaciones de trabajo.

Servidores de ficheros y de impresoras tanto con usuarios que se autentican ante el propio servidor, como ante un servidor LDAP, o ante un Active Directory de Microsft Windows. También lo veremos en el papel protagónico principal en Controladores de Dominio al estilo de los NT 4 de Microsoft, hechos sobre UNIX/Linux. Ejemplo de esos PDC son ClearOS, Zentyal, Linux Artica Proxy, etc.

Ahora, con la salida estable del Samba 4, también nos podemos hacer un Active Directory sobre UNIX/Linux. Además, es el actor principal de los llamados FreeNAS de la distribución FreeBSD. Para más información, visite el Sitio Oficial de Samba, cuyo slogan es: “Opening Windows to a Wider World. Samba is the standard Windows interoperability suite of programs for Linux and Unix“. El nuevo “Look” del sitio es muy sugerente.

Instalemos y leamos la Documentación

“No existe mejor manual ni artículo que la propia documentación que trae el paquete samba-doc“. En la Aldea www encontramos miles -muchos más- artículos, tutoriales, howtos, y el copón divino de literatura en todos los idiomas sobre Samba.

No pretendemos, ni por asomo, sustituir a la documentación acompañante, ni mucho menos a los posts. Acaso y muy humildemente dar como siempre un Punto de Entrada al fascinante mundo del Proyecto Samba. Para instalar la documentación lo hacemos mediante el Synaptic o ejecutamos en una consola como el usuario root:

aptitude install samba-doc samba-doc-pdf

La documentación se instala en las carpetas /usr/share/doc/samba-doc y /usr/share/doc/samba-doc-pdf respectivamente. Por favor, aunque esté en inglés, lean la documentación. En caso de que no puedan, es hora de aprender al menos a leer inglés. :-)

Versiones Samba 3.xxx y Samba 4.xxx

Aclaramos que en el repositorio del Wheezy, encontraremos los paquetes samba y samba4. El primero es la versión 3.6.6-6, mientras que el segundo es la 4.0.0~beta2+dfsg1-3.2.

La diferencia fundamental entre las versiones 3.xxx y la 4.xxx, es que con las primeras podemos instalar, entre otros tipos de servicios, un Controlador Principal de Dominio al estilo de los NT4 de Microsoft; mientras que con la serie 4, ya podemos hacernos un Directorio Activo o “Active Directory” al estilo de los Directorios Activos con Microsoft Windows 2000 o superiores.

Permisos y derechos en carpetas y archivos en GNU/Linux

Muy Importante: Imprescindible que antes de continuar leyendo, descargue una copia del artículo “Permisos y derechos en GNU/Linux“, del autor Juan Antonio Aguilera, de la UCI en Cuba. 1 febrero 2012 a las 12:29 PM (tomada del sitio humanos.uci.cu). También puede leer el Artículo Original aquí.

Uno de los aspectos “difícil de entender” sobre Samba es precisamente la seguridad inherente al sistema de ficheros UNIX/Linux sobre el cual se asienta y opera. Este simple detalle constituye uno de los problemas principales que tienden a confundir a muchos que se inician en Samba y lo tildan hasta de “Diabólico”. ¡Pobre Samba!. :-)

Muchos usuarios que vienen del mundo Windows, se quedan perplejos ante la forma en que se manejan los recursos compartidos vía Samba, debido en lo fundamental a que no se comporta como ellos esperan. Algunos Administradores de Redes Microsoft se confunden frecuentemente con respecto al Control de Acceso a la Red y en cómo garantizar el acceso a los usuarios que ellos necesitan, mientras protegen otros recursos de accesos no autorizados. Por otra parte, Administradores UNIX/Linux, sobre todo lo que no están familiarizados con el ambiente de Microsoft Windows, tiene dificultad en visualizar cómo fijar adecuadamente los permisos de acceso a archivos y directorios de forma que satisfagan los deseos de los usuarios de Windows.

El Problema Fundamental radica en el cómo se asignan los permisos de archivos y directorios en cada Sistema de Archivos de cada uno de los ambientes.

Samba no puede obviar ni ocultar esa realidad aunque establezca un puente o transición en cierto grado entre ambos ambientes. Samba se concibió para proveer un medio de intercambiar datos entre diferentes sistemas operativos. Samba no se creó para cambiar a la plataforma UNIX/Linux en una plataforma como Microsoft Windows. En vez de eso, el propósito inicial fue el brindar un nivel suficiente de intercambio de datos entre los dos ambientes. No obstante, lo que es capaz de hacer actualmente Samba, excede a los planes y perspectivas de sus inicios, a pesar de que la corta distancia existente entre ambos continúa disminuyendo cada día.

Algunos programas relacionados con Samba en Wheezy

Si realizamos una búsqueda con la palabra “samba” por Descripción y nombre mediante el Synaptic, nos devolverá una lista bastante larga de paquetes. También la podemos obtener si ejecutamos el siguiente comando:

aptitude search ~dsamba

Si queremos guardar en un archivo de texto para una tranquila lectura sobre la información de todos los paquetes relacionados, podemos hacerlo mediante:

aptitude show ~dsamba > samba-paquetes.txt

También pudimos ejecutar aptitude search ~dsamba > samba-lista-paquetes.txt, y posteriormente leer con calma los nombres. Además, sería beneficioso hacer lo mismo con la palabra “smb”. Esa tarea la dejamos a su discreción. :-) Nosotros nos limitaremos solamente a describir muy brevemente algunos de ellos. Por orden alfabético seleccionamos:

fusesmb: Sistema de archivos cliente basado en el protocolo de transferencia de archivos SMB. Proporciona la posibilidad de intercambiar archivos de forma transparente con servidores Microsoft Windows, y servidores UNIX ejecutando Samba. Se basa en FUSE, el entorno de sistemas de archivos en espacio de usuario de Linux.

gadmin-samba: Herramienta para la configuración de Samba con interfaz gráfica GTK+. gadmin-samba es un programa fácil de utilizar mediante el cual podemos implementar un servidor de ficheros e impresoras; un controlador de dominio; administrar totalmente a usuarios y recursos compartidos, etc.

gnome-system-tools: Herramientas para la configuración del GNOME. Entre sus múltiples características, encontramos la referente a compartir carpetas mediante Samba. Aclaramos que el nivel de control sobre los permisos de usuarios es extremadamente básico y personalmente no la recomiendo para ésta tarea.

gosa: Palabra Mayor. Programa que brinda la Administración de Sistemas mediante una interfaz web, para implementaciones de servicios basados en LDAP. Provee el acceso a POSIX, Samba, Proxy, Fax, PureFTP, cuentas Kerberos según la implementación del Massachusset Institute of Thecnology MIT, y muchas otras funciones.

kdenetwork-filesharing: Módulo de KDE para la configuración de recursos compartidos. Interfaz gráfica a la cual accedemos vía el Panel de Control para configurar recursos compartidos mediante Network File System o Samba.

ldap-account-manager: Interfaz Web para la administración de cuentas en un directorio LDAP. Se ejecuta sobre un servidor de páginas web y nos permite administrar cuentas de usuarios, grupos y máquinas. Actualmente soporta tipos de cuenta Samba 3, Unix, Kolab2 y entradas de libretas de direcciones, entre otras.

samba: Servidor de archivos, impresoras e identificación usando SMB/CIFS en UNIX. Samba es una implementación del protocolo SMB/CIFS para sistemas UNIX, proporcionando la posibilidad de compartir archivos e impresoras entre plataformas como Microsoft Windows, OS X y otros sistemas UNIX.

Samba también puede funcionar como un controlador de dominio como lo haría un NT4, y puede integrarse con dominios de NT4 y Reinos de «Active Directory» como un miembro de un Reino (“Realm”). Para utilizarlo en un dominio de NT4 o un reino de «Active Directory», también necesitará el paquete winbind. El paquete samba NO es necesario para conectarse a los servidores de SMB/CIFS existentes (véase smbclient) o para montar sistemas de archivos remotos (véase cifs-utils).

  • cifs-utils: Utlidades para el Sistema de Archivos Comunes para Internet o “Common Internet File System“. Contiene las herramientas necesarias para montar en el sistema de archivos local, sistemas de archivos remotos de redes que soporten el protocolo CIFS.

samba4: Servidor de archivos, impresoras e identificación usando SMB/CIFS en UNIX. Servidor Controlador de Dominio tipo NT y Directorio Activo (version 4).

smb4k: Avanzado y muy buen navegador de equipos y recursos compartidos en redes SMB/CIFS. Pertenece a la plataforma KDE.

smbclient: Herramientas de consola para trabajar con recursos compartidos en redes SMB/CIFS. Contiene utilidades de la línea de comandos para acceder a servidores Windows y Samba: smbclient, smbtar, smbspool, smbtree y otras.

swat: Samba Web Administration Tool”. Permite administrar un servidor Samba vía Web. No se va a mantener más por parte de sus desarrolladores. Por otra parte, su configuración por defecto no es segura para redes no confiables, según el Team de Debian.

winbind: Servidor de integración del servicio de nombres de Samba. Integra los mecanismos de autenticación y de servicios de directorio (búsqueda de usuarios y grupos ) desde un Controlador de Dominio o un Directorio Activo de Windows, en una máquina UNIX/Linux

En Ubuntu tenemos también al programa system-config-samba, el cual da un nivel básico para administrar recursos compartidos e importar usuarios de Linux hacia la base de datos de Samba. Dedicaremos un artículo a cómo podemos instalar y usar esa herramienta en Wheezy.

Recomendaciones

  • Siempre ir de lo sencillo a lo complejo.
  • Comencemos por:

.- Usar las herramientas para acceder y trabajar con recursos en redes SMB/CIFS.
.- Estudiar y aplicar los Permisos y Derechos en Carpetas y Archivos en sistemas de ficheros GNU/Linux.
.- Estudiar las Definiciones y Conceptos de la documentación.
.- Empezar por compartir carpetas de forma local.
.- Aprender a unir nuestro Debian a un Dominio Microsoft.
.- Compartir recursos locales para usuarios de un Dominio o Directorio Activo de Windows.
.- Volver a estudiar y practicar mucho.
.- Implementar nuestro propio Controlador de Dominio en Samba.

No quiero terminar sin antes declarar que Samba no es un tema adecuado para los Sospechosos Habituales de caer en La Desesperación y la Prisa, ésta última considerada el octavo Pecado Capital según la Filosofía China. :-)

Y hasta la próxima aventura, Amigos!!!.

Agradecimientos:

Tomado del Sitio Oficial de Samba Team

Samba Team Members

Here are contact addresses for some of the team members:

Samba Team Alumni

Many thanks to the following people for their contributions to Samba during their time as team members.


fico

fico: Ingeniero Termo Energético de profesión. Administrador de Redes desde hace ya varios años. Programador en Visual FoxPro. Debianero de Corazón, y "OldFashion Man".


18 comentarios en “Samba: Necesaria Introducción

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *

  1. Muy buen articulo, agradeceria un poco de asesoria en la implementación de un PDC. Saludos.

    1
    • Sí, estaría genial un HOW TO integrar equipos linux en dominios de Active Directory, sobre todo la parte de la autentificación de usuarios y carpetas compartidas. De lo poco que me informé creo que lo complicado es conseguir que los usuarios del grupo “Administradores” de active directory tengan permisos de super user en linux

      2
      • argh! no puedo (o no se cómo hacerlo) editar mi comentario anterior. Simplemente quería agradecer al autor el post que se ha currado, que casi se me pasa!
        PD: ya había oído hablar de windbind pero aún no me he informado mucho. Si veo que consigo integrar equipos linux en dominios Active directory, a lo mejor me atrevo a escribir mi primer post…

        3
  2. Muy buena introducción!!
    Supongo que se vienen una larga serie de artículos sobre la instalación, implementación, etc, etc, y algún que otro video tutorial de pasos de Samba realizados por una bella morena…

    4
    • Firefox 15.0Debian GNU/Linux
      Federico A. Valdés Toujague

      Muchas Gracias a TODOS por sus comentarios y agradecimientos!!!. La idea es precisamente la de ir de lo más simple a lo más complejo a través de una serie de artículos, pues por experiencia se que en el tema Samba no se pueden quemar etapas. Insisto en la lectura de la documentación acompañante (lamentablemente en inglés) y el tema de los Permisos en carpetas y archivos. No se desesperen que todo llega a su tiempo. Y si es posible, una mulata o una morena cubana, explicando como bailar Samba. :-)

      5
  3. A mi samba siempre me ha funcionado, pero por algún motivo no me transfiere los datos a más de 900 kb/s XD

    7
    • Mmm, tendras alguna opcion extra de seguridad activada?
      SAMBA es lento, pero no tanto…

      8
    • Firefox 5.0Debian GNU/Linux
      Federico A. Valdés Toujague

      Samba no es lento para nada. Una red lenta se puede deber a que tiene un DNS o tampoco un servicio WINS. Pueden ser muchos factores ajenos al Samba. Prueba agregando ésta línea al smb.conf:

      socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192

      Una LAN sin un buen servicio DNS se hace lenta. Una LAN clásica con clientes Windows, sino tienes un servicio WINS funcionando -uno sólo por subnet- también se hace lenta. Un servidor de ficheros en Samba, bien configurado es más rápido que uno con Windows.

      9
    • Perdón, olvidé el NO. Quise decir:

      Samba no es lento para nada. Una red lenta se puede deber a que NO tiene un DNS o tampoco un servicio WINS. Pueden ser muchos factores ajenos al Samba. Prueba agregando ésta línea al smb.conf:

      socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192

      Una LAN sin un buen servicio DNS se hace lenta. Una LAN clásica con clientes Windows, sino tienes un servicio WINS funcionando -uno sólo por subnet- también se hace lenta. Un servidor de ficheros en Samba, bien configurado es más rápido que uno con Windows.

      10
  4. Excelente :D uso samba solo para compartir archivo e impresora, smb4k una herramienta genial :D

    11
  5. Firefox 21.0Windows 7 x64 EditionAero
    elendilnarsil

    Por fin comienzan a hablar de Samba… XDDDD

    12
  6. Buen post, fico. Ésto me servirá para compartir carpetas desde mi Debian y que sea visible en la intranet de mi casa que tienen todos Windows.

    15
    • Firefox 5.0Debian GNU/Linux
      Federico A. Valdés Toujague

      Saludos Elio!!!. Seguro te servirá. Trataremos de seguir el orden de las propias Recomendaciones. Lo único que no prometo aun es un Active Directory, tema muy técnico y con muchos pasos con posibles equivocaciones. Veremos más adelante

      16
  7. Buen artículo yo de samba solo se lo había visto nombrar al tío de la sombra del helicóptero diciendo si le funcionaba bien o no xD

    17

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *