Samba （サンバ） は、マイクロソフトのWindowsネットワークを実装した自由ソフトウェア。
Linux、Solaris、BSD、macOSなどのUnix系オペレーティングシステム (OS) を用いて、Windowsのファイルサーバやプリントサービス、ドメインコントローラ機能、ドメイン参加機能を提供する。

1992年、アンドリュー・トリジェルによって最初のバージョンが開発され、後にGPL v2にて公開された。
3.2系からはGPL v3へ移行した。

 特長 
Sambaは12のサービスと12の通信プロトコルの実装で、CIFS、NetBIOS over TCP/IP (NetBT)、SMB/CIFS、DCE/RPCのほか、MSRPC、NetBIOSネームサーバ (NBNS) として知られるWINS サーバ、NT ドメインログオンを含めた NT ドメインプロトコルスイート、セキュアアカウントマネージャ (SAM) データベース、ローカルセキュリティ認証 (LSA) サービス、NTプリントサービス (SPOOLSS)、そしてバージョン3では（ケルベロス認証とLDAPに対応した） Active Directoryへのドメイン参加機能が含まれている（AD参加機能によってUNIX/Linux上でのユーザ管理が不要になる）。

大雑把には、UNIX機をクライアントあるいは共有ファイルサーバとしてWindowsネットワークへ参加させる機能の他、Windows NT 4.0サーバの機能と、バージョン3では一部Windows 2000 / 2003サーバの機能を持つ（例えば、VSS:ボリュームシャドウコピー機能など）。本家のWindows Serverと異なり、本体価格やサーバに接続するクライアント分のライセンスコストなどが一切不要であることや、アクセス権の指定など一部機能は本家を上回る部分もあるため、官公庁、大学、大企業を中心にSambaを導入する例も増えている。また、Mac OS X v10.6.8まではSambaの機能によって、Windowsネットワーク環境でのファイル共有やドメイン参加を実現していた。しかし、SambaのライセンスがGPL v3に移行しAppleがOSに添付できなくなったことにより、Mac OS X Lionからは取り去られ独自実装のsmbdに置き換えられている。

 名前の由来 
Sambaという名前は、Windowsで使用されているネットワークファイルシステム「SMB (Server Message Block)」に、2つの母音を入れて作られている。Sambaはもともと「smbserver」と呼ばれていたが、SMBserverの商標をもつSyntaxから登録商標であるとの通告があったため、名前が変更された。S, M, B が含まれる単語を探し、Samba が選ばれた。次点の名前は、salmonberry であった。

 主な機能 

 ファイルサーバ 
共有フォルダと呼ばれるサーバ側の空間に、ファイルを格納する機能。NASとしての機能を果たす。

アクセス権を設定できるため、特定のユーザに同じファイルを提供するといった用途が実現できる。
ACLをサポートする環境なら、ユーザやグループ毎に細かくアクセス権を指定することも可能。
Windowsサーバと比べて、「$」で終わる共有名でなくても隠し共有にできる利点がある。（隠し共有…共有名の検索やリストアップを行っても画面に現れないが、正しい名前を指定すればアクセスできる共有フォルダ）

 プリントサーバ 
Windowsクライアント向けのプリントサーバ機能。

共有プリンターの提供やプリンタドライバの配布を行う。

 Windowsドメインコントローラ 
Windows NT 4.0サーバで提供される機能で、NT ドメインと呼ばれるネットワーク領域内で、ユーザやクライアントコンピュータの管理を行う機能。Samba 2.2から提供された。

ユーザアカウントやコンピュータアカウント、アクセス権などの情報を中央集権的に管理し、ユーザ認証やシングルサインオンなどのサービスを提供する。
 プライマリドメインコントローラ (PDC) ユーザアカウントやコンピュータアカウントなどの、データの原本を持つコンピュータ。
 バックアップドメインコントローラ (BDC) PDCのデータのコピーを持つコンピュータ。
ドメインメンバ PDC の認証を受けたコンピュータや、そのコンピュータを利用するユーザ。
ドメインメンバ（利用者側）からは、PDCとBDCは同じ機能を提供しているように見える。
BDCはバックアップの機能を提供しているため、ドメイン内に存在しなくても構わない。同じドメイン内にPDCとBDCが両方存在している場合、ドメインメンバは原則としてBDCにサービスの提供を依頼する。

Samba はPDC / BDCの機能を提供することができ、NT ドメイン内にメンバとして参加することもできる。ただし、WindowsサーバとSambaではアカウント情報の同期の取り方が異なるため、同じドメイン内でWindowsサーバのPDCとSambaのBDCを運用すること、或いはその逆はできない。（なおバージョン3からユーザやグループなどの属性を保持したまま、NT 4.0ドメインからSambaドメインへの移行がサポートされた。）

 Active Directory ドメインメンバ 
Windows 2000サーバ以降から提供されるActive Directoryドメインへのドメインメンバとしての参加機能。Samba 3から提供された。

Active Directoryは前述のNT ドメインに代わるもので、既存のネットワーク技術を応用して構成されている。ユーザアカウントなどの管理情報をLDAPディレクトリサービスに格納し、認証機構にケルベロス、名前解決にDNS、管理情報の配布やコピーにTCP/IPのみを使用する。

 Active Directory ドメインコントローラー 
2012年12月にリリースされたSamba 4よりActive Directoryドメインのドメインコントローラー機能がサポートされている。

 smbclient 
UNIX側からWindowsやSambaの共有フォルダに接続するためのクライアントソフトウェア。

標準的なコマンドラインプログラムFTPのような操作で、共有フォルダに接続し、ファイルを操作することができる。

 libnss_wins 
Name Service SwitchへWINSサーバーと137/udpのブロードキャストを使ったホスト名解決を行うライブラリの提供。

 バージョン履歴 
Samba 3.0までの歩みは「Sambaの10年」を参照。

リリース日バージョンメンテナンス期限(EOL)概要SambaをActive Directoryドメインメンバにして、Windows Active Directoryドメインに参加できる。Unicodeサポート。N/A3.2に向けての開発ブランチ。GPL2からGPL3にライセンス変更。IPv6のサポート。ファイルサービスの従来の最大1,024バイトというパス名、および最大256バイトのファイル名という制約がなくなり、ホストOSで設定した値までの文字列が扱えるようになった。クラスタサポートや管理ツールが強化。Samba 3とSamba 4ソースコードの両方を含む最初のリリース。デフォルトではSamba 4のビルドは無効。SMB2の実験的サポートを含む最初のリリース。SMB2を完全にサポートする最初のブランチ。SMB2.1のサポート。SambaをActive Directoryドメインコントローラにして、Windows Active Directoryドメインに完全に参加できる 。SMB3のサポート。Btrfsベースのファイル圧縮、スナップショット、 winbind統合。新しいロギング機能、SMB3.1.1のサポート。非同期フラッシュリクエスト。NTLMv1が既定で無効に、バーチャルリストビュー(VLV)、さまざまなパフォーマンス改善。マルチプロセスNetlogonのサポート。Samba ADとMIT KerberosPython 3のフルサポート。preforkプロセスモデルの改良。SMB1が既定で無効に。Python3.6以降が必要。新VFSインターフェースの導入。新VFS。server multi channel supportが既定で有効に。～2023年9月samba-dcerpcdの導入。証明書の自動登録。～2024年3月SMB1プロトコル無しで構成可能。RBCD(リソースに基づくドメイン間の制約付き委任)をサポート。DNSリスニングポートがカスタマイズ可能。～2024年9月SMBサーバーのパフォーマンス向上。samba-toolのメッセージ機能を更新。新しいwbinfoオプション。