The smb-protocols nmap script checks to see which smb dialects are present on the Samba server.

client min protocol sets the minimum smb dialect that server can use to connect to another server not the minimum dialects that a client to this server can use.

By default the version of samba used in Ubuntu 18.04 sets the server min to NT1 ( smbv1 ) and the max to SMBv3.

If you want to restrict access to this server to SMB3 and SMB3 only you need to set the server min protocol:

server min protocol = SMB3

*Note: there are sub-variants to this dialect:

SMB3_00: Windows 8

SMB3_02: Windows 8.1

SMB3_10: early Windows 10

SMB3_11: Windows 10

By default SMB3 in smb.conf selects the SMB3_11 variant.*

Answer from Morbius1 on askubuntu.com
🌐
nixCraft
cyberciti.biz › nixcraft › howto › samba (smb/cifs) › how to configure samba to use smbv2 and disable smbv1 on linux or unix
How to configure Samba to use SMBv2 and disable SMBv1 on Linux or Unix - nixCraft
May 12, 2021 - Samba is an open-source implementation of the SMB or CIFS protocol, which allows PC-compatible machines (especially Windows oese) to share files, printers, and other information with Linux and vice-versa.
Top answer
1 of 1
16

From the man page for the configuration file for the Samba suite in the "client max protocol" section:

Possible values are :

  • CORE: Earliest version. No concept of user names.
  • COREPLUS: Slight improvements on CORE for efficiency.
  • LANMAN1: First modern version of the protocol. Long filename support.
  • LANMAN2: Updates to Lanman1 protocol.
  • NT1: Current up to date version of the protocol. Used by Windows NT. Known as CIFS.
  • SMB2: Re-implementation of the SMB protocol. Used by Windows Vista and later versions of Windows. SMB2 has sub protocols available.
  • SMB2_02: The earliest SMB2 version.
  • SMB2_10: Windows 7 SMB2 version.
  • SMB2_22: Early Windows 8 SMB2 version.
  • SMB2_24: Windows 8 beta SMB2 version.

By default SMB2 selects the SMB2_10 variant.

  • SMB3: The same as SMB2. Used by Windows 8. SMB3 has sub protocols available.
  • SMB3_00: Windows 8 SMB3 version. (mostly the same as SMB2_24)
  • SMB3_02: Windows 8.1 SMB3 version.
  • SMB3_10: early Windows 10 technical preview SMB3 version.
  • SMB3_11: Windows 10 technical preview SMB3 version (maybe final).

By default SMB3 selects the SMB3_11 variant.

Normally this option should not be set as the automatic negotiation phase in the SMB protocol takes care of choosing the appropriate protocol.

The value default refers to SMB3_11.

Adding clarification from A.B in the comments:

wiki.samba.org/index.php/Samba3/SMB2 states "Samba 3.6 added basic support for SMB2.0", "Basic support for SMB 2.1 was added in Samba 4.0.0", "Basic support for SMB3 is included in Samba 4.0.0 and later."

🌐
Samba
samba.org › samba › docs › current › man-html › smb.conf.5.html
smb.conf
Note that most command line tools support --option='client min protocol=NT1', so it may not be required to enable SMB1 protocols globally in smb.conf. ... This option controls the protocol Samba uses to issue netlogon ping requests.
🌐
Linux Mint Forums
forums.linuxmint.com › board index › main edition support › networking
Samba configuration - NT1 vs others - Linux Mint Forums
December 22, 2022 - To connect to my FreeBSD server from Linux Mint 21.1 64bit Xfce I added : client min protocol = NT1 server min protocol = NT1 below the line 'workgroup = WORKGROUP' line This worked, I can now connect to the Samba (version 4.12.15) running on the FreeBSD server.
🌐
Reddit
reddit.com › r/linuxquestions › [question] set preferred samba protocol version
r/linuxquestions on Reddit: [Question] Set preferred samba protocol version
August 12, 2020 -

There are multiple SMB protocol versions that can be set used, by editing /etc/samba/smb.conf

[global]
    min protocol = SMB2

I can set a minimum, and maximum version for my system. However, this could leave a range of versions that are actually used.

Is it possible to set a preferred version, which is used if both the client and server support this version?
Or is there a way to get SMB to use the latest compatible version, not the minimum (seeing as it defaults to version 1.0)?

Find elsewhere
🌐
FreeBSD
forums.freebsd.org › server and networking › web and network services
Solved - Per-host "min protocol" in samba? | The FreeBSD Forums
October 7, 2019 - I've recently set our samba server at work to use "server min protocol = SMB2", as some of our Windows clients were using older dialects to communicate. Samba 4.10 (and possibly earlier versions) seem to have some issues with the older standards, and there are security benefits to having this...
🌐
SambaWiki
wiki.samba.org › index.php › Samba_4.11_Features_added › changed
Samba 4.11 Features added/changed - SambaWiki
Note: that most commandline tools e.g. smbclient, smbcacls and others also support the '--option' argument to overwrite smb.conf options, e.g. --option='client min protocol=NT1' might be useful. As Microsoft no longer installs SMB1 support in recent releases or uninstalls it after 30 days without usage, the Samba Team tries to get remove the SMB1 usage as much as possible.
🌐
Twardziel
twardziel.eu › it › 3-min-max-protocol-in-smb.conf.pdf pdf
Understanding min and max protocol levels in smb.conf
1. client min protocol – This setting controls the minimum protocol version that the client will
🌐
Samba
samba.org › samba › security › CVE-2016-2115.html
Samba - Security Announcement Archive
Default: client ipc min protocol = default Example: client ipc min protocol = SMB3_11 ================== Patch Availability ================== A patch addressing this defect has been posted to https://www.samba.org/samba/security/ Additionally, Samba 4.4.2, 4.3.8 and 4.2.11 have been issued as security releases to correct the defect.
🌐
Total Commander
ghisler.ch › home › index › total commander › total commander (english)
Cannot connect to SMB server when min protocol = SMB2 is set - Page 2 - Total Commander
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = xxxyyy security = user map to guest = bad user dns proxy = no max protocol = SMB3 min protocol = SMB2_10 client max protocol = SMB3 client min protocol = SMB2_10 #============================ Share Definitions ============================== [S_Secured] path = /var/samba_share valid users = abcduser guest ok = no writable = yes browsable = yes I'm not quite sure, but only "SMB2_10" worked for me.
🌐
O'Reilly
oreilly.com › library › view › using-samba-second › 0596002564 › re160.html
min protocol = name - Using Samba, Second Edition [Book]
Name min protocol = name — [global] Synopsis Allowable values: CORE, COREPLUS, LANMAN1, LANMAN2, NT1 Default: CORE If set, prevents use of old (less secure) protocols. Using NT1 … - Selection from Using Samba, Second Edition [Book]
🌐
ArchWiki
wiki.archlinux.org › title › Samba
Samba - ArchWiki
May 26, 2026 - Warning By default, Samba versions prior to 4.11 allow connections using the outdated and insecure SMB1 protocol. When using one these Samba versions, it is highly recommended to set server min protocol = SMB2_02 to protect yourself from ransomware attacks.