Samba es una tecnología cliente/servidor que implementa el uso compartido de recursos de red en todos los sistemas operativos. Con Samba, los archivos e impresoras se pueden compartir entre clientes Windows, Mac y Linux/UNIX.
La funcionalidad principal de Samba se deriva de su implementación del protocolo Server Message Block (SMB). La compatibilidad con clientes y servidores SMB se incluye con todas las versiones modernas de Microsoft Windows, distribuciones de Linux y Apple Mac OSX. El software libre también puede obtenerse en samba.org. Debido a las diferencias técnicas entre estos sistemas operativos, la tecnología es bastante sofisticada.
Índice de contenidos
Lo que Samba puede hacer por usted
La samba puede ser utilizada de varias maneras diferentes. En una intranet u otras redes privadas, por ejemplo, las aplicaciones Samba pueden transferir archivos entre un servidor Linux y clientes Windows o Mac (o viceversa). Cualquiera que utilice servidores Web que ejecuten Apache y Linux puede considerar el uso de Samba en lugar de FTP para administrar el contenido del sitio Web de forma remota. Además de las transferencias simples, los clientes SMB también pueden realizar actualizaciones remotas de archivos.
Cómo usar Samba desde clientes Windows y Linux
Los usuarios de Windows a menudo asignan unidades para compartir archivos entre equipos. Con los servicios Samba ejecutándose en un servidor Linux o Unix, los usuarios de Windows pueden aprovechar las mismas facilidades para acceder a esos archivos o impresoras. Se puede acceder a los recursos compartidos Unix desde clientes Windows a través de los navegadores del sistema operativo como Windows Explorer , Network Neighborhood , e Internet Explorer .
Compartir datos en la dirección opuesta funciona de manera similar. El programa Unix smbclient soporta la navegación y la conexión a recursos compartidos de Windows. Por ejemplo, para conectarse a C$ en un ordenador con Windows llamado louiswu, escriba lo siguiente en la línea de comandos de Unix
smbclient \\louiswu\c$ -U nombre de usuario
donde username es un nombre de cuenta de Windows NT válido. (Samba le pedirá una contraseña de cuenta si es necesario.)
Samba utiliza las rutas de la Convención Universal de Nombres (UNC) para referirse a los hosts de red. Debido a que las shells de comandos de Unix normalmente interpretan los caracteres de la barra invertida de una manera especial, recuerde escribir barras invertidas duplicadas como se muestra arriba cuando trabaje con Samba.
Cómo usar Samba desde los clientes de Apple Mac
La opción File Sharing en el Compartimiento de las Preferencias del Sistema de Mac le permite encontrar Windows y otros clientes Samba. Mac OSX primero intenta automáticamente llegar a estos clientes a través de SMB y recurre a protocolos alternativos si Samba no funciona. Para obtener más información, consulte Cómo conectarse con el uso compartido de archivos en su Mac.
Requisitos para configurar Samba
En Microsoft Windows, los servicios SMB están integrados en los servicios del sistema operativo. El servicio de red Server (disponible a través del Panel de control/Red, pestaña Servicios) proporciona soporte para servidores SMB mientras que el servicio de red Workstation proporciona soporte para clientes SMB, Tenga en cuenta que SMB también requiere TCP/IP para funcionar.
En un servidor Unix, dos procesos daemon, smbd y nmbd, proporcionan toda la funcionalidad de Samba. Para determinar si Samba se está ejecutando actualmente, en la línea de comandos de Unix escriba
ps ax | grep mbd | more
y verifique que tanto smbd como nmbd aparezcan en la lista de procesos.
Inicie y detenga los demonios Samba en la forma normal de Unix:
/etc/rc.d/init.d/smb start/etc/rc.d/init.d/smb stop
Samba soporta un archivo de configuración, smb.conf. El modelo Samba para personalizar detalles como nombres de recursos compartidos, rutas de directorio, control de acceso y registro implica editar este archivo de texto y luego reiniciar los demonios. Un smd.conf mínimo (suficiente para que el servidor Unix sea visible en la red) tiene el siguiente aspecto
Algunas cosas a tener en cuenta
Samba soporta una opción para encriptar contraseñas, pero esta característica puede ser desactivada en algunos casos. Cuando trabaje con ordenadores conectados a través de redes inseguras, tenga en cuenta que las contraseñas de texto plano suministradas al utilizar smbclient pueden ser detectadas fácilmente por un sniffer de red.
Pueden ocurrir problemas de manipulación de nombres al transferir archivos entre ordenadores Unix y Windows. En particular, los nombres de archivos que están en mayúsculas y minúsculas en el sistema de archivos de Windows pueden convertirse en nombres en minúsculas cuando se copian al sistema Unix. Los nombres de archivos muy largos también pueden ser truncados a nombres más cortos dependiendo de los sistemas de archivos (por ejemplo, FAT de Windows antiguo) que se estén usando.
Los sistemas Unix y Windows implementan la convención de fin de línea (EOL)para archivos de texto ASCII de forma diferente. Windows utiliza una secuencia de dos caracteres de retorno de carro/alineamiento (CRLF), mientras que Unix utiliza sólo un carácter (el LF). A diferencia del paquete mtools de Unix, Samba no realiza la conversión EOL durante la transferencia de archivos. Los archivos de texto Unix (como las páginas HTML) aparecen como una sola línea de texto muy larga cuando se transfieren a un ordenador Windows con Samba.
Conclusión
La tecnología Samba existe desde hace más de 20 años y sigue desarrollándose con nuevas versiones que se publican regularmente. Muy pocas aplicaciones de software han disfrutado de una vida útil tan larga. La resistencia de Samba atestigua su papel como tecnología esencial cuando se trabaja en redes heterogéneas que incluyen servidores Linux o Unix. Aunque Samba nunca será una tecnología convencional que el consumidor medio necesite entender, el conocimiento de las PYMES y de Samba es útil para los profesionales de TI y de las redes de negocios.