Windows 10 und Samba

Problem

Nach dem kostenlosen Update von Windows 7 auf Windows 10 funktionierte mein Heimnetzwerk aus Windows und Kubuntu nicht mehr zuverlässig. Insbesondere gelang es nicht mehr, von einem Windows Rechner auf eine Samba-Freigabe auf einem Linux Rechner zuzugreifen. Das Problem ist aufgetreten ab Kubuntu 16.04.

Ursache

Standardmäßig benutzt Windows 10 nicht mehr das mittlerweile veraltete und mit Sicherheitsrisiken behaftete SMB1 Protokoll.

Lösung

Die erste funktionierende Abhilfe bestand darin, die SMB1 Unterstützung von Windows wieder in Betrieb zu nehmen. Leider scheint diese bei jedem Windows Update wieder deaktiviert zu werden, denn der Erfolg stellte sich nur temporär ein. Nach einigen Tagen (Windows ist bei mir nur sporadisch in Verwendung) traten die Probleme zumindest wieder auf. Besser ist es, das gesamte samba-Netzwerk auf einen höheren Protokoll-Level zu hieven. Welche Protokollversion dazu notwendig ist, dazu gibt es im Inernet unterschiedliche Meinungen. Bei mir funktioniert folgendes:

Anpassen der Samba-Konfiguration

In der Datei /etc/samba/smb.conf muss in der Sektion [global] folgende Zeilen ergänzt werden:

[global]
   server min protocol = SMB2_10
   client min protocol = SMB2_10
   client max protocol = SMB3

Nicht vergessen, das samba-System nach der Anpassung neu zu starten! Unter ubuntu geht das mit:

sudo systemctl restart smbd.service

Ungelöstes Problem: Browser Service

Leider stirbt mit SMB1 auch der Browser Service, denn den gibt es bei den Protokollversionen SMB2 und höher nicht mehr. Als Ersatz dient zeroconf. Aber mal geht es und mal geht es nicht. In den meisten Fällen besteht das Problem darin, dass SMB4K die einzelnen lokalen Hosts zwar auflistet, aber keine der darin enthaltenen Freigaben. Während SMB4K die Hosts ohne den Postfix ".local" anzeigt, können die Freigaben manuell aber sehr wohl eingehängt werden, sofern man an den Hostnamen ".local" anhängt. Zeitgleich funktioniert ping hostname nicht, ping hostname.local macht keine Probleme.

Am einfachsten ist es, SMB4K zu meiden und die Freigaben über die Datei /etc/fstab einzubinden:

//host.local/sharename /mnt/sharename cifs user,noauto,user=username,password=password 0 0

bewirkt, dass die Freigabe in dolphin am linken Rand unter "Orte" erscheint und per Mausclick eingehängt werden kann. Nicht ganz so flexibel wie SMB4K aber stabiler