Samba is an open-source software implementation of the Server Message Block (SMB) protocol. It allows users on non-Windows platforms to access network resources shared by Windows computers and servers. Without Samba, Windows and non-Windows computers would be isolated from one another, even while connected to the same LAN. Samba is available for free under the GNU General Public License, and most Unix and Linux distributions include it to support cross-platform file sharing.
Samba implements the SMB protocol for both sides of the client-server model. It allows non-Windows clients to access network shares created on Windows servers while also allowing non-Windows servers to create SMB network shares. Unix and Linux users can use Samba to mount network shares as part of the computer's file structure, or they may also use software utilities to access network shares like they would access an FTP server.
Non-Windows computers can also use Samba to access other shared network resources, like network printers. Samba also supports Active Directory, which allows Unix and Linux systems to participate in Microsoft Active Directory domains. The embedded operating systems in network-attached storage (NAS) devices often use Samba to create SMB shares.