Die Samba-Konfiguration lässt sich über die Konfigurations-Dateien /etc/samba/smb.conf.global und /etc/samba/smb.conf.shares an die lokalen Bedürfnisse anpassen.
Diese Dateien werden im Gegensatz zur Konfigurations-Datei /etc/samba/smb.conf bei Updateeinspielungen nicht überschrieben.
Samba-Konfigurationsveränderungen werden von Samba alle paar Minuten automatisch eingelesen, mensch kann aber auch das Einlesen erzwingen mit /etc/init.d/samba reload , jedoch wirken sich die Änderungen erst auf danach aufgebaute neue Nutzer-Verbindungen aus.
s.a.: Using Samba: Dateien verstecken und Veto-Dateien
Soll die Speicherung bestimmter Dateien oder Dateitypen auf den Netzlaufwerken verhindert werden, läßt sich dieses mit dem Eintrag von veto files in die Samba-Konfiguration erreichen, also durch einen Eintrag in /etc/samba/smb.conf.shares.
[homes] veto files = /Datei.a/Datei.b/ delete veto files = yes
Dieser Eintrag gilt immer nur für das Share, in diesem Beispiel „homes“, in dem er gesetzt ist.
Die zusätzliche Zeile „delete veto files = yes“ erlaubt dem Benutzer, ein Verzeichnis mit für ihn nicht sichtbaren veto files auch zu löschen. Ansonsten, also mit der Option „ = no“, erschiene ihm solch ein Verzeichnis zwar leer, ließe sich aber nicht durch ihn löschen.
Beispiel: Das Speichern von autorun.inf-Dateien durch die User unterbinden
[homes] veto files = /autorun.inf/ delete veto files = yes
Vor der Änderung in der smb.conf.shares sollte sichergestellt werden, dass sich keine autorun.inf in den Homeverzeichnissen befinden. Man kann diese auffinden mit …
find /home -name autorun.inf
… oder finden und direkt löschen lassen mit z.B. …
find /home/students/ -name 'autorun.inf' -exec rm -v {} \;
Soll den Usern das mehrfache Anmelden mit einem Account verwehrt werden, lässt sich dies durch einen Eintrag in /etc/samba/smb.conf.shares erreichen. Dazu das Share [homes] definieren und folgendes einfügen:
max connections = 1
Damit wird erreicht, dass das Homeverzeichnis sich nur einmal verbinden lässt.
Damit die Mehrfach-Anmeldung komplett scheitert, wird in /home/samba/netlogon/common.bat hinter der Zeile mit „IF EXIST K:\Patches\%COMPUTERNAME%.reg …“ eine Zeile eingefügt:
IF NOT EXIST H:\*.* shutdown -l
Es findet nun zwar eine Anmeldung statt, jedoch wird der sich doppelt anmeldende User nach wenigen Sekunden vom System automatisch wieder abgemeldet und sieht erneut das Windows-Anmeldefenster.
Bei Bedarf kann eine Meldung bei dieser Zwangsabmeldung ausgegeben werden.
Möglichkeit 1: Ein vbs-Script mit Namen usermessage.vbs z. B. mit notepad schreiben:
Const TIMEOUT = 10 Set objShell = WScript.CreateObject("WScript.Shell") objShell.Popup "Ein Nutzer mit diesen Anmeldedaten ist bereits angemeldet!" & vbCrLf & _ " " & vbCrLf & _ "Es ist erneute Anmeldung mit den eigenen Anmeldedaten erforderlich!" , TIMEOUT
In die Datei /home/samba/netlogon/common.bat muss dann die folgende Zeile:
IF NOT EXIST H:\*.* CALL \\%SERVER%\netlogon\usermessage.vbs & shutdown -l
Möglichkeit 2: Verwendung des Programms logonmessage.exe. Man erhält dieses Programm z. B. hier
Das sieht dann z. B. so aus: in /home/samba/netlogon/common.bat wird hinter der Zeile mit „IF EXIST K:\Patches\%COMPUTERNAME%.reg …“ eingefügt:
... IF EXIST H:\*.* GOTO winnt_ende IF EXIST \\%SERVER%\netlogon\logonmessage.exe START \\%SERVER%\netlogon\logonmessage.exe /messagefile keine_mehrfach_anmeldung.txt /homedrive K:\System\Loginmessages sleep 10000 shutdown -l :winnt_ende ...
Voraussetzungen:
Die Datei keine_mehrfach_anmeldung.txt könnte z. B. so aussehen:
%%%FormattedMessage%%% !! Wichtige Nachricht !! 10 keep Anmeldung ist nur mit eigenen Benutzerdaten erlaubt. Ein Nutzer mit diesen Benutzerdaten ist bereits angemeldet. Es ist erneute Anmeldung mit den eigenen Anmeldedaten erforderlich.
Wirkung: