Hier können der volle Pfad und ein Skript-Programm angegeben werden, das vom Daemon smbd in bestimmten Situationen mit root-Rechten ausgeführt werden kann.
Normalerweise muss für jeden Client, der auf bereitgestellte Dienste des Netzes zugreifen will, ein Account auf der Server-Seite existieren. Alle Clients, die sich zur Identifikation einer Windows NT-Account-Datenbasis eines PDC (siehe Glossar PDCpdc) bedienen, werden von Samba automatisch als lokale Unix-Accounts erzeugt und auch geführt. Mit dieser Option kann bewirkt werden, dass Accounts, die auf der Unix-Seite eingerichtet worden sind, gelöscht werden, wenn ein Client auf der PDC-Seite nicht mehr existiert. Mit dieser Option kann gewährleistet werden, dass keine Dead-Accounts auf der Unix-Maschine verbleiben, die immerhin ein Sicherheitsrisiko darstellen.
Um diese Option nutzen zu können, müssen für den Daemon smbd in der /etc/samba/smb.conf-Datei beim Start zwei Parameter gesetzt sein:
Ohne diese Option ist der smbd-Daemon nicht in der Lage, zu
erkennen, ob ein Client noch in der Datenbasis der berechtigten
Clients beim PDC registriert ist (siehe
Seite ).
Dieser Parameter muss mit dem vollen Pfadnamen auf ein Skript zeigen, das einen Unix-Account löschen kann, durch Angabe eines Arguments %u. Dieses Argument wird dann zu dem zu löschenden Unix-Account expandiert.
Man könnte der Ansicht sein, dass der Prozess des Löschens eines nicht
mehr vorhandenen Clients komplementär zur Erzeugung eines neuen
Clients abläuft (siehe Seite add user
script), aber das ist nicht der Fall. Wie wir gesehen haben, muss
smbd als security=domain konfiguriert sein. Der Grund
hierfür ist, dass Samba nur in dieser Einstellung wissen kann, ob
ein Einwählversuch eines Clients bedient werden soll und ob dieser
Client immer noch Teilnehmer der von dem PDC verwalteten
Account-Tabelle ist. Es könnte ja sein, dass ein User sich im Netz
anmelden will, der bereits in der Datenbasis des PDC gelöscht worden
ist. Nur wenn der Samba-Server ein echtes Mitglied der
Domain ist, wird er davon unterrichtet, dass ein bestimmter Client in
der PDC-Account-Datenbasis gelöscht worden ist.
Wie auf Seite zu beobachten ist, gilt für den
add user script-Parameter jedoch, dass die Security auf den
Wert security=server eingestellt werden muss. Im Gegensatz zu
der Einstellung des Parameters delete user script wird bei
dieser Wertebelegung ein Einwählversuch eines aus der PDC-Datenbasis
gelöschten Clients vom Samba-Server nur als Versuch gewertet, mit
einem ungültigen Password Zugang zum Netz zu erhalten. Das ist auch gut
so, denn wenn jetzt solche Clients automatisch aus dem Netz entfernt
würden, dann wäre das ein ziemliches Desaster. Kein User dürfte es
wagen, auch nur einmal einen ungültigen Einwählversuch zu starten,
sofort würde er aus der Liste der Accounts auf der Unix-Seite gelöscht
werden.
Wenn ein Windows-Client versucht, den Sambas über ein legales Login zu kontaktieren, wird sich der Daemon smbd mit dem Password-Server in Verbindung setzen, und er wird versuchen, die Authentifizierung dort vorzunehmen. Gelingt dies nicht, wird vom PDC ein entsprechender Domain Error generiert, mit der Bedeutung Der Benutzer existiert nicht mehr. Daraufhin überprüft smbd alle Unix-Accounts, ob ein solcher Client in der Datei /etc/passwd registriert ist. Wenn jetzt die Option delete user script eingeschaltet (und auch richtig initialisiert) ist, wird dieser Client aus der /etc/passwd-Datenbasis der Unix-Maschine gelöscht.
Voreinstellung:
delete user script = <leere Zeichenkette>
Beispiel:
delete user script = /usr/lib/samba/bin/del_user %u