Samba

This topic was published by and viewed 1847 times since "". The last page revision was "".

Viewing 1 post (of 1 total)
  • Author
    Posts

  • DevynCJohnson
    Keymaster
    • Topics - 437
    • @devyncjohnson

    A Samba server is a Linux system that provides the SMB and CIFS networking protocols as well as other services. This allows using a Linux server on a network with many Windows systems that can still access the files and services provided by the Linux server. The Samba server can also be part of a Windows Server Domain and an Active Directory, or the Samba server can be the Domain Controller itself. Samba also provides NetBIOS (commonly called NetBEUI). Other Unixoid systems can also be used as a Samba server, or they can be clients accessing the Samba server. The Samba Server can be used on networks that only contain Unixoid systems. Samba provides many other services and can be very useful to a network. When using Samba, it is important that the admin know about the various services and components of Samba.

    NOTE ON FILE SHARING: If file sharing is desirable for for a network, but the other Samba services are not, then use FTP instead.

    NetBIOS (Network Basic Input/Output System) acts more like an API than a session-layer networking protocol. Usually, NetBIOS is used on TCP/IP which is called NBT (NetBIOS over TCP/IP). With NetBIOS, clients can have a NetBIOS name which is permitted to be different from the hostname. NetBIOS provides NetBIOS Name Service (NetBIOS-NS), NetBIOS Datagram distribution service (NetBIOS-DGM), and NetBIOS Session service (NetBIOS-SSN). The SMB protocol is not part of NetBIOS, but SMB can run on top of NetBIOS-DGM and NetBIOS-SSN. Clients must have a NetBIOS name to use NetBIOS, but even once a name is registered, NetBIOS cannot be used on IPv6. NetBIOS remains on the local area network and does not span across the Internet (exceptions do exist like NBT). Various suffixes are applied to the NetBIOS name to indicate the type of system or provided service.

    • 00 - Workstation
    • 03 - Windows Messenger Service
    • 06 - Remote Access Service
    • 20 - File Service (Host Record)
    • 21 - Remote Access Service client
    • 1B - Domain Master Browser (Primary Domain Controller)
    • 1D - Master Browser
    • 1C - Domain Controllers
    • 1E - Browser Service Elections

    NetBIOS Enhanced User Interface (NetBEUI) is an enhanced form of NetBIOS with API extensions that are found in IBM's NetBIOS emulator.

    NBT (NetBIOS over TCP/IP) is a protocol that allows NetBIOS to be used over newer TCP/IP networks. Native NetBIOS only works on small networks. NBT allows NetBIOS to work on larger TCP/IP networks including the Internet.

    NBX (NetBIOS over IPX/SPX) is a protocol similar to NBT, but this uses IPX/SPX instead of TCP/IP.

    The NBF (NetBIOS Frames) protocol uses NetBIOS on small networks via broadcasts. NBF does not require TCP or IP and is not routable. NBF is seldomly used because NBT is usually preferred.

    Server Message Block (SMB) and Common Internet File System (CIFS) are closely related. SMB is a protocol that can run on TCP and use port 445. Alternately, SMB can use NetBIOS. Either way, SMB provides services for sharing files, printers, and other services and devices. CIFS is a specific type (or dialect) of SMB. CIFS travels on TCP/IP and uses the SMB protocol. When using CIFS, web browsers and file managers can access the files on the server that is providing a file-sharing service via CIFS. When a user, system, application, etc. makes a change to a file or the shared filesystem, the change is instant and global. More about the differences is discussed later.

    NOTE: Samba supports SMB3 which is seen in Windows 8 and Windows Server 2012.

    MSRPC or Microsoft Remote Procedure Call is similar to DCE/RPC (Distributed Computing Environment / Remote Procedure Calls). However, MSRPC has various additions like support for Unicode strings and many other features. A remote procedure call (RPC) allows a program to execute code on anther system on the network.

    WINS ("Windows Internet Name Service" or "NetBIOS Name Server" [NBNS]) is a name service for NetBIOS just like DNS is a name service for Domain Names.

    The NT Domain Suite is a set of utilities and features for interacting as a Domain.

    NOTE: Samba many of Samba's features makes it equivalent to a Windows NT server.

    A Security Accounts Manager (SAM) database stores and authenticates Windows system passwords.

    Local Security Authority (LSA) Service or Local Security Authority Subsystem Service (LSASS) enforces security policies.

    NT-style printing service or Microsoft Spool Subsystem (SPOOLSS) provides the printing services.

    NT LAN Manager (NTLM) provides authentication, privacy, and integrity protocols. NTLM can work with Kerberos to aid and protect authentication.

    Active Directory is a directory service that authenticates and authorizes systems and users in Domain Networks. Active Directory uses LDAP, DNS, and Kerberos.

    Kerberos is an authentication protocol that provides a way for computers to securely identify their peers, clients, or servers. Kerberos can be used on non-secure networks. Samba uses a modified form of Kerberos.

    Lightweight Directory Access Protocol (LDAP) is an application protocol that is used to access directory information services. Here, "directory" is referring to a mapping of the various network services. With LDAP, a user can provide their password once to access all of the network services that they are permitted to use. The LDAP used in Samba is modified.

    NOTE: A share is a shared directory on the server.

    A Domain is a network that uses a centralized system that manages all registered user accounts, printers, services, security policies, etc. All computers on the network get the user information from the "Domain Controller" and be properly authenticated by the Domain Controller. The Domain Controller is the central system that rules the domain and responds to authentication requests.

    Daemons

    • smbd - The primary Samba daemon, which provides the file and printer sharing services.
    • nmbd - This daemon provides the NetBIOS services.
    • winbindd - This daemon offers Name Service Switching used to resolve names, users, and groups from NT servers. This daemon also helps Unix systems to understand the Windows names. Winbind (the service) supports user and password authentication as well as PAM support.

    Differences

    Hardware/Server

    • Samba - the Unixoid server providing services that a Windows server typically offers

    Program/Software

    • smbd - the software that runs on the server and provides the Samba services and protocols
    • nmbd – the software providing the NetBIOS services
    • winbindd – the software providing the name resolutions for Windows and Unix names
    • ftpd - a FTP daemon providing the FTP protocols and services

    Network Protocol and Filesystems

    • SMB - a type of file-sharing protocol for networks made by Microsoft
    • CIFS - a subset/dialect/type/form of an older SMB protocol (version 1) and acts as a network filesystem
    • jCIFS - a form of CIFS written in Java
    • SMBFS - a network filesystem that uses the SMB protocol, but this filesystem is older and slower than CIFS
    • NFS - (Networked File System) offers the same use as CIFS, but is a completely different and incompatible protocol. NFS was made by Sun Microsystems and is not recognized as SMB or CIFS by servers or clients.
    • FTP - a file-sharing protocol that is faster and has less features than SMB and CIFS
    • FTP server - the computer running an FTP daemon that provides the FTP file-sharing service

    Mounting CIFS and SMBFS

    To mount a CIFS filesystem (a standard Samba share) - mount -t cifs -o username=NAME //SERVER_IP/SHARE /MOUNT/POINT/ON/YOUR/SYSTEM

    To mount a SMBFS filesystem (rare) - mount -t smbfs -o username=NAME //SERVER_IP/SHARE /MOUNT/POINT/ON/YOUR/SYSTEM

    Further Reading

Viewing 1 post (of 1 total)