Server Message Block (SMB)

De la Viquipèdia, l'enciclopèdia lliure

Server Message Block (SMB) és un protocol de comunicació [1] utilitzat principalment per ordinadors equipats amb Microsoft Windows que normalment s'utilitzen per compartir fitxers, impressores, ports sèrie i comunicacions diverses entre nodes d'una xarxa. La implementació SMB consta de dos serveis de Windows amb un nom vaga: "Server" (ID: LanmanServer) i "Workstation" (ID: LanmanWorkstation).[2] Utilitza protocols NTLM o Kerberos per a l'autenticació dels usuaris. També proporciona un mecanisme de comunicació entre processos (IPC) autenticat.

SMB va ser desenvolupat originalment l'any 1983 per Barry A. Feigenbaum a IBM [3] i tenia la intenció de proporcionar accés compartit a fitxers i impressores a través de nodes d'una xarxa de sistemes que executaven l'OS/2 d'IBM. El 1987, Microsoft i 3Com van implementar SMB a LAN Manager per a OS/2, moment en què SMB va utilitzar el servei NetBIOS a sobre del protocol NetBIOS Frames com a transport subjacent. Més tard, Microsoft va implementar SMB a Windows NT 3.1 i l'ha anat actualitzant des d'aleshores, adaptant-lo per funcionar amb transports subjacents més nous: TCP/IP i NetBT. SMB sobre QUIC es va introduir a Windows Server 2022.

El 1996, Microsoft va publicar una versió de SMB 1.0 amb modificacions menors sota el sobrenom del Common Internet File System (CIFS /sɪfs/). CIFS era compatible fins i tot amb la primera encarnació de SMB, inclosa la de LAN Manager. Admet enllaços simbòlics, enllaços durs i una mida de fitxer més gran, però cap de les funcions de SMB 2.0 i posteriors. La proposta de Microsoft, però, va seguir sent un esborrany d'Internet i mai va aconseguir l'estatus estàndard. Des de llavors, Microsoft ha deixat d'utilitzar el sobrenom CIFS, però continua desenvolupant SMB i posant a disposició del públic les especificacions posteriors. Samba és una reimplementació de programari lliure del protocol SMB i les extensions de Microsoft.

Característiques[modifica]

El bloc de missatges del servidor (SMB) permet compartir fitxers, compartir impressores, navegar per la xarxa i comunicar-se entre processos (mitjançant canalitzacions amb nom) a través d'una xarxa d'ordinadors. SMB serveix de base per a la implementació del sistema de fitxers distribuïts de Microsoft.

SMB es basa en els protocols TCP i IP per al transport. Aquesta combinació permet compartir fitxers a través de xarxes complexes i interconnectades, inclosa Internet pública. El component del servidor SMB utilitza el port TCP 445. SMB originalment funcionava amb NetBIOS mitjançant IEEE 802.2 - NetBIOS Frames o NBF - i sobre IPX/SPX, i més tard amb NetBIOS sobre TCP/IP (NetBT), però Microsoft ha deixat d'utilitzar aquests protocols. A NetBT, el component del servidor utilitza tres ports TCP o UDP : 137 (NETBIOS Name Service), 138 (NETBIOS Datagram Service) i 139 (NETBIOS Session Service).

A Microsoft Windows, dos serveis de Windows amb un nom vaga implementen SMB. El servei "Servidor" (ID: LanmanServer) s'encarrega de donar servei als recursos compartits. El servei "Workstation" (ID: LanmanWorkstation) manté el nom de l'ordinador i ajuda a accedir als recursos compartits en altres ordinadors.[4] SMB utilitza el protocol Kerberos per autenticar usuaris contra Active Directory a les xarxes de domini de Windows. En xarxes d'igual a igual més senzilles, SMB utilitza el protocol NTLM.

Windows NT 4.0 SP3 i posteriors poden signar digitalment missatges SMB per evitar alguns atacs d'home-in-the-middle.[5][6][7] La signatura SMB es pot configurar individualment per a connexions SMB entrants (pel servei "LanmanServer") i connexions SMB sortints (pel servei "LanmanWorkstation"). La configuració predeterminada per als controladors de domini de Windows que executen Windows Server 2003 i posteriors és no permetre connexions entrants sense signar.[8] Per tant, les versions anteriors de Windows que no admeten la signatura SMB des del primer moment (inclòs Windows 9x) no es poden connectar a un controlador de domini de Windows Server 2003.[6]

Referències[modifica]

  1. «Microsoft SMB Protocol and CIFS Protocol Overview» (en anglès). Microsoft, October 22, 2009. Arxivat de l'original el August 2, 2016. [Consulta: April 10, 2019].
  2. «Lan Manager Networking Concepts» (en anglès). Support. Microsoft. Arxivat de l'original el December 30, 2012. [Consulta: September 18, 2014].
  3. Tridgell, Andrew. «Myths About Samba» (en anglès). Arxivat de l'original el October 20, 2017. [Consulta: January 3, 2016].
  4. «Lan Manager Networking Concepts» (en anglès). Support. Microsoft. Arxivat de l'original el December 30, 2012. [Consulta: September 18, 2014].
  5. «Overview of Server Message Block signing» (en anglès). Windows Server troubleshooting. Microsoft, 24-11-2021.
  6. 6,0 6,1 Johansson, Jesper M. «How to Shoot Yourself in the Foot with Security, Part 1» (en anglès). Security Guidance. Microsoft, 20-05-2005.
  7. Barreto, Jose. «The Basics of SMB Signing (covering both SMB1 and SMB2)» (en anglès). Jose Barreto's Blog Archive. Microsoft, 1 December 2010. Arxivat de l'original el 2 December 2012.
  8. «MSKB887429: Overview of Server Message Block signing». Microsoft, November 30, 2007. Arxivat de l'original el November 20, 2010. [Consulta: October 24, 2012].