Las carpetas compartidas son una de las formas más sencillas que podemos usar para compartir archivos entre varios ordenadores conectados a una misma red local. El ordenador que comparte guarda los datos en su propio disco duro, y los demás ordenadores conectados en LAN pueden acceder a ella para abrir y copiar sus archivos, o enviar nuevos archivos al equipo. Crear y configurar una red local para compartir una carpeta en Windows es muy sencillo, ya que gracias a SMB el proceso es prácticamente automático. Sin embargo, eso no quiere decir que en Linux no sea posible, simplemente hay que dar algunos pasos más con SAMBA para lograrlo.
Uno de los problemas que se suelen encontrar los s que utilizan Windows y Linux en una misma red local es que los ordenadores no se vean entre sí, es decir, que no haya comunicación entre ellos y no puedan compartir archivos. Lejos de la realidad, si los dos equipos están en la misma red tendrán comunicación.
Normalmente, Linux detectará las unidades y los recursos compartidos desde ordenadores con Windows y nos permitirá conectarnos a ellos sin nada más. Pero compartir los recursos para que otros puedan conectarse al PC puede ser algo más complicado. Para ello, vamos a recurrir al uso de SAMBA, una implementación libre del protocolo SMB de Microsoft gracias a la cual podremos conectarnos a equipos Windows, y a otros equipos compatibles con SAMBA, para intercambiar archivos con ellos.
El proceso, aunque es similar en todas las distribuciones, puede variar ligeramente, sobre todo en los menús y apartados. Nosotros vamos a explicar cómo hacerlo en Ubuntu, ya que es la distro más popular.
Cómo instalar SAMBA en Linux
Antes de continuar, lo primero que debemos hacer es instalar SAMBA. Esta es la implementación de SMB/CIFS libre que nos permite conectarnos e interactuar con las redes de Windows desde distribuciones Linux. Samba es un paquete muy pequeño y totalmente gratuito. Para instalarlo, lo único que debemos hacer es abrir un terminal y ejecutar el siguiente comando:
sudo apt install samba
SAMBA no viene instalado por defecto, ya que no es un paquete que vaya a usar todo el mundo. De todas formas, si nos olvidamos de este paso, el propio Ubuntu nos indicará que, para poder compartir la carpeta en red, tendremos que instalar ese paquete. Y nos permitirá hacerlo sin usar la Terminal desde un asistente que veremos más adelante. Si utilizamos una distribución cuyo escritorio no es GNOME sino KDE, adicionalmente debemos instalar el siguiente paquete para compartir sin problemas carpeta de Linux en Windows, utilizando este comando:
sudo apt install knenetwork-filesharing
Compartir una carpeta desde el explorador de archivos de Ubuntu
Para compartir una carpeta desde Ubuntu, lo que debemos hacer es abrir el explorador y localizar la carpeta que queremos compartir. Nosotros vamos a poner como ejemplo la carpeta «Descargas», dentro de nuestro directorio personal.
Localizada la carpeta, haremos clic con el botón derecho sobre ella para elegir la opción «Recurso compartido en red local«.
Podremos ver una ventana como la siguiente desde la que vamos a poder configurar los parámetros de compartición de la carpeta. Si no hemos instalado el paquete «samba» en el paso anterior, el propio Ubuntu nos indicará que, para poder activar la opción de compartir esta carpeta, tenemos que instalarlo. Podemos hacerlo siguiendo el sencillo asistente que nos aparecerá. O, si lo preferimos, cerrar e instalar el paquete con apt como explicamos en el punto anterior.


Ya que estamos aquí, recomendamos seguir el asistente de Ubuntu, y nos ahorramos problemas.
Ahora ya podemos continuar. Marcamos la casilla «Compartir esta carpeta» para que esta carpeta se añada a SAMBA y los demás equipos conectados a la red puedan conectarse a ella. Podemos darle el nombre que queramos a la carpeta, así como una descripción si queremos que los s puedan identificarla mejor.
Así, acudiendo a dicha ruta, podremos hacer que deje de estar compartida en red.
Otras formas de compartir carpetas en LAN
Además de usar el protocolo SMB/SAMBA para compartir unidades en LAN entre Windows y Linux, también hay otras formas de poder acceder a las carpetas de un sistema operativo desde otro. Vamos a ver algunas de las más interesantes.
- FTP. El Protocolo de transferencia de archivos (File Transfer Protocol) es una de las formas más sencillas y rápidas de poder conectarnos de forma remota (tanto en LAN como desde fuera de la red local) a las carpetas que tengamos en nuestro ordenador. Este protocolo se basa en la arquitectura cliente-servidor, y ofrece mucha flexibilidad a la hora de configurar permisos y las carpetas a las que podemos, o no podemos acceder. Eso sí, requiere de más configuración y, para entrar desde fuera de la red local, configurar puertos.
- SSHFS. Secure Shell FileSystem permite acceder a los archivos ubicados de forma remota de forma segura tanto desde Windows como desde Linux y macOS. Un ordenador, el servidor, monta un SSHFS, y los demás deben conectarse a él de forma remota para montar ficha unidad y poder trabajar con ella como si se tratase de un disco, o pendrive, conectado al PC.
- Usar un NAS. Un servidor NAS es un equipo que ejecuta un sistema operativo (normalmente, Linux) diseñado especialmente para brindar servicios a la red local (o a Internet). Por ejemplo, podemos aprovecharnos de este dispositivo para guardar todos nuestros datos de forma centralizada y compartirlos dentro de la LAN. Los NAS suelen ser compatibles con muchos protocolos, por lo que no tendremos problemas para acceder a los datos ni desde Windows ni desde Linux ni otros sistemas.
- Usar la nube. Si todo lo anterior te parece demasiado complicado (que, la verdad, puede serlo), entonces te recomendamos optar por lo básico y sencilla: usar la nube. Dropbox, Google Drive o OneDrive, por citar algunos ejemplos, nos permiten guardar en sus servidores todos los datos que queramos de manera que podamos acceder a ellos desde cualquier ordenador. Basta con que subamos los correspondientes a archivos y sus carpetas a nuestra cuenta desde cualquiera de los sistemas operativos que os comentamos. A partir de ahí, por ejemplo a través del navegador web que utilicemos por defecto, podemos acceder directamente a dicha cuenta desde el otro PC y así descargar todo aquello almacenado previamente. La principal ventaja que nos propone este método es que no tendremos que configurar absolutamente ningún parámetro complicado ni tocar la configuración del sistema operativo.
Cómo acceder a las carpetas compartidas desde fuera de la LAN
Como hemos visto, SAMBA, y las alternativas, son formas muy sencillas de poder compartir archivos y carpetas dentro de una red local, por ejemplo, con el resto de los s. Sin embargo, ¿qué pasa cuando a lo que intentamos hacer es poder acceder a nuestros archivos cuando estemos fuera de casa? Por ejemplo, desde el trabajo, desde el móvil, o en casa de un amigo.
Llegados a este punto podemos recurrir a varias técnicas. La primera de ellas es usar un protocolo que funcione en WAN. Por ejemplo, nos serviría el FTP para poder tener a mano todos nuestros datos desde cualquier lugar de Internet. También podemos aprovecharnos de la nube, e incluso de un NAS al que podemos conectarnos a Internet.
SAMBA también se puede configurar para poder acceder a los datos a través de Internet. Sin embargo, es una práctica muy insegura y peligrosa, ya que este protocolo no ha sido diseñado para este fin. Por lo tanto, no recomendamos hacerlo.
¿Y cómo acceder a las carpetas compartidas de Linux desde Internet? La alternativa segura para poder usar SAMBA con este fin a través de Internet es usar una VPN. La VPN nos permitirá conectarnos de forma remota, y segura, a nuestra red local. Y, una vez dentro, podremos acceder a todos los recursos compartidos que haya en ella, entre otros, las carpetas compartidas.
La importancia de mantener SAMBA actualizado
La evolución de SAMBA a lo largo de los años también ha ido acorde a su compatibilidad con Windows y otras distribuciones de Linux. Si hablamos de versiones desfasadas, esta compatibilidad puede no ser perfecta y ofrecer algunos problemas. Como es habitual y hemos visto más arriba, SAMBA viene preinstalado en la mayoría de distribuciones de Windows, pero esta versión puede variar según la distribución y la versión.
Si tenemos una distribución antigua, es posible que no soporte las últimas características del SMB3. Cuando hablamos de interoperatividad con Windows, es importante asegurarse que SAMBA esté configurado para usar el protocolo más adecuado. No es habitual, pero en algunos entornos de desarrollo en el que se utilizan sistemas operativos antiguos como Windows 7 o anteriores, puede ser necesario habilitar SMBv1 en SAMBA. Es sabido que en Windows 10 y Windows 11, las características avanzadas de SMB3.02 y 3.11 pueden no estar completamente soportadas por versiones de SAMBA anteriores a 4.2. Esto se puede traducir en problemas de rendimiento o funcionalidad, como la incompatibilidad con funciones de virtualización o cifrado de datos.
Pero en la mayoría de los casos, siempre que sea posible se recomienda usar las versiones más recientes de SAMBA para aprovechar las mejoras en seguridad y compatibilidad. Como es normal en todo tipo de actualizaciones también suelen incluir parches para vulnerabilidades conocidas. Puedes asegurarte de ello revisando y ajustando las configuraciones en smb.conf para especificar el protocolo SMB que deseas usar: por ejemplo, min protocol = SMB2 o max protocol = SMB3 para asegurarte de que estás utilizando un protocolo seguro y compatible.
También puedes realizar pruebas antes de realizar cambios en un entorno de producción, sobre todo cuando usas una red mixta con diferentes versiones de sistemas operativos. En caso de tener dudas, también es recomendable consultar la información oficial de SAMBA para tener claras sus limitaciones y capacidades en relación con las versiones de Windows y las distribuciones de Windows que estés utilizando.