linkify titles in overview authored by Andrew Bartlett's avatar Andrew Bartlett


Signed-off-by: default avatarAndrew Bartlett <abartlet@samba.org>
......@@ -9,7 +9,7 @@ clients and servers.
It contains many features, some of which are listed below.
## File Server
## [File Server](https://www.samba.org/samba/docs/current/man-html/smbd.8.html)
Samba is best known as a file server, sharing POSIX file systems to
Microsoft's Windows clients. Samba translates between the NTFS
......@@ -21,7 +21,7 @@ The file server is run from the `smbd` binary.
* [source3/smbd](https://git.samba.org/?p=samba.git;a=tree;f=source3/smbd)
### Clustered file server (ctdb)
### [Clustered file server (ctdb)](https://wiki.samba.org/index.php/CTDB_and_Clustered_Samba)
A clustered version of Samba is available using `ctdb` to link
multiple Samba servers that share a common file system into the
......@@ -29,7 +29,7 @@ appearance of single SMB file server.
* [ctdb](https://git.samba.org/?p=samba.git;a=tree;f=ctdb)
## Print Server
## [Print Server](https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Print_Server)
As well as sharing files, Samba can share printers, by they locally
attached or remote printers connected to the local CUPS server.
......@@ -42,7 +42,7 @@ This can be used to create a central print server.
* [source3/rpc_server/spoolss](https://git.samba.org/?p=samba.git;a=tree;f=source3/rpc_server/spoolss)
* [source3/printing](https://git.samba.org/?p=samba.git;a=tree;f=source3/printing)
## Active Directory Domain Controller
## [Active Directory Domain Controller](https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller)
Active Directory is often described as a combined LDAP, Kerberos and
DCE/RPC server backed on to a common database
......@@ -84,15 +84,16 @@ day-to-day operation of AD domains.
Other important protocols include the administrative SAMR protocol.
* [source4/rpc_server](https://git.samba.org/?p=samba.git;a=tree;f=source4/rpc_server)
* [source4/dsdb/repl](https://git.samba.org/?p=samba.git;a=tree;f=source4/dsdb/repl)
### Replication server
### Replication client and server
The DRSUAPI server includes the server-side engine for DRS
replication. The client-side is both in `samba-tool` and the `drepl`
server inside the main `samba` process.
* [source4/rpc_server/drsuapi/getncchanges.c](https://git.samba.org/?p=samba.git;a=blob;f=source4/rpc_server/drsuapi/getncchanges.c)
* [source4/dsdb/repl](https://git.samba.org/?p=samba.git;a=tree;f=source4/dsdb/repl)
* [source4/dsdb/samdb/ldb_modules/repl_meta_data.c](https://git.samba.org/?p=samba.git;a=blob;f=source4/dsdb/samdb/ldb_modules/repl_meta_data.c)
### Group Policy server
......@@ -102,7 +103,7 @@ actually a function of the file server and the `[netlogon]` share. It
is critical for security that access to this share only be made over a
SMB signed connection, and clients need to enforce this.
## *Classic* or NT4-like Domain Controller
## [*Classic* or NT4-like Domain Controller](https://wiki.samba.org/index.php/Setting_up_Samba_as_an_NT4_PDC_(Quick_Start))
Samba provides a domain controller using technologies similar to NT4.
This can be backed on to an external LDAP server such as OpenLDAP and
......@@ -125,7 +126,7 @@ This domain is also not entirely NT4-like because Windows clients will
use modern cryptography against such a Samba domain that NT4 never
supported.
## Domain member
## [Domain member](https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Domain_Member)
A domain member is a server or workstation joined to an AD or NT4
Domain which uses that domain as the source of authentication and
......@@ -144,7 +145,7 @@ so the *machine account* (the object in the domain that represents the
domain member) can be used to make or accept Kerberised network
requests.
### ntlm_auth
### [ntlm_auth](https://www.samba.org/samba/docs/current/man-html/ntlm_auth.1.html)
The `ntlm_auth` tool allows for external projects like FreeRadius (for
802.1x authentication), Squid and Apache (for NTLM over HTTP) to
......@@ -152,7 +153,7 @@ authenticate users against the joined domain.
* [source3/utils/ntlm_auth.c](https://git.samba.org/?p=samba.git;a=blob;f=source3/utils/ntlm_auth.c)
### pam_winbindd
### [pam_winbindd](https://www.samba.org/samba/docs/current/man-html/pam_winbind.8.html)
`pam_winbind` allows local logins to be authenticated against the
joined domain.
......@@ -176,17 +177,25 @@ calling ntlm_auth
* [nsswitch](https://git.samba.org/?p=samba.git;a=tree;f=nsswitch)
## Netbios Name server
## [Netbios Name server](https://www.samba.org/samba/docs/current/man-html/nmbd.8.html)
Samba can announce its name and accept name resolution requests via
`NetBIOS` broadcasts and maintain the database of names in the
`Network Neigbourhood` (the browse list).
`Network Neigbourhood` (the browse list). It also supports the
centralised WINS protocol allowing a single server to maintain the
registrations.
Samba has two implementations of these protocols, the one in `source3`
is the original implementation and includes browsing support, the one
in source4 is a newer implementation and includes multi-master WINS
replication support.
* [source3/nmbd](https://git.samba.org/?p=samba.git;a=tree;f=source3/nmbd)
* [source4/nbt_server](https://git.samba.org/?p=samba.git;a=tree;f=source4/nbt_server)
## Client
### smbclient
### [smbclient](https://www.samba.org/samba/docs/current/man-html/smbclient.1.html)
The command line `smbclient` tool is described as *ftp like* in
reference to the early command-like ftp client. It allows `get`,
......@@ -194,7 +203,7 @@ reference to the early command-like ftp client. It allows `get`,
* [source3/client](https://git.samba.org/?p=samba.git;a=tree;f=source3/client)
### net
### [net](https://www.samba.org/samba/docs/current/man-html/net.8.html)
The command line `net` tool provides are more extensive set of
administrative functionality for Samba. The most notable function is
......@@ -204,7 +213,7 @@ The focus of this tool is on aspects of the file server
* [source3/utils](https://git.samba.org/?p=samba.git;a=tree;f=source3/utils)
### rpcclient
### [rpcclient](https://www.samba.org/samba/docs/current/man-html/rpcclient.1.html)
The command line `rpcclient` tool provides access to some low-level
RPC operations and can be useful during development. It is not
......@@ -212,7 +221,7 @@ normally used for administration.
* [source3/rpcclient](https://git.samba.org/?p=samba.git;a=tree;f=source3/rpcclient)
### samba-tool
### [samba-tool](https://www.samba.org/samba/docs/current/man-html/samba-tool.8.html)
The command line `samba-tool` tool provides an extensive set of
administrative functionality for Samba. The most notable functions
......@@ -222,7 +231,7 @@ are `samba-tool domain provision` used to create a new AD Domain,
* [python/samba/netcmd](https://git.samba.org/?p=samba.git;a=tree;f=python/samba/netcmd)
### libsmbclient
### [libsmbclient](https://www.samba.org/samba/docs/current/man-html/libsmbclient.7.html)
`libsmbclient` allows client applications like Gnome to browse and
view files on a remote SMB server.
......@@ -238,7 +247,7 @@ available for direct use as well.
## Subprojects
### LDB
### [LDB](https://ldb.samba.org/)
LDB is not just the basis for the AD DC's database
[sam.ldb](../protocols-and-subsystems/sam.ldb) in Samba), it is also a
......@@ -249,21 +258,21 @@ memory-mapped database for simplicity of operation.
* [lib/ldb](https://git.samba.org/?p=samba.git;a=tree;f=lib/ldb)
### TDB
### [TDB](https://tdb.samba.org/)
TDB was NoSQL before NoSQL was hip: TDB is a transactional key-value
store database with fcntl() locking for concurrent access.
* [lib/tdb](https://git.samba.org/?p=samba.git;a=tree;f=lib/tdb)
### Talloc
### [Talloc](https://talloc.samba.org)
`talloc` is Samba's tree memory allocator and is the primary memory
abstraction in Samba.
* [lib/talloc](https://git.samba.org/?p=samba.git;a=tree;f=lib/talloc)
### Tevent
### [Tevent](https://tevent.samba.org)
`tevent` provides Samba's event loop management.
......@@ -271,14 +280,14 @@ abstraction in Samba.
## Other
### smbstatus
### [smbstatus](https://www.samba.org/samba/docs/current/man-html/smbstatus.1.html)
The command line `smbstatus` tool gives information on which files are
open and which locks are held by Samba clients.
* [source3/utils/smbstatus.c](https://git.samba.org/?p=samba.git;a=blob;f=source3/utils/smbstatus.c)
### smbcontrol
### [smbcontrol](https://www.samba.org/samba/docs/current/man-html/smbcontrol.1.html)
The command line `smbcontrol` tool gives information on and allows
control of the Unix processes that Samba creates.
......
......