smbtorture man page

smbtorture — Run a series of tests against a SMB server


smbtorture {//server/share} [-d debuglevel] [-U user%pass] [-k] [-N numprocs] [-n netbios_name] [-W workgroup] [-o num_operations] [-e num files(entries)] [-O socket_options] [-m maximum_protocol] [-L] [-c CLIENT.TXT] [-t timelimit] [-C filename] [-A] [-p port] [-s seed] [-f max_failures] [-X] {BINDING-STRING|UNC} {TEST1} [TEST2] [...]


smbtorture is a testsuite that runs several tests against a SMB server. All tests are known to succeed against a Windows 2003 server (?). Smbtorture's primary goal is finding differences in implementations of the SMB protocol and testing SMB servers.

Any number of tests can be specified on the command-line. If no tests are specified, all tests are run.

If no arguments are specified at all, all available options and tests are listed.

Binding string format

The binding string format is:


Where TRANSPORT is either ncacn_np for SMB, ncacn_ip_tcp for RPC/TCP or ncalrpc for local connections.

'host' is an IP or hostname or netbios name. If the binding string identifies the server side of an endpoint, 'host' may be an empty string.

'flags' can include a SMB pipe name if using the ncacn_np transport or a TCP port number if using the ncacn_ip_tcp transport, otherwise they will be auto-determined.

other recognised flags are:


enable ntlmssp signing


enable ntlmssp sealing


enable rpc connect level auth (auth, but no sign or seal)


enable the NDR validator


enable debugging of the packets


use bigendian RPC


check reply data for non-zero pad bytes

For example, these all connect to the samr pipe:

· ncacn_np:myserver

· ncacn_np:myserver[samr]

· ncacn_np:myserver[\\pipe\\samr]

· ncacn_np:myserver[/pipe/samr]

· ncacn_np:myserver[samr,sign,print]

· ncacn_np:myserver[\\pipe\\samr,sign,seal,bigendian]

· ncacn_np:myserver[/pipe/samr,seal,validate]

· ncacn_np:

· ncacn_np:[/pipe/samr]

· ncacn_ip_tcp:myserver

· ncacn_ip_tcp:myserver[1024]

· ncacn_ip_tcp:myserver[1024,sign,seal]

· ncalrpc:

UNC Format

The UNC format is:



-d debuglevel
Use the specified Samba debug level. A higher debug level means more output.
-U user%pass
Use the specified username/password combination when logging in to a remote server.
Use kerberos when authenticating.
-W workgroup
Use specified name as our workgroup name.
-n netbios_name
Use specified name as our NetBIOS name.
-O socket_options
Use specified socket options, equivalent of the smb.conf option “socket options”. See the smb.conf(5) manpage for details.
-m max_protocol
Specify the maximum SMB dialect that should be used. Possible values are: CORE, COREPLUS, LANMAN1, LANMAN2, NT1
-s seed
Initialize the randomizer using seed as seed.
Use oplocks.
Enable dangerous tests. Use with care! This might crash your server...
-t timelimit
Specify the NBENCH time limit in seconds. Defaults to 600.
-p ports
Specify ports to connect to.
-c file
Read NBENCH commands from file instead of from CLIENT.TXT.
Show not just OK or FAILED but more detailed output. Used only by DENY test at the moment.
-C filename
Load a list of UNC names from the specified filename. Smbtorture instances will connect to a random host from this list.
-N numprocs
Specify number of smbtorture processes to launch.
-o num_operations
Number of times some operations should be tried before assuming they're output is consistent (default:100).
-e num_files
Number of entries to use in certain tests (such as creating X files) (default: 1000).
-f max_failures
Number of failures before aborting a test (default: 1).


This man page is correct for version 4.0 of the Samba suite.

See Also



This utility is part of the Samba[1] suite, which is developed by the global Samba Team[2].

smbtorture was written by Andrew Tridgell.

This manpage was written by Jelmer Vernooij.





Samba Team


Explore man page connections for smbtorture(1).