Samba es una suite de aplicaciones Unix que habla el protocolo SMB (Server Message Block). Muchos sistemas operativos, incluídos Windows y OS/2, usan SMB para operaciones de red cliente-servidor. 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 tu 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.
Ayudar a los clientes, con visualizador de Clientes de Red.
Autentificar clientes logeándose contra un dominio Windows.
Proporcionar o asistir con un servidor de resolución de nombres WINS.
Samba es la idea de Andrew Tridgell, quien actualmente lidera el equipo de desarrollo de Samba development desde su casa de Canberra, Australia. El proyecto nació en 1991 cuando Andrew creó un programa servidor de ficheros para su red local, que soportaba un raro protocolo DEC de Digital Pathworks. Aunque él no lo supo en ese momento, aquel protocolo más tarde se convertiría en SMB. Unos cuantos años después, él lo expandió como su servidor SMB particular y comenzó a distribuirlo como producto por Internet bajo el nombre de servidor SMB. Sin embargo, Andrew no pudo mantener ese nombre -ya pertenecía como nombre de producto de otra compañía-, así que intentó lo siguiente para buscarle un nuevo nombre desde Unix:
grep -i ’s.*m.*b’ /usr/dict/words
y la respuesta fue:
salmonberry samba sawtimber scramble
De ésta manera nació el nombre de Samba. Hoy, la suite Samba implica a un par de demonios que proporcionan recursos compartidos a clientes SMB sobre la red (las comparticiones son denominadas a veces también como servicios). 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.
Samba se encuentra actualmente mantenido y es ampliado por un grupo de voluntarios bajo la supervisión activa de Andrew Tridgell. Al igual que el sistema operativo Linux, Samba es considerado por sus autores Open Source software (OSS), y es distribuido bajo la the GNU General Public License (GPL). Desde su concepción, el desarrollo de Samba ha sido patrocinado en parte por la Australian National University, donde Andrew Tridgell hizo su doctorado. En adición, algunas partes del desarrollo han sido patrocinadas por distribuidores independientes como Whistle and SGI. Es algo verdaderamente testimonial el que entidades tanto comerciales como no comerciales estén dispuestas a gastar dinero para dar soporte a un esfuerzo Open Source.
Microsoft también ha contribuido materialmente poniendo a disposición su definición de SMB y del Internet-savvy Common Internet File System (CIFS), como Public Request for Comments (RFC), y otros documentos estandar. El protocolo CIFS es el nuevo nombre de las futuras versiones del protocolo SMB que serán usadas en los productos Windows -los dos términos pueden ser usados aleatoriamente en éste libro-. De hecho, verás el protocolo escrito como "SMB/CIFS".
¿Qué puede hacer Samba por mí?
Como quedò explicado antes, Samba puede ayudar a las máquinas Windows y Unix a coexistir en la misma red. Sin embargo, existen algunas razones específicas por las cuales podrías desear instalar un servidor Samba en tu red:
No quieres pagar un servidor Windows NT para obtener las funcionalidades que este proporciona.
Puedes querer proporcionar un área común para datos o directorios de usuarios en orden a realizar una transición desde un servidor NT hacia un Unix, o viceversa.
Puede que desees compartir impresoras a entre clientes Windows y Unix.
Puede que quieras acceder a ficheros NT desde un servidor Unix.
Veamos ahora a Samba en acción. Asumiremos que tenemos la siguiente configuración básica de red: un servidor Samba sobre una máquina Unix, al cual le asignaremos el nombre hydra, y un par de clientes Windows, a los cuales les asignaremos los nombres phoenix y chimaera, todos conectados vía red de área local (LAN). Asumamos también que hydra también tiene una impresora de inyección conectada a ella, lp, y una compartición de disco denominada network -ambos recursos podemos ofrecerlos a las otras dos máquinas-.
En esta red, cada una de las computadoras comparten el mismo grupo de trabajo.
Un Grupo de Trabajdo es simplemente una etiqueta de nombre de grupo que identifica a una determinada colección de ordenadores y sus recursos sobre una red SBM. Pueden existir varios grupos de trabajo sobre la red al mismo tiempo, pero para nuestro ejemplo
sólo tendremos uno: el grupo de trabajo SIMPLE.
Compartiendo un Servicio de Disco.
Si todo está bien configurado, deberíamos poder ver al servidor Samba server, hydra, a través del visualizador de red (entorno de red) de la máquina Windows llamada phoenix incluyendo a hydra y a cada una de las máquinas que residen en el grupo de trabajo SIMPLE. Advierte el icono Entire Network al principio de la lista. Como mencionamos antes, pueden existir más grupos de trabajo sobre una red SMB al mismo tiempo. Si un usuario hace click sobre ese icono, verá una lista de todos los grupos de trabajo que actualmente existen en la red.
Podemos entrar en el servidor hydra con un doble click sobre su icono. Esta acción provoca que se contacte con hydra y se le solicite una lista de sus recursos compartidos -La impresora y el disco- que proporciona la máquina. En nuestro caso, existe una impresora nominada lp y un disco compartido llamado network en el servidor.
La ventana muestra los nombres de las máquinas con letras mayúsculas/minúsculas (Hydra). Las mayúsculas son irrelevantes en los nombres de host (máquinas) así que puedes leer hydra, Hydra, y HYDRA como salida, pero todas se referirán al mismo sistema. Gracias a Samba, Windows 98 ve al server Unix como a un servidor SMB válido, y puede acceder a la carpeta network como si fuese una carpeta más del sistema.
Una característica popular de Windows 95/98/NT es que puedes mapear una letra de unidad hacia un direcrotio de la red usando la opción "Conectar a Unidad de Red" desde el explorador de Window. Una vez lo hayas hecho, tus aplicaciones podrán acceder a la carpeta a través de la red con una unidad de disco estándar. Una vez llegados a este punto, podrás lamacenar datos en ella, instalar y ejecutar programas, e incluso protegerla mediante contraseña contra accesos no deseados.
Una forma equivalente de representar un directorio en una máquina de la red es usando dos barras (backslashes), seguidas del nombre de la máquina de red, otra barra (backslash), y el directorio de red de la máquina, como se muestra a continuación:
\\máquina-de-red \directorio
Esto se conoce como notación UNC (Universal Naming Convention) en el mundo Windows. por ejemplo, la caja de diálogo representa el directorio de red del servidor hydra como:
\\HYDRA\network
Si esto te suena de algo, probablemente estarás pensando en uniform resource locators (URLs), que son las notaciones que usan los navegadores web como Netscape Navigator e Internet Explorer para resolver máquinas a través de Internet. Asegúrate de no confundirte: los navegadores web usan barras inclinadas a la derecha y no a la izquierda, y están precedidas por el nombre de protocolo de transferencia de datos a usar (p.ej., ftp, http) y dos puntos (:). En realidad, URLs y UNCs son dos cosas completamente distintas.
Una vez la unidad de red está configurada, Windows y sus programas la verán y podrán usar como si ese directorio de red fuese un dico más. Si tienes aplicaciones multiusuario, puedes instalarlas sobre la unidad de red.
Advierte la tubería de enlace en el icono para la unidad "G:";esto indica que es una unidad de red, en lugar de una unidad física.
Desde nuestro cliente Windows NT Workstation, chimaera, Samba aparece de forma idéntica a como lo hace en el cliente Windows 98.
Viendo cosas desde la parte Unix
Como mencionamos antes, Samba aparece como un juego de programas demonios.
Puedes verlos con los comandos Unix ps y netstat, puedes también leer cualesquiera mensajes que ellos generen a través de los ficheros de depuración de Unix syslog (dependiendo de cómo hayas configurado Samba), y puedes configurarlos desde un simple fichero de configuración: smb.conf. Además, si quieres hacerte una idea de qué hace cada uno de los demonios, Samba tiene un programa llamado smbstatus que te informará en linea.
Así es como trabaja:
# smbsta tus
Samba ve rsion 2.0. 4
Service uid gid pid machine
-------- ---------- ---------- ---------- --------
network davecb dave cb 7470 pho enix (192. 168.220.10 1) Sun May 16
network davecb dave cb 7589 chi maera (192 .168.220.1 02) Sun May 16
Locked f iles: Pid DenyMode R/W Oplock Name
-------- ---------- ---------- ---------- ---------- --
7589 DEN Y_NONE RDON LY EXCLUSIV E+BATCH /h ome/samba/q uicken/inet /common/sy stem/help. bmp
Sun May 16 21:23:40 1999 7470 DENY_WRITE RDONLY NONE /home/sam ba/word/off ice/findfa st.exe
Sun May 16 20:51:08 1999 7589 DENY_WRITE RDONLY EXCL USIVE+BATC H /home/sam ba/quicken /lfbmp70n.d ll
Sun May 16 21:23:39 1999 7589 DENY_WRITE RDWR EXCLUSI VE+BATCH /home/samba /quicken/i net/qdata/r untime.dat
Sun May 16 21:23:41 1999 7470 DENY_WRITE RDONLY EXCL USIVE+BATC H /home/sam ba/word/of fice/osa.ex e
Sun May 16 20:51:09 1999 7589 DENY_WRITE RDONLY NONE /home/sam ba/quicken/ qversion.d ll
Sun May 16 21:20:33 1999 7470 DENY_WRITE RDONLY NONE /home/sam ba/quicken/ qversion.d ll
Sun May 16 20:51:11 1999
Share mo de memory usage (bytes ):
1043432( 99%) free + 4312(0%) u sed + 832( 0%) overhead = 1048576(1 00%) total
El informe de status de Samba que ves arriba proporciona tres grupos de datos, cada uno de ellos dividido en secciones separadas. La primera sección te dice qué sistemas han conectado al servidor Samba, identificando a cada cliente por su nombre de máquina ( phoenix y chimaera) y dirección IP. La segunda sección reporta el nombre y status de los ficheros que están actualmente en uso en una compartición del servidor, incluyendo el status lectura/estritura y los bloqueos de los ficheros. Finalmente, Samba reporta la cantidad de memoria que actualmente está dedicada para los recursos que administra, incluyendo la cantidad activamente usada por los recursos más la restante de overhead. (Advierte que esta no es la misma que la cantidad total de memoria que los procesos smbd o nmbd están usando).
No te preocupes si no entiendes estas estadísticas; te serán más fáciles de entender a medida que profundices las entradas sucesivas que le iremos dedicando a Samba
0 comments:
No insertes enlaces clicables, de lo contrario se eliminará el comentario. Si quieres ser advertido via email de los nuevos comentarios marca la casilla "Notificarme". Si te ayudé con la publicación o con las respuestas a los comentarios, compártelo en Facebook, Twitter, Tumblr, Google +, Pinterest o Instagram. Gracias.