Guía de resolución de problemas con Samba

De MEPIS Documentation Wiki

Este artículo o sección es un esbozo. Puedes ayudar al proyecto de Documentación de Mepis ampliándolo. Por favor comprueba primero la versión en inglés y haz los cambios allí y añade la traducción en español depués para así matener la información coherente.

Samba es la implementación de código abierto SMB/CIFS, comúnmente conocido como la compartición de archivos de Windows. Samba abarca mucho más que la mera compartición de archivos, como compartición de impresoras, mensajería y autentificación de dominio. Este artículo se va a centrar en la compartición de archivos dado que es el uso más común para usarios domésticos.

Samba es bastante complejo y muchas pasos de la configuración pueden dar problemas. Se va a prestar a tención a puntos de Samba que pueden dar problemas y cómo resolverlos.

Algunos prerequisitos

Antes de comenzar con la resolución de los problemas se necesita hacer algunas cosas que pueden ser de ayuda:

  • Obtener y apuntar los nombres de los equipos y las direcciones IP de los ordenadores involucrados. En Linux, usar tel comando "ifconfig" para obtener las direcciones IP y "hostname" para obtener el nombre del equipo. En Windows, abrir la Línea de comandos (ubicada en Accesorios) y usar el comando "ipconfig" para obtener la dirección IP y "hostname" para obtener el nombre del equipo.
  • Saber que el archivo de configuración Samba en Linux se encuentra en /etc/samba/smb.conf. No importa que herramienta se use para su configuración, todos los parámetros de configuración se almacenan en dicho archivo.
  • Saber que los archivos de registro de actividad de Samba se guardan en Linux Samba en /var/log/samba. Se necesita ser superusuario para leerlos.

Resolución de problemas de conectividad

El primer paso en la resolución de problemas de Samba es determinar si los dos ordenadores involucrados pueden "hablar" entre ellos; a esto se le llama conectividad.

  • Conectividad básica de red: Ejecutar desde la línea de comandos de cada equipo
     ping xxx.xxx.xxx.xxx
    "xxx.xxx.xxx.xxx" debería de ser la dirección IP del otro equipo. Se deberían obtener varias respuestas (en Windows, se obtienen 4 respuestas, en Linux se obtienen respuestas hasta que se pulse ctrl-C). Si np se obtiene respuesta se tienen problemas de conectividad básica (o una configuración del cortafuegos muy restrictiva).
  • Resolución de nombres: Para acceder a otro equipo usando su nombre, se necesita tener algo que traduzca los nombres de equipos en direcciones. Samba tiene varias formas de hacer estó, pero la que se usa por defecto es un servicio llamado "servicio de nombres netbios" o nmbd. Para comprobar si se puede acceder a otro equipo usando su nombre, escribir en Linux "nmblookup nombredelequipo". En Windows, escribir "nbtstat -a nombredelequipo". Se debería de obtener alguna respuesta indicando que el equipo con dicho nombre existe.
  • Problemas con el cortafuegos: Los cortafuegos suelen ser un causa habitual de problemas de conectividad. El equipo con el elemento compartido necesita tener los puertos de Samba abiertos a los otros equipos de la red. Si el cortafuegos no incluye Samba cmo la lista de servicios permitidos, se pueden especificar los puertos de 135 hasta el 139 y el puerto 445. Estos deberían de ser todos los puertos necesarios para que Samba funcionara. También se puede deshabilitar el cortafuegos temporalmente para ver si se mejora la situación.

Cuestiones relativas a la configuración de seguridad

La seguridad en Samba puede ser un poco confusa debido al gran número de opciones. Lo que más confusa lo hace es que ¡algunas opciones pueden influir en la manera en que otras funcionana!

  • Hosts permitidos: Samba en Linux ofrece la posibilidad de especificar que hosts (ordenadores de la red) o redes tienen permitido el acceso a los elementos compartidos. Se encuentra en el archivo de configuración smb.conf. La opción de configuración por defecto en MEPIS es:
    hosts allow = 192.168.0. 192.168.1. 192.168.2. 192.168.79. 127.
    Si la direcciones de red no comienzan con algno de los nombres mostrados, no se va a poder conectar a los elementos compartidos en MEPIS. Se puede añadir la red a la lista, la dirección IP específica o siemplemente permitir todos los hostos cambiando la línea por:
    hosts allow = ALL
  • Modo de seguridad: Samba en Linux admite cinco modos de seguridad distintos; sólo dos son relevantes para la mayoría de los usuarios de redes dométicas: user y share.
  • Usuario (User): Se usa este modo cuando se quiere tener elementos compartidos seguros que se autentican usando la lista local de usuarios.
  • Elemento compartido (Share): Este modo es mejor cuando se quieren elementos compartidos abiertos y sin seguridad, o elementos compartidos que requieren una contraseña (pero no un nombre de usuario) para acceder a ellos. En otras palabras, este modo se comporta de forma similar a los elementos compartidos en Windows 9x/ME.
  • Permisos del elemento compartido: Cada elemento compartido tiene un conjunto sencillo de permisos que restringen que se puede hacer con los archivos y carpetas accedidos mediante él. Por defecto los elementos compartidos son de sólo lectura. Se tienen que especificar los permisos de escritura en caso de querer concederlos.
  • Permisos de archivo: Los permisos locales de los archivos también se aplican. Si el modo de seguridad es "User", entonce se aplican los permisos de acuerdo con el nombre de usuario con el que se autenticó el acceso. En el modo de seguridad "Share", se suele acceder a los archivos usando el usuario "nobody" en el grupo "nogroup". Si se quiere permitir la lectura y escritura a archivos compartidos en modo share, hay que asegurarse de que el usuario "nobody" o el grupo "nogroup" tiene permisos de escritura y lectura para dichos archivos.

Los permisos de archivo y elementos compartido son acumulativos y las restricciones siempre prevalecen sobre los permisos. En otras palabras, si un usuario se autentica en el servidor como el usuario "warren", y el usuario "warren" tiene permisos de lectura y ejecución en el archivo "miarchivo", no podrán escribir en dicho archivo incluso si los permisos del elemento compartido permiten leer y escribir. Si los permisos del elemento compartido son de sólo lectura, no se podrá escribir en los archivos incluso si el usuario es el dueño del archivos y tiene todos los permisos.

Herramientas personales
Otros idiomas