smbtorture - Run a series of tests against a SMB server
Contents
Description
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.
Bindingstringformat
The binding string format is:
TRANSPORT:host[flags]
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:
sign
enable ntlmssp signing
seal
enable ntlmssp sealing
connect
enable rpc connect level auth (auth, but no sign or seal)
validate
enable the NDR validator
print
enable debugging of the packets
bigendian
use bigendian RPC
padcheck
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:
UNCFormat
The UNC format is:
//server/share
Name
smbtorture - Run a series of tests against a SMB server
Notes
1. Samba
http://www.samba.org/
2. Samba Team
http://www.samba.org/samba/team/
Samba 4.0 06/19/2025 SMBTORTURE(1)
Options
-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.
-k
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.
-L
Use oplocks.
-X
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.
-A
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.
-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).
See Also
Samba
Synopsis
smbtorture {//server/share} [-d debuglevel] [-U user%pass] [-k] [-N numprocs] [-n netbios_name]
[-W workgroup] [-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] [...]
Version
This man page is correct for version 4.0 of the Samba suite.
