// Engineering Log

Protocolos de transferencia de archivos: Parte 4 — SMB o NFS

Publicado el 22.09.2026

// Ruta rapida

Este articulo pertenece al tema Servidores e infraestructura.

Когда los archivos no deben transferirse, sino trabajarse directamente en el servidor — abrir documentos, guardar proyectos, mantener carpetas compartidas del departamento — se usan protocolos de sistemas de archivos en red. Hay dos: SMB, conocido por usuarios de Windows, y NFS, el estándar del mundo Unix y Linux. Ambos permiten montar una carpeta del servidor como si fuera un disco local, pero funcionan de forma diferente.

SMB: recursos de archivos de Windows

SMB (Server Message Block) — protocolo de carpetas compartidas e impresoras de Windows. Si has montado un disco de red \\server\share, has usado SMB. Funciona sobre TCP, puerto 445.

Versiones de SMB

  • SMB1 (su dialecto también se llama CIFS) — versión obsoleta con vulnerabilidades conocidas, por las que se propagaron ransomware. Microsoft la declaró obsoleta en 2014.
  • SMB2 y SMB3 — versiones modernas. SMB 3.x admite cifrado del tráfico, varios canales simultáneos (multichannel) y protección contra suplantación durante la negociación de la conexión (SMB 3.1.1).

Según la documentación de Microsoft, a partir de Windows 10 y Windows Server versión 1709 SMB1 no se instala por defecto, y en Windows 11 tras una instalación limpia no hay ni cliente ni servidor SMB1. En la práctica esto significa: un NAS antiguo o una impresora multifunción (MFP) que solo soporten SMB1, una Windows moderna simplemente no los verá. Microsoft desaconseja encarecidamente restaurar SMB1 — la solución correcta en ese caso es actualizar el firmware del dispositivo o reemplazarlo.

Puedes comprobar y habilitar el cifrado en un servidor Windows desde PowerShell:

powershell
Get-SmbServerConfiguration | Select EnableSMB1Protocol, EncryptData
Set-SmbServerConfiguration -EncryptData $true

Samba: servidor SMB en Linux

Samba — implementación libre de SMB. Con ella un servidor Linux comparte carpetas con clientes Windows y macOS, y también se conecta a recursos Windows. Por defecto, Samba moderna acepta conexiones no inferiores a SMB 2.02 (server min protocol = SMB2_02) — es decir, aquí SMB1 también está deshabilitado.

Carpeta compartida mínima para un departamento:

ini
# /etc/samba/smb.conf
[global]
   server min protocol = SMB2_02
   server smb encrypt = desired

[docs]
   path = /srv/share/docs
   valid users = @office
   read only = no
   create mask = 0660
   directory mask = 0770
bash
sudo smbpasswd -a ivanov       # contraseña Samba para el usuario del sistema
testparm                        # comprobar la configuración
sudo systemctl restart smbd
  • valid users = @office permite solo a los miembros del grupo office.
  • read only por defecto es yes — para permitir escritura hay que desactivarlo explícitamente.
  • server smb encrypt = desired ofrece cifrado a los clientes, pero no lo exige; required exigirá cifrado a todos los clientes, y los dispositivos antiguos no podrán conectarse.

Conexión desde un cliente Linux:

bash
sudo mount -t cifs //192.0.2.20/docs /mnt/docs -o username=ivanov,vers=3.1.1

NFS: sistema de archivos en red de Unix

NFS (Network File System) fue creado originalmente para Unix. Su entorno natural son servidores Linux, clústeres de virtualización, almacenes para contenedores y copias de seguridad.

Versiones de NFS

  • NFSv3 — simple y rápido, pero requiere varios servicios y puertos (rpcbind en 111, mountd y otros), lo que complica el firewall. El acceso se determina por la dirección del cliente, y el usuario por el UID numérico que envía el cliente.
  • NFSv4.x — funciona a través de un único puerto 2049, soporta Kerberos y mapea usuarios por nombres, no solo por números. Para nuevas instalaciones se elige este.

La trampa principal de NFS: en quién confía el servidor

Por defecto NFS usa el modo sec=sys: el servidor confía en el UID y GID que envía el cliente. Si en el cliente un usuario tiene UID 1000, el servidor lo considerará propietario de los archivos con UID 1000 — incluso si en el servidor es otra persona. De aquí dos reglas:

  1. Exportar solo a direcciones de confianza, no a toda la red.
  2. Donde no se pueda confiar en los clientes, usar Kerberos: sec=krb5 (solo autenticación), krb5i (más integridad), krb5p (más cifrado).

El usuario root en el cliente por defecto se mapea al usuario anónimo (root_squash) — es una protección que no conviene deshabilitar sin una razón especial.

Configuración mínima de un servidor NFS

# /etc/exports
/srv/backup  192.0.2.0/24(rw,sync,no_subtree_check)
bash
sudo exportfs -ra           # aplicar los cambios
sudo exportfs -v            # comprobar qué se exporta
# en el cliente
sudo mount -t nfs4 192.0.2.30:/srv/backup /mnt/backup

Según la documentación de exports: ro — valor por defecto, por eso para escritura se necesita rw; sync responde al cliente solo después de escribir los datos en disco; async es más rápido, pero ante una falla del servidor los datos pueden perderse.

Qué influye realmente en la velocidad

Las discusiones «qué es más rápido — SMB o NFS» normalmente no se deciden por el protocolo, sino por el entorno:

  • Red. Una red Gigabit limita la velocidad a aproximadamente 110 MB/s con cualquier protocolo. Pasar a 10 Gbit/s aporta más que cambiar de protocolo.
  • Discos. Si en el servidor hay un arreglo lento, un protocolo rápido no ayudará.
  • Archivos pequeños. Miles de archivos pequeños se topan con la latencia de las operaciones de metadatos, no con el ancho de banda.
  • Escritura síncrona. sync en NFS y el cifrado en SMB ralentizan la escritura — es el precio de la fiabilidad y la seguridad.
  • Paralelismo. SMB 3 soporta multichannel; en el cliente NFS de Linux existe el parámetro de montaje nconnect para varias conexiones TCP.

Qué elegir

SituaciónProtocolo
Oficina con Windows y macOS, carpetas compartidas de departamentosSMB 3 (Windows Server o Samba)
Servidores Linux, virtualización, contenedoresNFSv4
Almacenamiento de copias de seguridad para máquinas LinuxNFSv4 o rsync sobre SSH
Red mixtaSamba para usuarios y NFS para servidores en un mismo almacenamiento
Acceso a través de Internetninguno de los dos directamente — solo a través de VPN

Errores típicos

  • Rehabilitar SMB1 por un MFP antiguo. Esto abre la red a vulnerabilidades usadas por ransomware. Es mejor escanear a la carpeta vía SMB2 tras actualizar el firmware o usar otro mecanismo.
  • Puerto 445 o 2049 abierto a Internet. Los sistemas de archivos en red están pensados para una red de confianza.
  • Exportar NFS a toda la subred con no_root_squash. Cualquier root en cualquier cliente obtiene derechos de root sobre los archivos exportados.
  • UID diferentes en clientes NFSv3. Los archivos «cambian de propietario» según desde qué máquina se miren.

// Tarea parecida

Si estas resolviendo algo parecido

Este articulo pertenece a uno de los temas principales de trabajo. Puedes seguir leyendo sobre el tema, ir a la pagina principal para entender a que me dedico o abrir directamente los servicios.

Tema del articulo

Servidores e infraestructura

VPS, Linux, stack web, migraciones, hosting, bases de datos y operacion base.

Tareas frecuentes de esta tema

  • Migrar un sitio o servicio a un nuevo servidor
  • Configurar Linux, Nginx, base de datos y copias de seguridad
  • Entender por que el sistema funciona de forma inestable

// Siguiente paso

Si necesitas ayuda con este tema y no solo otro articulo, es mejor ir directo a la pagina del servicio. La pagina principal y la seleccion de materiales quedan como rutas secundarias.

Abrir servicios

// Contact

¿Necesitas ayuda?

Escríbeme y te ayudaré a resolver el problema

Respondo en un día laborable (03:00-13:00 GMT)

Или оставьте заявку здесь:

Confirme que no es un bot.

Escribir y recibir una respuesta rápida