SMB 1 uitschakelen op Linux-clients
Veel organisaties en internetproviders (ISP's) blokkeren de poort die SMB gebruikt om te communiceren, poort 445. Deze werkwijze is afkomstig uit beveiligingsrichtlijnen over verouderde en afgeschafte versies van het SMB-protocol. Hoewel SMB 3.x een internetveilig protocol is, zijn oudere versies van SMB, met name SMB 1, niet. SMB 1, ook wel CIFS (Common Internet File System) genoemd, is opgenomen in veel Linux-distributies.
SMB 1 is een verouderd, inefficiënt en onveilig protocol. Het goede nieuws is dat Azure Files geen ondersteuning biedt voor SMB 1. Vanaf Linux-kernelversie 4.18 is het ook mogelijk om SMB 1 uit te schakelen. We raden u ten zeerste aan de SMB 1 op uw Linux-clients uit te schakelen voordat u SMB-bestandsshares in productie gebruikt.
Let op
Dit artikel verwijst naar CentOS, een Linux-distributie die na juni 2024 niet meer wordt ondersteund. Houd rekening met uw gebruik en plan dienovereenkomstig. Zie de Richtlijnen voor het einde van de levensduur van CentOS voor meer informatie.
Linux-distributiestatus
Vanaf Linux-kernel 4.18 maakt de SMB-kernelmodule, die om verouderde redenen wordt aangeroepencifs
, een nieuwe moduleparameter beschikbaar (ook wel parm genoemd door verschillende externe documentatie).disable_legacy_dialects
Hoewel ze zijn geïntroduceerd in Linux-kernel 4.18, hebben sommige leveranciers deze wijziging teruggezet naar oudere kernels die ze ondersteunen. De volgende tabel bevat informatie over de beschikbaarheid van deze moduleparameter voor algemene Linux-distributies.
Distributie | Kan SMB 1 uitschakelen |
---|---|
Ubuntu 14.04-16.04 | Nee |
Ubuntu 18.04 | Ja |
Ubuntu 19.04+ | Ja |
Debian 8-9 | Nee |
Debian 10+ | Ja |
Fedora 29+ | Ja |
CentOS 7 | Nee |
CentOS 8+ | Ja |
Red Hat Enterprise Linux 6.x-7.x | Nee |
Red Hat Enterprise Linux 8+ | Ja |
openSUSE Leap 15.0 | Nee |
openSUSE Leap 15.1+ | Ja |
openSUSE trommelwied | Ja |
SUSE Linux Enterprise 11.x-12.x | Nee |
SUSE Linux Enterprise 15 | Nee |
SUSE Linux Enterprise 15.1 | Nee |
U kunt controleren of uw Linux-distributie de disable_legacy_dialects
moduleparameter ondersteunt via de volgende opdracht:
sudo modinfo -p cifs | grep disable_legacy_dialects
Met deze opdracht moet het volgende bericht worden weergegeven:
disable_legacy_dialects: To improve security it may be helpful to restrict the ability to override the default dialects (SMB2.1, SMB3 and SMB3.02) on mount with old dialects (CIFS/SMB1 and SMB2) since vers=1.0 (CIFS/SMB1) and vers=2.0 are weaker and less secure. Default: n/N/0 (bool)
SMB 1 verwijderen
Voordat u SMB 1 uitschakelt, controleert u of de SMB-module momenteel niet op uw systeem is geladen (wat automatisch gebeurt als u een SMB-share hebt gekoppeld). Voer de volgende opdracht uit, die niets moet uitvoeren als SMB niet is geladen:
lsmod | grep cifs
Als u de module wilt verwijderen, moet u eerst alle SMB-shares ontkoppelen met behulp van de umount
opdracht. U kunt alle gekoppelde SMB-shares op uw systeem identificeren met de volgende opdracht:
mount | grep cifs
Nadat u alle SMB-bestandsshares hebt ontkoppeld, kunt u de module veilig verwijderen. Voer de modprobe
opdracht uit:
sudo modprobe -r cifs
U kunt de module handmatig laden met SMB 1 uitgepakt met behulp van de modprobe
opdracht:
sudo modprobe cifs disable_legacy_dialects=Y
Ten slotte kunt u controleren of de SMB-module is geladen met de parameter door te kijken naar de geladen parameters in /sys/module/cifs/parameters
:
cat /sys/module/cifs/parameters/disable_legacy_dialects
Als u SMB 1 permanent wilt uitschakelen op Ubuntu- en Debian-distributies, moet u een nieuw bestand maken (als u nog geen aangepaste opties voor andere modules hebt) die met de instelling wordt aangeroepen /etc/modprobe.d/local.conf
. Voer de volgende opdracht uit:
echo "options cifs disable_legacy_dialects=Y" | sudo tee -a /etc/modprobe.d/local.conf > /dev/null
U kunt controleren of dit heeft gewerkt door de SMB-module te laden:
sudo modprobe cifs
cat /sys/module/cifs/parameters/disable_legacy_dialects
Volgende stappen
Raadpleeg de volgende koppelingen voor meer informatie over Azure Files: