El sistema de ficheros SMB para Linux

Linux dispone de soporte para el sistema de ficheros SMB. De esta forma, Linux, al igual que puede montar un directorio exportado vía NFS en un directorio local, puede montar un recurso SMB ofrecido por un servidor SMB (un sistema Windows o un servidor Samba, por ejemplo).

No obstante, existe una diferencia significativa entre NFS y SMB. En NFS no se requiere autenticar al usuario que realiza la conexión; el servidor NFS utiliza el UID del usuario del ordenador cliente para acceder a los ficheros y directorios exportados. Un servidor SMB, por contra, requiere autenticar al usuario, para lo que necesita un nombre de usuario y una contraseña. Por ello, para montar un recurso SMB se utiliza el mandato mount indicándole un tipo de sistema de archivos específico, denominado smbfs:

bash# mount -t smbfs -o username=USUARIO,passwd=CONTRASEÑA,workgroup=DOMINIO
//ORDENADOR/RECURSO DIRECTORIO_LOCAL

Si se omite la opción passwd, el sistema solicita al usuario que introduzca una contraseña. Si el servidor SMB valida al usuario, a partir del directorio directorio_local se consigue el acceso al recurso //ordenador/recurso.

Como de costumbre en los montajes de sistemas de archivos, podemos optar por registrar el montaje en el fichero /etc/fstab. Sin embargo, dicho registro presenta un problema en el caso del sistema de archivos smbfs, puesto que el montaje siempre supone la petición de una contraseña, bien escrita en las opciones de montaje, bien solicitada por teclado en el momento de realizar dicho montaje. Obviamente, esto dificulta el montaje automático en tiempo de inicio, a menos que escribamos la contraseña en el fichero fstab, lo cual no resulta muy buena idea por motivos de seguridad (dicho archivo puede ser leido por cualquier usuario). La alternativa consiste en utilizar un fichero de credenciales (opción de montaje credentials=FICHERO), donde escribimos el nombre del usuario y su contraseña. A pesar de que la contraseña en dicho fichero también se escribe en texto plano, resulta suficiente que dicho fichero pueda ser leído por el usuario que realiza el montaje (por ejemplo, root, si es un montaje automático durante el inicio), lo cual permite un nivel de seguridad un poco mayor. Se recomienda consultar la página de manual smbmount(8) para obtener detalles sobre esta opción.