Compartir archivos entre Windows y FreeBSD con Samba Autores: Whisper_ y Slink Fecha: 27 de octubre de 2001 En este documento voy a intentar describir la instalación y configuración de un entorno de compartición de archivos mediante SAMBA, basado en el protocolo SMB y que se apoya en NetBios. Este documento no pretende (más quisiera yo!) ser un manual exhaustivo de SAMBA, cuyas posibilidades se escapan al objetivo de este HOWTO. Sencillamente vamos a suponer que tenemos en casa dos Pc, uno con Windows y otro con FreeBSD y queremos compartir archivos. Mediante SAMBA crearemos un entorno de red compatible con Windows y transparente para éste, de forma que en el icono Entorno de Red del escritorio de win aparezca además de la máquina local nuestra máquina con FreeBSD con el/los directorios que queramos compartir.
Instalación de Samba Para instalar Samba, si aún no lo hemos hecho pues lo hacemos desde los ports, como de costumbre: yomismo# cd /usr/ports/net/samba/ && make install Posteriormente, si queremos arrancar Samba desde inetd para tenerlo activado con el inicio del sistema, editamos el archivo /etc/inetd.conf y añadimos: netbios-ssn stream tcp nowait root /usr/local/sbin/smbd smbd netbios-ns dgram udp wait root /usr/local/sbin/nmbd nmbd De esta manera nos aseguramos de que se activen los servicios necesarios bajo demanda. Hay otra forma de activar el servicio al arranque, y es la siguiente: cuando instalamos el port, se crea el archivo /usr/local/etc/rc.d/samba.sh.sample. No tenemos más que renombrarlo: yomismo# mv /usr/local/etc/rc.d/samba.sh.sample /usr/local/etc/rc.d/samba.sh De esta forma nos aseguramos el arranque a partir del próximo inicio del sistema.
Configuración de Samba Samba tiene unas posibilidades de configuración enormes, no prentendo abarcarlas, si no que voy a proponer una configuración para un entorno casero de compartición de archivos entre un pc con Windows y otro con FreeBSD. Para una configuración más específica, pues como siempre, man samba y man smb.conf nos serán de gran ayuda ;-) El archivo de configuración es /usr/local/etc/smb.conf. En /usr/local/share/examples/samba/ podremos encontrar una configuración de ejemplo y otra documentación. Con un smb.conf como este, una red FreeBSD/windows debería funcionar sin problemas:
# Aquí empieza la configuracion gral del server [global] workgroup = CRRPT # El grupo de trabajo es recomendable # que sea el mismo que en win hosts allow = 192.168.0. 127. # Aquí autorizamos las máquinas # de nuestra red log file = /var/log/log.%m max log size = 50 default = cositas # El nombre que le vamos a dar al directorio # compartido (así aparecerá en el # Entorno de red de Windows) socket options = TCP_NODELAY dns proxy = no security = share # Esto facilita una comparticion sin # contraseñas en sentido Windows -> FreeBSD. server string = Samba Server wins support = true # No es imprescindible pero recomendable # Aquí empieza la configuración concreta del share que vamos a crear [cositas] writable = yes guest only = yes comment = Home Directories path = /usr/home/miguel public = yes browseable = yes # Nos aseguramos que aparezca en # el Entorno de red Podemos crear tantos shares como queramos, cada uno de ellos con su ruta asociada, y éstos apareceran como carpetas en el entorno de red de Windows. Para configurar el Pc con Windows, en las propiedades TCP/IP de nuestro dispositivo de red, dando por hecho que ya tenemos una configuración de red correcta y los pc se "ven" con ping pues solo tendriamos que marcar en la pestaña Configuración WINS la casilla Activar resolución WINS y agregar la ip del pc con free. Para compartir los directorios y archivos elegidos, en Windows no tendremos más que hacer doble-clic en el icono Entorno de red del escritorio. En cambio, desde FreeBSD usaremos smbclient(consola) que es el cliente que nos instala samba por defecto. La forma de uso sería tal que así: # smbclient //nombre_host/recurso_compartido Observaremos una salida así: yomismo@host# smbclient //nombre_host/nombre_recurso added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0 Password: smb: \> La contraseña que nos solicita debe coincidir con la que hemos elegido al activar la compartición en windows. Si no hemos elegido ninguna contraseña ponemos lo que se nos ocurra que la aceptará. A partir de ahí el funcionamiento es similar al de una sesión FTP, si escribimos help nos saldrá un listado con los comandos soportados.
Gestión de usuarios y contraseñas bajo FreeBSD
Para hacer Samba más seguro, tenemos que usar contraseñas encriptadas y la gestión de usuarios de forma correcta. Primero empezaremos por añadir estas dos lineas a nuestro smb.conf. Con ello habilitaremos la seguridad basada en usuarios y las contraseñas encriptadas. security = user encrypt passwords = yes Si nuestro Windows es un 95, deberemos leer la documentación de Samba para habilitar las contraseñas encriptadas. En las versiones siguientes, está habilitado por defecto. Una vez hecho esto, debemos añadir los usuarios Unix que deseemos que tengan acceso a nuestro sistema FreeBSD; para ello usaremos adduser. Ahora nos falta configurar las contraseñas Samba, que son diferentes a las Unix. De este modo podemos tener dos claves diferentes para cada usuario. Si el usuario aún no está en la lista de usuarios de Samba haremos: # smbpasswd -a nombre_usuario Si sólo queremos cambiar la contraseña a un usuario ya existente, haremos lo mismo pero sin el modificador -a. Por último nos falta ajustar el nombre de usuario en la máquina Windows. Normalmente, al instalarlo nos configura el nombre de usuario como nuestro nombre completo. Esto, aparte de poco útil, es incorrecto en sistemas Unix. Si estamos ante un Windows NT, la solución más sencilla es cambiar el nombre de usuario a través del panel de control. En el caso de los Windows 9x, tenemos que tocar el registro. Abrimos el regedit y nos dirigimos a la clave: HKEY_LOCAL_MACHINE/Network/Logon En esta clave, veremos un campo llamado username, el cual debemos modificar y poner el mismo nombre de usuario que en la máquina FreeBSD. Hecho esto, reiniciamos. Ahora nuestra máquina Windows es capaz de identificarse en FreeBSD correctamente, y además podemos hacer que guarde la contraseña, de modo que los siguientes accesos sean automáticos. Esperamos que esto sirva de ayuda y ya sabéis, comentarios y sugerencias a las direcciones del inicio de la página.