GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Webmin

Samba-Windows-Dateifreigabe

Die Samba-Windows-Dateifreigabe Seite erklärt das SMB-Protokoll (häufig als CIFS bezeichnet - Common Internet File System), über das Windows-Systeme Dateien gemeinsam nutzen, und erklärt, wie man Samba einrichtet Programm, um Dateien auf Ihrem Unix-Server für Windows-Clients verfügbar zu machen.

Eine Einführung in Samba ist verfügbar.

Das Samba-Windows-Dateifreigabemodul

Die Samba-Windows-Dateifreigabe Mit dem Modul können Sie mithilfe des SMB-Protokolls (Server Message Blocks) Verzeichnisse und Drucker angeben, die für Windows-Clients freigegeben werden sollen. Es ist in der Kategorie Server zu finden, und wenn auf seinen Link geklickt wird, wird die Hauptseite wie im folgenden Screenshot gezeigt angezeigt. Alle vorhandenen Freigaben werden zusammen mit ihren Pfaden und den Benutzern, denen sie zur Verfügung stehen, aufgelistet. Darunter befinden sich Symbole zum Einstellen verschiedener globaler Optionen, die für alle Freigaben gelten, Links zum Verwalten von Samba-Benutzern und eine Schaltfläche zum Starten oder Neustarten der Serverprozesse.

Im Laufe der Jahre hat Samba eine große Auswahl an konfigurierbaren Optionen erhalten. Mit diesem Modul können Sie jedoch nicht alle konfigurieren, sondern nur diejenigen, die für einen kleinen Server in einem einfachen Netzwerk nützlich sind. Beispielsweise können Einstellungen in Bezug auf Anmeldeskripts, NT-Domänen und SSL nicht bearbeitet werden. Wenn Sie sie jedoch manuell zu Ihrer smb.conf-Datei hinzufügen, wird das Modul sie nicht ändern.

Wie alle anderen Module, die einen Server konfigurieren, kann dieses nur verwendet werden, wenn der Samba-Server tatsächlich installiert ist. Wenn das Modul es nicht finden kann, wird eine Fehlermeldung wie The Samba server executable /usr/sbin/smbd was not found ausgegeben erscheint stattdessen auf der Hauptseite. Wenn Sie Samba installiert haben, aber an einem anderen Ort, als das Modul erwartet, lesen Sie den Abschnitt Konfigurieren der Samba-Windows-Dateifreigabe Modulabschnitt später in diesem Kapitel finden Sie Anweisungen zur Neukonfiguration, um die richtigen Pfade zu verwenden. Andernfalls müssen Sie es installieren.

Die meisten Linux-Distributionen und mehrere andere Betriebssysteme enthalten ein oder mehrere Samba-Pakete, die einfach mit dem Modul Softwarepakete installiert werden können (siehe Kapitel 12). Wenn nicht, müssen Sie den Quellcode von www.samba.org herunterladen und dann manuell kompilieren und installieren. Das Modul erwartet, dass Sie das Paket verwenden, falls eines verfügbar ist, oder den Quellcode andernfalls. Wenn Sie dies nicht getan haben und weiterhin eine Fehlermeldung auf der Hauptseite angezeigt wird, muss die Konfiguration des Moduls angepasst werden, um die richtigen Pfade zu verwenden.

Ganz gleich, wie Samba installiert ist, seine Standardkonfigurationsdatei enthält mindestens zwei Freigaben (die speziellen Homes und Printers) sowie mehrere globale Einstellungen. Das bedeutet, dass die Liste auf der Hauptseite auch dann nicht leer sein wird, wenn Sie dieses Modul noch nie zuvor verwendet oder Samba manuell konfiguriert haben. Wenn Sie Freigaben durch direktes Bearbeiten der Konfigurationsdatei hinzugefügt haben, werden diese natürlich ebenfalls angezeigt.

Wenn Webmin erkennt, dass Samba bereits läuft, wird eine Schaltfläche mit der Bezeichnung Samba-Server neu starten angezeigt wird unten auf der Seite angezeigt. Wie vorauszusehen war, werden durch Klicken darauf alle laufenden Serverprozesse beendet und neu gestartet, wodurch ein erneutes Laden der aktuellen Konfiguration erzwungen wird. Dies ist jedoch normalerweise unnötig, da Samba die Konfigurationsdateien erneut liest, sobald es feststellt, dass sie geändert wurden.

Wenn das Modul feststellt, dass beide Samba-Serverprozesse nicht laufen, zeigt es Server starten an stattdessen Schaltflächen, die beim Anklicken sowohl smbd als auch nmbd starten. Es wird keine PID-Datei überprüft, um festzustellen, ob sie ausgeführt werden oder nicht - stattdessen sucht das Modul nach laufenden Prozessen mit diesen Namen.

Samba-Windows-Dateifreigabe

Samba-Benutzer verwalten

Wie in der Einleitung erwähnt, verwendet das SMB-Protokoll ein Kennwortverschlüsselungsformat, das mit dem Standard-Unix-Format nicht kompatibel ist. Früher war dies kein Problem, da alte Windows-Versionen (95 und früher) Passwörter unverschlüsselt an SMB-Server gesendet haben. Dadurch konnte Samba sie verschlüsseln und mit der Unix-Passwortliste vergleichen, genau wie es die FTP- oder Telnet-Server tun. Leider senden neuere Windows-Versionen Kennwörter nur im neuen NTLM-verschlüsselten Format, es sei denn, ein bestimmter obskurer Registrierungsschlüssel wird geändert. Das bedeutet, dass Samba eine separate Liste von Passwörtern pflegen muss, um moderne Clients zu validieren.

Sofern auf Ihren Server nicht nur von alten Windows-Hosts oder Linux-Systemen zugegriffen werden soll, müssen Sie diese separate verschlüsselte Passwortliste aktivieren. Die Schritte dazu sind :

  1. Klicken Sie auf der Hauptseite des Moduls auf Authentifizierung Symbol.
  2. Ändern Sie im angezeigten Formular die Option Verschlüsselte Passwörter verwenden? Feld auf Ja .
  3. Klicken Sie auf Speichern am Ende des Formulars, um zurückzukehren, um die neue Einstellung zu aktivieren und zur Hauptseite des Moduls zurückzukehren. Falls es vorher nicht auftauchte, die Verschlüsselten Passwörter Abschnitt mit drei Links sollte jetzt sichtbar sein.

Jetzt, da die separate Passwortliste von Samba aktiviert ist, müssen Sie einige Ihrer bestehenden Unix-Benutzer hinzufügen. Dies kann ganz einfach mit Webmin durchgeführt werden, indem Sie die folgenden Schritte ausführen:

  1. Klicken Sie auf der Hauptseite des Samba-Moduls unter Verschlüsselte Passwörter auf den Link *Unix-Benutzer in Samba-Benutzer umwandeln* Abschnitt, um das Konvertierungsformular aufzurufen.
  2. Die Option Diese Nutzer nicht konvertieren oder entfernen Das Feld listet Benutzer auf, die von der Konvertierung ausgeschlossen werden, und enthält standardmäßig alle Systemkonten. Vielleicht möchten Sie weitere hinzufügen – es schadet jedoch nicht, Konten umzuwandeln, die nie verwendet werden.
  3. Wenn Sie dieses Formular schon einmal verwendet haben, kann die Option *Vorhandene Samba-Benutzer aus ihren Unix-Details aktualisieren* aktiviert werden, um vorhandene Samba-Benutzer zu aktualisieren, damit sie mit den entsprechenden Unix-Benutzern übereinstimmen.
  4. Ebenso kann die Option *Samba-Benutzer löschen, die unter Unix nicht existieren* überprüft werden, um Samba-Benutzer zu löschen, die keinen entsprechenden Unix-Benutzer mehr haben.
  5. Das Legen Sie für neu erstellte Benutzer das Passwort auf fest Das Feld bestimmt das zu vergebende Passwort, da es keine Möglichkeit gibt, die bestehenden Passwörter der Benutzer umzuwandeln. Die beste Wahl ist *Konto gesperrt*, was verhindert, dass die konvertierten Benutzer verwendet werden, bis später ein Passwort festgelegt wird. Sie können auch Kein Passwort auswählen neue Konten passwortlos zu lassen (aus Sicherheitsgründen eine schlechte Idee) oder Dieses Passwort verwenden um ein Passwort für alle konvertierten Benutzer anzugeben.
  6. Klicken Sie auf Benutzer konvertieren Schaltfläche, um den Vorgang zu starten. Es wird eine Seite angezeigt, auf der alle konvertierten, übersprungenen oder aktualisierten Benutzer aufgeführt sind.

Nach der Konvertierung müssen Sie wahrscheinlich Passwörter für die neuen Samba-Benutzer festlegen. Dies muss nacheinander erfolgen, indem Sie diese Anweisungen für jeden Benutzer befolgen:

  1. Klicken Sie auf der Hauptseite des Moduls auf den Link *Samba-Benutzer und Passwörter bearbeiten*, um eine Liste bestehender Benutzer aufzurufen.
  2. Klicken Sie auf den Namen des Benutzers, dessen Passwort Sie festlegen möchten.
  3. Im Passwort Wählen Sie im Feld Neues Passwort aus Option und füllen Sie das Textfeld daneben aus. Sie können auch Kein Zugriff auswählen um alle Samba-Anmeldungen dieses Benutzers zu blockieren, Kein Passwort um Anmeldungen ohne Passwort oder Aktuelles Passwort zuzulassen das Passwort unverändert zu lassen.
  4. Keines der anderen Felder im Formular sollte geändert werden - klicken Sie einfach auf Speichern Schaltfläche, um zur Benutzerliste zurückzukehren.
  5. Sie sollten sich jetzt als dieser Benutzer mit dem gewählten Passwort bei Ihrem Samba-Server anmelden und auf Dateien in einer Freigabe zugreifen können. Vorausgesetzt, die besonderen Heime Freigabe vorhanden ist, hat jeder Benutzer Zugriff auf die Freigabe mit demselben Namen wie sein Benutzername.

Da das Konvertieren und Setzen des Passworts für jeden neuen Benutzer eine lästige Zeitverschwendung ist, können Sie das Modul so konfigurieren, dass für jeden in Webmin angelegten Unix-Benutzer automatisch ein Samba-Benutzer erstellt wird. Es ist auch möglich, einen Samba-Benutzer umzubenennen, zu löschen oder sein Passwort zu ändern, wenn sein entsprechendes Unix-Benutzerkonto im Benutzer- und Gruppenmodul geändert wird. Gehen Sie wie folgt vor, um diese Synchronisierung einzurichten:

  1. Klicken Sie auf der Hauptseite des Samba-Moduls auf den Link *Automatische Unix- und Samba-Benutzersynchronisierung konfigurieren* im Abschnitt *Verschlüsselte Passwörter*.
  2. Aktivieren Sie im Synchronisierungsformular die Option *Samba-Benutzer hinzufügen, wenn ein Unix-Benutzer hinzugefügt wird*, damit für jeden neuen Unix-Benutzer ein Samba-Benutzer mit der richtigen UID und dem richtigen Passwort erstellt wird.
  3. Damit der entsprechende Samba-Benutzer umbenannt oder sein Passwort geändert wird, wenn ein Unix-Benutzer geändert wird, aktivieren Sie das Kontrollkästchen *Samba-Benutzer ändern, wenn ein Unix-Benutzer geändert wird*.
  4. Damit Webmin den passenden Samba-Benutzer entfernt, wenn ein Unix-Benutzer entfernt wird, markieren Sie *Den Samba-Benutzer löschen, wenn ein Unix-Benutzer gelöscht wird*.
  5. Klicken Sie auf Anwenden Schaltfläche, um Ihre Einstellungen zu speichern. Alle Aktionen, die im Benutzer- und Gruppenmodul durchgeführt werden (wenn die Optionen *in anderen Modulen* verwendet werden), werden auch die Samba-Benutzerliste ändern.
Hinweis: Leider gilt diese Synchronisierung nur für die Module „Benutzer und Gruppen“, „Kennwörter ändern“ und „Benutzer und Gruppen gruppieren“ in Webmin. Wenn Sie einen Benutzer mit der Datei adduser hinzufügen Shell-Befehl oder ändern Sie ein Passwort mit passwd Shell-Befehl wird kein Samba-Benutzer hinzugefügt oder aktualisiert
.

Hinzufügen einer neuen Dateifreigabe

In seiner üblichen Standardkonfiguration erlaubt Samba jedem Unix-Benutzer, sich anzumelden und auf Dateien in seinem Home-Verzeichnis zuzugreifen. Die besonderen Zuhause share bietet diese Funktion, die in vielen Fällen alles ist, was Sie benötigen, damit Benutzer ihre eigenen Dateien auf dem Server speichern können. Es ist jedoch oft sinnvoll, ein Verzeichnis freizugeben, auf das jeder Zugriff hat, damit Dokumente, die für die gesamte Organisation von Interesse sind, verfügbar gemacht werden können. Eine Freigabe wie diese kann so eingerichtet werden, dass sie Gastzugriff erlaubt (was bedeutet, dass für den Zugriff keine Anmeldung erforderlich ist) oder eine gültige Anmeldung beim Server erfordert.

Gehen Sie zum Erstellen einer Dateifreigabe wie folgt vor:

  1. Entscheiden Sie sich zunächst für das Verzeichnis, das Sie freigeben möchten, und erstellen Sie es, falls es noch nicht existiert. Es muss die entsprechenden Unix-Berechtigungen erhalten, damit Benutzer darauf lesen und/oder schreiben können.
  2. Klicken Sie auf der Hauptseite des Moduls auf Neue Dateifreigabe erstellen Link über oder unter der Tabelle. Dadurch gelangen Sie zum Freigabeerstellungsformular, das im folgenden Screenshot gezeigt wird.
  3. Im Freigabenamen Stellen Sie sicher, dass die erste Schaltfläche ausgewählt ist, und geben Sie einen eindeutigen alphanumerischen Namen für Ihre Freigabe in das Textfeld ein, z. B. Dokumente . Wenn Sie den Namen eines Unix-Benutzers eingeben, wird seine automatische Freigabe des Home-Verzeichnisses überschrieben.
  4. Im zu teilenden Verzeichnis geben Sie den vollständigen Pfad zu dem in Schritt 1 ausgewählten Verzeichnis ein oder wählen Sie mit der kleinen Schaltfläche
  5. aus
  6. Um diese Freigabe zu deaktivieren, sodass sie nicht verwendet werden kann, ändern Sie die Einstellung Verfügbar? Feld auf Nein . Dies kann nützlich sein, wenn Sie es offline schalten möchten, bis alle Optionen richtig eingestellt sind.
  7. Um diese Freigabe aus der Liste der Freigaben auszublenden, die angezeigt wird, wenn der Server durchsucht wird, ändern Sie die Einstellung Browseable? Feld auf Nein . Es ist jedoch immer noch direkt über einen \\servername\sharename-Pfad zugänglich.
  8. Im Kommentar teilen Geben Sie im Feld eine kurze Beschreibung für diese Dateifreigabe ein, z. B. Unternehmensdokumente .
  9. Klicken Sie auf Erstellen Schaltfläche, um es der Samba-Konfiguration hinzuzufügen. Ihr Browser kehrt zur Hauptseite des Moduls zurück, auf der die neue Freigabe aufgelistet wird.
  10. Klicken Sie auf den neuen Freigabenamen, um die Bearbeitungsseite aufzurufen.
  11. Klicken Sie auf Sicherheit und Zugriffskontrolle Symbol, um das Sicherheitsformular der Freigabe anzuzeigen.
  12. Wenn die Dateien in dieser Freigabe schreibgeschützt sein sollen, setzen Sie die Option Beschreibbar? Feld auf Nein - Stellen Sie andernfalls sicher, dass Sie Ja wählen ist ausgewählt.
  13. Der Gastzugang? legt fest, ob Clients auf diese Freigabe zugreifen dürfen, ohne sich beim Server anzumelden. Die verfügbaren Optionen sind :Keine Nur authentifizierte Benutzer erhalten Zugriff. Ja Jeder darf auf die Freigabe zugreifen, aber nicht authentifizierte Clients werden als Gäste behandelt. Clients, die sich angemeldet haben, haben ihre normalen Dateizugriffsrechte. Nur für Gäste Alle Kunden, ob authentifiziert oder nicht, werden als Gäste behandelt.
  14. Um den Unix-Benutzer festzulegen, als der Gäste Dateien lesen und schreiben, ändern Sie den Gast-Unix-Benutzer Feld. Dies sollte normalerweise ein Konto mit Nur-Lese-Zugriff sein.
  15. Klicken Sie auf Speichern Schaltfläche am unteren Rand des Formulars. Die Freigabe kann jetzt von Clients verwendet werden und sollte angezeigt werden, wenn Ihr Server durchsucht wird.
Dateifreigabe erstellen

Eine Freigabe kann nach der Erstellung bearbeitet werden, indem Sie auf ihren Namen in der Liste auf der Hauptseite des Moduls klicken, um das Bearbeitungsformular aufzurufen, Details wie den Pfad oder die Beschreibung ändern und auf Speichern klicken Taste. Sie können es auch vollständig löschen, indem Sie auf Löschen klicken auf demselben Formular. Sie können auch zusätzliche Parameter bearbeiten, indem Sie auf die Symbole unten auf der Bearbeitungsseite klicken – spätere Abschnitte in diesem Kapitel erklären, was sie im Detail tun.

Die Homes-Freigabe kann ebenfalls bearbeitet werden, obwohl sie normalerweise keinen Pfad hat (oder falls doch, enthält sie den speziellen %U-Code, der durch das Home-Verzeichnis des verbindenden Benutzers ersetzt wird).

Dateifreigabe bearbeiten

Hinzufügen einer neuen Druckerfreigabe

Die Standard-Samba-Konfiguration enthält normalerweise die speziellen Drucker share, was anzeigt, dass alle Drucker auf Ihrem System für SMB-Clients verfügbar sind. Es kann jedoch stattdessen explizit ein bestimmter Drucker freigegeben werden. Dies kann besser sein, als sie alle automatisch freizugeben, da Sie so verschiedene Optionen für jeden Drucker festlegen oder einige von der gemeinsamen Nutzung ausschließen können.

Bevor das Drucken und das Durchsuchen von Druckern in Samba richtig funktioniert, muss es so konfiguriert werden, dass es das richtige Drucksystem für Ihre Unix-Box verwendet. Siehe Drucker konfigurieren Abschnitt später in diesem Kapitel finden Sie Einzelheiten zur Einstellung. Wenn es falsch eingestellt ist, verwendet der Server die falschen Befehle zum Auflisten von Druckern und Senden von Aufträgen, was dazu führen kann, dass die automatisch generierte Druckerliste leer ist oder Druckanforderungen fehlschlagen.

Gehen Sie wie folgt vor, um SMB-Kunden einen Drucker zur Verfügung zu stellen:

  1. Klicken Sie auf der Hauptseite des Moduls auf den Link *Neue Druckerfreigabe erstellen* über oder unter der Tabelle. Dadurch gelangen Sie zum unten gezeigten Druckfreigabe-Erstellungsformular.
  2. Im Freigabenamen Stellen Sie sicher, dass die erste Schaltfläche ausgewählt ist, und geben Sie einen eindeutigen alphanumerischen Namen für Ihre Freigabe in das Textfeld ein, z. B. hplaser . Dies sollte derselbe sein wie der Name des Unix-Druckers, den Sie im nächsten Schritt auswählen, um Verwechslungen zu vermeiden. Wenn bereits eine automatisch erstellte Druckerfreigabe mit demselben Namen vorhanden ist, wird sie von dieser neuen überschrieben.
  3. Vom Unix-Drucker Wählen Sie im Menü den Drucker aus, der SMB-Clients zur Verfügung gestellt werden soll. Diese Liste stammt aus dem Druckerverwaltungsmodul (siehe Kapitel 22). Wenn Standard ausgewählt ist, wird der Standarddrucker des Drucksystems verwendet.
  4. Um diesen Drucker zu deaktivieren, sodass er nicht verwendet werden kann, ändern Sie die Einstellung Verfügbar? Feld auf Nein .
  5. Um diesen Drucker aus der Liste auszublenden, die beim Durchsuchen des Servers angezeigt wird, ändern Sie die Einstellung Browseable? Feld auf Nein . Es ist jedoch immer noch direkt über einen \\Servername\Druckername-Pfad zugänglich.
  6. Im Spool-Verzeichnis Feld können Sie den Namen eines Verzeichnisses eingeben, in dem temporäre Dateien zum Drucken gespeichert werden. Lassen Sie es leer, um die Standardeinstellung von Samba zu verwenden, was normalerweise gut funktioniert.
  7. Im Kommentar teilen Geben Sie im Feld eine kurze Beschreibung für diesen Drucker ein, z. B. Office HP Laserjet 5 .
  8. Klicken Sie auf Erstellen Schaltfläche, um die Freigabe zur Samba-Konfiguration hinzuzufügen. Ihr Browser kehrt zur Hauptseite des Moduls zurück, die nun den neuen Drucker in der Tabelle enthält.
  9. Klicken Sie auf den neuen Freigabenamen, um die Bearbeitungsseite aufzurufen.
  10. Klicken Sie auf Sicherheit und Zugriffskontrolle Symbol, um das Sicherheitsformular der Freigabe anzuzeigen.
  11. Der Gastzugang? legt fest, ob Clients auf diesem Drucker drucken dürfen, ohne sich beim Server anzumelden. Die verfügbaren Optionen sind :Keine Nur authentifizierte Benutzer erhalten Zugriff. Ja Jeder darf auf die Freigabe zugreifen, aber nicht authentifizierte Clients werden als Gäste behandelt. Kunden, die sich angemeldet haben, erhalten Druckaufträge unter ihrem Anmeldenamen. Nur für Gäste Alle Kunden, ob authentifiziert oder nicht, werden als Gäste behandelt.
  12. Um den Unix-Benutzer festzulegen, als der Gäste Druckaufträge senden, ändern Sie den Gast-Unix-Benutzer Feld. Dies spielt keine große Rolle, es sei denn, Ihr Druckersystem ist so konfiguriert, dass bestimmte Benutzer blockiert werden.
  13. Klicken Sie auf Speichern Schaltfläche am unteren Rand des Formulars, um zur Bearbeitungsseite des Druckers zurückzukehren.
  14. Klicken Sie auf die Druckeroptionen Symbol.
  15. Wenn dieser Drucker von Windows-Clients verwendet werden soll und kein Unix-Treiber installiert ist, geben Sie seine vollständige Marke und Modell in den Druckertreiber ein Feld. Dieser muss genau mit dem Namen übereinstimmen, den Windows auf den Drucker bezieht, damit die Clients wissen, welcher Treiber installiert werden muss. Wenn Keine ausgewählt ist, werden Benutzer, die diesen Drucker zu ihren Windows-Systemen hinzufügen, stattdessen aufgefordert, das Druckermodell aus einer Liste auszuwählen. Wenn der in Schritt 3 ausgewählte Unix-Drucker bereits mit einem Treiber eingerichtet ist, müssen Clients Jobs im Postscript-Format statt im nativen Datenformat, das der Drucker verwendet, übermitteln (da der Treiber die Konvertierung durchführt). In diesem Fall können Sie den Namen eines Druckers eingeben, der Postscript nativ verwendet, z. B. Apple LaserJet II .
  16. Klicken Sie abschließend auf Speichern Schaltfläche auf diesem Formular. Die Druckerfreigabe ist jetzt für die Verwendung durch Windows-Clients bereit.
Dateifreigabe erstellen

Genau wie Dateifreigaben können Drucker bearbeitet und gelöscht werden, indem Sie auf deren Namen in der Tabelle auf der Hauptseite des Moduls klicken. Die speziellen Drucker share kann ebenfalls modifiziert werden - allerdings macht es keinen Sinn, dafür viele Optionen zu setzen, wie z. B. den Unix-Drucker oder Druckertreiber .

Clients anzeigen und trennen

Jeder Client, der auf eine Datei- oder Druckerfreigabe auf Ihrem System zugreift, hat eine Verbindung zum Samba-Server, und diese Verbindungen können mit diesem Modul angezeigt werden. Clients können auch Dateien sperren, die sie zur Bearbeitung geöffnet haben, wodurch andere daran gehindert werden, sie zu öffnen. Eine der Aufgaben des Servers ist die Pflege dieser Sperren, die Sitzungen zugeordnet sind und die Sie auch einsehen können. Wenn ein Client abstürzt, ohne dass die Verbindung ordnungsgemäß getrennt wurde, bleiben alle von ihm gehaltenen Sperren bestehen, bis die TCP-Verbindung abläuft, was eine Weile dauern kann. Aus diesem Grund erlaubt Ihnen das Modul, Client-Sessions zu beenden und damit ihre Sperren freizugeben.

Führen Sie die folgenden Schritte aus, um Client-Sitzungen anzuzeigen und zu löschen:

  1. Klicken Sie auf der Hauptseite des Moduls auf Alle Verbindungen anzeigen Link über oder unter der Share-Tabelle, um eine Liste aller Verbindungen zum Server anzuzeigen. Alternativ können Sie auf einen Drucker oder eine Dateifreigabe und dann auf Verbindungen anzeigen klicken Schaltfläche auf seiner Bearbeitungsseite, um eine Liste nur der Verbindungen zu dieser bestimmten Freigabe anzuzeigen.
  2. In jedem Fall listet die angezeigte Seite die derzeit verwendeten Freigaben auf und zeigt für jede den Namen des verbundenen Benutzers, den Host, von dem aus er sich verbunden hat, die Zeit der Verbindung und alle gesperrten Dateien. In der Spalte ganz links steht die ID des Samba-Server-Unterprozesses, der diese Verbindung handhabt. Im Allgemeinen werden mehrere Verbindungen von demselben Client-System zu verschiedenen Freigaben von einem Prozess verarbeitet.
  3. Um einen Prozess zu beenden und damit alle Verbindungen zu unterbrechen, die er verarbeitet, klicken Sie auf seine Prozess-ID in der ersten Spalte. Alle vom Client gehaltenen Sperren werden freigegeben, wodurch die Dateien für die Verwendung durch andere freigegeben werden. Sie sollten nur die Verbindungen von Clients beenden, die wirklich abgestürzt sind - das Beenden der Sitzung für einen aktiven Client kann dazu führen, dass alle geöffneten Dateien beschädigt werden. Es ist jedoch im Allgemeinen sicher, eine Verbindung zu einem Windows-Client ohne geöffnete Dateien zu beenden, da sie vom Client sofort und transparent wiederhergestellt wird, wenn eine Datei auf der Freigabe das nächste Mal geöffnet wird.

Sicherheitsoptionen bearbeiten

Nachdem ein Drucker oder eine Dateifreigabe erstellt wurde, können Sie verschiedene sicherheitsbezogene Optionen bearbeiten, die steuern, wer darauf zugreifen kann und von welchen Hosts er eine Verbindung herstellen kann. Dies kann nützlich sein, wenn einige Freigaben Dateien enthalten, auf die nur bestimmte Personen Zugriff haben sollten, oder wenn Ihr Samba-Server nur von Clients in Ihrem internen Netzwerk verwendet werden soll.

Gehen Sie wie folgt vor, um die Freigabesicherheitsoptionen zu bearbeiten:

  1. Klicken Sie auf der Hauptseite des Moduls auf den Namen der Freigabe in der Tabelle, um das Bearbeitungsformular aufzurufen, und dann auf das Symbol *Sicherheit und Zugriffskontrolle*.
  2. Wie im Abschnitt Hinzufügen einer neuen Dateifreigabe erläutert Abschnitt Beschreibbar? und Gastzugang? Felder bestimmen, ob auf die Freigabe geschrieben werden kann und ob eine Authentifizierung erforderlich ist. Der Guest-Unix-Benutzer Das Feld legt fest, dass Dateien von Gastclients gelesen und geschrieben werden. Ändern Sie sie hier erneut, wenn Sie möchten.
  3. Um nur bestimmten Hosts Zugriff auf diese Freigabe zu gewähren, wählen Sie das zweite Optionsfeld in Zuzulassende Hosts aus Feld und geben Sie eine Liste mit Hostnamen und IP-Adressen in das angrenzende Textfeld ein. Partielle IPs wie 192.168.1. oder Netzwerkadressen wie 192.168.1.0/255.255.255.0 können verwendet werden, um ein ganzes Netzwerk zuzulassen. Wenn Ihr System ein NIS-Client ist, können Sie einen Netzgruppennamen eingeben, dem ein @_ vorangestellt ist (wie _@servers ), um alle Mitglieder der Gruppe zuzulassen. Wenn Alle ausgewählt ist, wird allen Hosts Zugriff gewährt, es sei denn, Sie füllen das nächste Feld aus. Unabhängig davon, was Sie eingeben, sind Verbindungen vom lokalen Host (127.0.0.1) immer erlaubt, es sei denn, er ist ausdrücklich im Feld *Zu verweigernde Hosts* aufgeführt.
  4. Um bestimmten Hosts den Zugriff auf diese Freigabe zu verweigern, füllen Sie das Feld Zu verweigernde Hosts aus Feld mit einer ähnlichen Liste von Hostnamen, IP-Adressen, Netzwerken oder Netzgruppen. Wenn beide Felder ausgefüllt sind, Zuzulassende Hosts hat Vorrang. Wenn Keine ausgewählt ist, werden alle Hosts zugelassen.
  5. Um nur bestimmten Benutzern den Zugriff auf diese Freigabe zu erlauben, füllen Sie das Feld Gültige Benutzer aus Feld mit einer durch Leerzeichen getrennten Liste von Benutzernamen. Sie können auch die Gültige Gruppen ausfüllen Feld mit einer Liste von Gruppen, deren primären und sekundären Mitgliedern Zugriff gewährt wird. Nur wenn beide Listen leer sind, werden alle Benutzer zugelassen.
  6. Um bestimmte Benutzer und Mitglieder von Gruppen abzulehnen, füllen Sie alternativ das Feld Ungültige Benutzer aus und Ungültige Gruppen Felder. Wenn ein Benutzer sowohl in der gültigen als auch in der ungültigen Liste erscheint, wird ihm der Zugriff verweigert.
  7. Um einige Benutzer auf schreibgeschützten Zugriff auf diese Freigabe zu beschränken, geben Sie eine Liste mit Benutzernamen in das Feld Nur lesende Benutzer ein Feld. Sie können auch eine Liste von Unix-Gruppen in die Nur-Lese-Gruppen eingeben ihre primären Mitglieder einzuschränken. Alle anderen haben vollen Lese-/Schreibzugriff, vorausgesetzt, dass die Freigabe tatsächlich beschreibbar ist und dass die Freigabe Lesen/Schreiben ist Felder wurden nicht ausgefüllt.
  8. Um nur bestimmten Benutzern die Berechtigung zum Schreiben auf die Freigabe zu erteilen und allen anderen nur Lesezugriff zu gewähren, geben Sie eine Liste mit Benutzernamen in die Lese-/Schreibbenutzer ein Feld. Wie üblich die Lese-/Schreibgruppen Feld kann verwendet werden, um eine Liste von Gruppen einzugeben, deren primäre Mitglieder ebenfalls schreiben dürfen. Natürlich gelten weiterhin für alle Benutzer normale Unix-Dateiberechtigungen, die das Schreiben in Dateien oder Verzeichnisse verhindern können. Wenn ein Benutzer sowohl im Schreibgeschützt erscheint und Lesen/Schreiben Listen, die er schreiben darf. Die Felder in diesem und dem vorherigen Schritt haben keine Auswirkungen auf Druckerfreigaben. Stattdessen können alle berechtigten Benutzer drucken.
  9. Wenn Sie mit der Bearbeitung der Dateisicherheitsoptionen fertig sind, klicken Sie auf Speichern Schaltfläche unten auf der Seite, um die neuen Einstellungen zu aktivieren.

Sie können nicht nur Sicherheitsoptionen für eine einzelne Freigabe festlegen, sondern auch Standardeinstellungen für alle Freigaben festlegen, die gelten, sofern sie nicht in einzelnen Freigaben außer Kraft gesetzt werden. Klicken Sie dazu auf die Dateifreigabe-Standardeinstellungen Symbol auf der Hauptseite des Moduls anstelle des Namens einer Freigabe und dann auf Sicherheit und Zugriffskontrolle . Einige Einstellungen wie die Liste der zuzulassenden oder abzulehnenden Hosts sollten wirklich global festgelegt werden, da Sie wahrscheinlich den Zugriff auf Ihren gesamten Server auf nur ein vertrauenswürdiges Netzwerk beschränken möchten. Siehe Freigabe-Standardeinstellungen bearbeiten Abschnitt später in diesem Kapitel für weitere Informationen darüber, wie Standardeinstellungen funktionieren.

Sicherheitsfreigabe bearbeiten

Dateiberechtigungseinstellungen bearbeiten

Dateifreigaben haben mehrere Einstellungen in Bezug auf die Unix-Berechtigungen und den Besitz von darin enthaltenen Dateien, die global oder pro Freigabe festgelegt werden können. Da Windows-Clients und das SMB-Protokoll kein Berechtigungskonzept haben, ist es hilfreich, eine Möglichkeit zu haben, die Standardwerte für neue Dateien und Verzeichnisse pro Freigabe festzulegen. Die Schritte dazu sind :

  1. Klicken Sie auf der Hauptseite des Moduls auf den Namen der Freigabe, für die Sie Berechtigungen festlegen möchten, und dann auf die Dateiberechtigungen Symbol auf seiner Bearbeitungsseite.
  2. Im Modus Neue Unix-Datei Geben Sie im Feld oktale Berechtigungen (wie vom Befehl chmod verwendet) ein, die neu erstellten Dateien zugewiesen werden sollen. Beispiel:Modus 600 würde dem Eigentümer das Lesen und Schreiben erlauben, aber jedem anderen den Zugriff vollständig verweigern.
  3. Im Modus Neues Unix-Verzeichnis geben Sie die oktalen Berechtigungen für neu erstellte Verzeichnisse ein. Beispiel:755 würde das Auflisten und Lesen durch alle erlauben, aber nur dem Eigentümer erlauben, Dateien im Verzeichnis zu erstellen.
  4. Damit einige Verzeichnisse für SMB-Clients immer leer erscheinen, geben Sie eine durch Kommas getrennte Liste vollständiger Pfade in das Feld *Nicht aufzulistende Verzeichnisse* ein. Beispielsweise könnten Sie /proc,/dev eingeben um den Inhalt dieser beiden Verzeichnisse zu verbergen, die für Windows-Clients im Allgemeinen nutzlos sind.
  5. Um alle Clients zu zwingen, als ein bestimmter Unix-Benutzer auf Dateien zuzugreifen (anstelle des Benutzers, als der sie sich angemeldet haben), füllen Sie das Feld *Unix-Benutzer erzwingen* aus. Dies kann für eine Freigabe sehr nützlich sein, in der verschiedene Personen die Dokumente der anderen bearbeiten, da es die Unix-Berechtigungsprobleme vermeidet, die auftreten können, wenn Dateien tatsächlich ihren Erstellern gehören. Standardmäßig ist die Gruppe, als die auf Dateien zugegriffen wird, die primäre Gruppe des angegebenen Benutzers. Um dies zu ändern, füllen Sie die Gruppe Force Unix aus Feld ebenso.
  6. Da Windows-SMB-Clients symbolische Unix-Links nicht unterstützen, liest oder schreibt Samba immer die verknüpfte Datei, wenn ein Client versucht, einen Link zu lesen oder zu schreiben. Leider stellt dies ein potenzielles Sicherheitsrisiko dar, da ein Symlink erstellt werden könnte, der auf eine normalerweise unzugängliche Datei außerhalb des freigegebenen Verzeichnisses verweist. Um dies zu verhindern, ändern Sie das Feld *Symlinks außerhalb der Freigabe zulassen?* in Nein .
  7. Auf Unix-Dateisystemen können Dateien, die für einen Benutzer schreibgeschützt sind, immer noch gelöscht werden, wenn das Verzeichnis beschreibbar ist. Auf normalen Windows-Dateisystemen ist dies jedoch nicht der Fall, weshalb Samba dies verhindert. Um dies zu ändern und Unix-Dateisystem-Semantik anwenden zu lassen, ändern Sie das Feld *Kann schreibgeschützte Dateien löschen?* auf Ja .
  8. Klicken Sie auf Speichern unten auf der Seite, um die neuen Dateisicherheitsoptionen zu aktivieren.

Als Bearbeiten der Freigabe-Standardeinstellungen Abschnitt ausführlicher erläutert wird, können Sie die Dateiberechtigungseinstellungen für alle Freigaben bearbeiten, indem Sie auf Dateifreigabe-Standardeinstellungen klicken Symbol auf der Hauptseite, gefolgt von Dateiberechtigungen . Diese gelten, sofern sie nicht durch die obigen Anweisungen für eine Aktie außer Kraft gesetzt werden.

Dateiberechtigungen bearbeiten

Dateibenennungsoptionen bearbeiten

Samba hat mehrere Optionen, die steuern, wie Unix-Dateinamen in für Windows-Systeme geeignete Namen umgewandelt werden. Heutzutage werden die meisten von ihnen nicht mehr benötigt, da Windows-Versionen 95 und höher lange Dateinamen ordnungsgemäß unterstützen konnten. Nur Windows 3.1 und DOS blieben beim alten 8.3-Dateinamenformat hängen und werden kaum noch verwendet.

Gehen Sie folgendermaßen vor, um die Benennungsoptionen für eine Freigabe zu bearbeiten, die für moderne Clients relevant sind:

  1. Klicken Sie auf der Hauptseite des Moduls auf den Namen der Freigabe und dann auf Dateibenennung Symbol.
  2. Wenn die Groß-/Kleinschreibung beachtet wird? Feld ist auf Nein gesetzt , ignoriert der Server die Groß-/Kleinschreibung, wenn von Clients angeforderte Dateien geöffnet werden. Auf diese Weise funktionieren Windows-Dateisysteme und daher ist dies auch das Standardverhalten für Samba. Es verbraucht jedoch mehr CPU-Zeit und E/A-Bandbreite, da Verzeichnisse gescannt werden müssen, da alle Unix-Dateisysteme zwischen Groß- und Kleinschreibung unterscheiden. Aus diesem Grund sollten Sie Ja auswählen stattdessen, wenn alle Ihre Clients Linux-Systeme sind, die normal erwarten, dass die Unix-Fallregel angewendet wird.
  3. Normalerweise erstellt Samba Dateien mit genau der Groß- und Kleinschreibung, die von Clients angegeben wird. Um dies zu ändern und stattdessen die Verwendung von Groß- oder Kleinschreibung zu erzwingen, ändern Sie die Option Groß-/Kleinschreibung beibehalten? Feld auf Nein und wählen Sie eine der Optionen unter Standardfall? aus Feld. Dies kann nützlich sein, wenn Windows-Clients viele Dateien in Großbuchstaben erstellen, wenn Sie es vorziehen, dem normalen Unix-Standard für Kleinbuchstaben zu folgen.
  4. Auf Windows-Dateisystemen hat jede Datei ein verborgenes Attribut, das festlegt, ob sie normalerweise für Programme sichtbar ist oder nicht. Auf Unix-Systemen existiert kein solches Attribut - stattdessen werden Dateien, deren Namen mit einem Punkt beginnen, von ls und anderen Befehlen versteckt. Aus diesem Grund setzt Samba das Attribut hidden auf Punktdateien, wenn Punktdateien ausblenden? Feld auf Ja gesetzt ist , wie es standardmäßig ist. Die Alternative besteht darin, das World-Execution-Bit der Unix-Dateiberechtigungen als verstecktes Flag zu verwenden, da Ausführungsberechtigungen sonst nicht von Samba verwendet werden. Um dieses Verhalten zu aktivieren, ändern Sie das Save DOS Hidden Flag? Feld auf Ja . Da dies die Berechtigungen für Unix-Programme, die auf Dateien in der Freigabe zugreifen, durcheinander bringt, sollte es nur verwendet werden, wenn auf das freigegebene Verzeichnis nur von SMB-Clients zugegriffen wird.
  5. Windows-Dateien haben zwei weitere Attribute - das Archiv-Flag, das anzeigt, dass eine Datei gesichert wurde, und das System-Flag, das eine normalerweise nicht angreifbare Systemdatei kennzeichnet. Samba kann so konfiguriert werden, dass es diese Attribute in den User-Execute- und Group-Execute-Bits von Dateien speichert, wenn das Flag DOS-Archiv speichern? gesetzt ist und DOS-Systemflag speichern? Felder sind auf Ja gesetzt bzw. Wenn Ihre Windows-Clients diese Informationen nicht benötigen oder wenn Sie feststellen, dass Berechtigungen für ausführbare Unix-Dateien und -Skripts durcheinander gebracht werden, setzen Sie beide auf Nein stattdessen.
  6. Um die neuen Dateibenennungseinstellungen zu aktivieren, klicken Sie auf Speichern Schaltfläche unten auf der Seite.

Auch diese Optionen können für alle Freigaben festgelegt werden, indem Sie auf die Standardeinstellungen für Dateifreigaben klicken Symbol auf der Hauptseite, gefolgt von *Dateibenennung*.

Dateinamen bearbeiten

Andere Dateifreigabeoptionen bearbeiten

Es gibt einige weitere Dateifreigabeoptionen im Zusammenhang mit dem Sperren und automatisch ausgeführten Befehlen, die Sie auch mit diesem Modul festlegen können. Diejenigen, die zum Sperren verwendet werden, steuern das Verhalten von Samba, wenn ein Windows-Client versucht, eine Datei zu sperren, um exklusiven Zugriff zu erhalten, sodass er Daten in der Datei zwischenspeichern kann, ohne den Server für jeden Lese- oder Schreibvorgang kontaktieren zu müssen. Standardmäßig ist das Sperren vollständig aktiviert und genauso implementiert wie auf Windows-Servern, sodass diese Einstellungen im Allgemeinen nicht geändert werden müssen.

Samba can also be configured to run shell commands when a client connects or disconnects, either as root or as the connecting Unix user. This can be useful if you want to move newly added files to some other directory or perform some kind of processing on them.

To edit the module's other file sharing options, follow these steps :

  1. Click on the name of the share to edit on the main page, and then on the Miscellaneous Options icon on the share editing page that appears.
  2. If this share is exclusively for read-only use (for example if you are sharing some kind of read-only media like a CD), then the Fake oplocks? field can be safely changed to Yes to boost performance. This tells Samba to simply grant all lock requests by clients and not to bother actually keeping track of who has locked what, which can boost performance. None of the other locking fields should be touched unless you really know what you are doing, as the defaults will work fine and any other settings may lead to data corruption if multiple clients try to access the same files.
  3. To limit the number of clients that can be connected to this share at any one time, select the second radio button in the Max connections field and enter a number into the adjacent text box. This can be useful if you want to limit the load on your system. If Unlimited is selected, no maximum will be placed on the number of concurrent connections.
  4. The fields Command to run on connect and *Command to run on disconnect* allow you to enter shell commands that will be run by Samba as the authenticated user at connection and disconnection time. They will always be run in the share directory, and special % codes like %U for the connecting user or %S for the server name can be used in the command.
  5. Similarly, the Command to run on connect as root and *Command to run on disconnect as root* fields can be used to enter shell commands that will always be run as the Unix root user. However, they will be run in root's home directory instead.
  6. Klicken Sie auf Speichern button to activate the new locking and command settings.

One thing to remember about locking and Samba is that locks taken out by SMB clients will not generally effect or be detectable by Unix programs or NFS clients. This means that data corruption can still happen if Unix and Windows programs open the same file, or if the same NFS exported directory is shared by two different Samba servers.

Samba - Miscelleanous File Defaults

Editing printer share options

Once a printer share has been created, there are several options that you can set for it. Most of them relate to the commands that Samba will run to print a new job, list the queue or cancel a job. By default, appropriate commands for the print system in use (explained in the Configuring printers section) will be used - however, there are times that you will want to specify additional parameters or even use a completely different command.

To edit printer options for a share, follow these instructions :

  1. On the module's main page, click on the name in the table of the printer share that you want to edit. On the form that appears, hit the Printer Options icon at the bottom of the page.
  2. To prevent clients using up all the disk space in the printer's spool directory with large jobs, change the *Minimum free space* field. You must enter a number of kilobytes that will always be left free on the filesystem.
  3. To change the command that Samba will run to print a submitted file, edit the Print command Feld. The special codes %f (for the temporary file to print) and %p (for the printer name) can and should be used in the command, so that you can enter for example something like lpr -P%p %f ; rm %f . Your command must always delete the temporary file (as the example does), as the server will not do this for you. All the usual shell meta-characters like ;, &and> can be used, which allows you to enter quite complex series of commands. Whatever command you enter will always be run as the Unix user connected to the printer share.
  4. To edit the command that Samba uses to list jobs waiting to be printed on some printer, select the second radio button in the Display queue command field and fill in its text box. Whatever you enter must produce output in the format generated by the standard BSD lpr command so that Samba can parse. If the special code %p appears in the command, it will be replaced with the name of the printer.
  5. Similarly, you can change the commands that Samba runs to delete, pause and un-pause a print job by editing the *Delete job command*, Pause job command and Unresume job command fields respectively. All can and should use the codes %p for the printer name, and %j for the job ID. For most print systems, there are no defaults for the pause and un-pause commands as those features are not supported. Generally you will not need to change these fields.
  6. As the Adding a new printer share section explains, the Printer driver field can be used to enter the model of the attached printer (as recognized by Windows) so that clients can automatically select the right driver.
  7. When you are done with this page, hit the Save button to update the Samba configuration file and thus activate the new settings.

You can also edit these settings for all shares by clicking on the Printer Share Defaults icon on the module's main page and then on Printer Options . In fact, all of the command options make much more sense to edit globally as the same commands are likely to be needed for all printers.

Editing share defaults

As the previous few sections in this chapter have mentioned, the Samba configuration allows you to define defaults that apply to all shares unless specifically overridden. This can be done by clicking on either the File Share Defaults or Printer Share Defaults icon on the main page, editing the contents of the form that appears and hitting Save . However, most of the options in this form are not particularly useful to set globally, except maybe Available? and Browseable? .

More usefully, you can click on one of the icons on the defaults page and change settings that will apply to all file or printer shares. In the case of the Security and Access Control icon (which appears on both pages), and global defaults that you set will apply to both file and printer shares, as Samba does not differentiate between them.

Any option that is set globally will appear as the default on per-share forms. For example, if you fill in the Delete job command field under Printer Options on the Printer Share Defaults page and then went to the same page for a specific printer, the same value would appear. Even though the command does not actually appear in the configuration file for the printer, Webmin still displays it because as the default it will be used. Of course, if you enter a different command for the share, it will override the global setting and thus be used and display instead. This behavior may be a little confusing, as it is not the way that other Webmin modules usually work.

Configuring networking

This module can be used to set various Samba options that control how the entire server appears to and behaves for Windows clients. You can change the workgroup (under which the system is listed in the network neighborhood display), the server's name and any aliases, and the description that appears next to the name. Options related to the file sharing protocol and authentication method used can also be edited, in order to support old clients.

Windows Networking options

It is even possible to set up your system as a WINS server or client, a protocol that some Windows clients use to find IP addresses for SMB server names if DNS is not available. The biggest difference between WINS and DNS is that clients can register their own names and IP addresses with a WINS server, rather than having it done by an administrator. It is most useful on small file-sharing networks that do not have a DNS server.

To edit these windows networking options, the instructions to follow are :

  1. On the module's main page, click on the Windows Networking icon in the Global Configuration section to bring up the form shown in the screenshot below.
  2. To set a workgroup for your server, select the second radio button in the Workgroup field and enter a short name into the text box next to it. If your network already has a few SMB servers that are members of a workgroup, this server should be made a member too.
  3. If your network already has a WINS protocol server, select Use server in the WINS mode field and enter its IP address. If not, you should choose Be WINS server so that Windows clients can use your system to lookup IP addresses for SMB server names. More recent versions of Windows (and Linux clients) do not need to use WINS, as they can look up server names in the DNS - assuming your network has a DNS server that has entries for all your hosts.
  4. To set a description for your system, fill in the Server description field with something like Corporate file server .
  5. Normally, Samba will use the first part of your system's DNS name as the SMB server name. To change this, enter something else in the Server name Feld. Clients will be able to refer to this server by whatever name you specify.
  6. To define alternate names that clients can use to refer to your server, fill in the Server aliases field with a space-separate list of names.
  7. If you want your system to be the master browser for a network (the server that maintains lists of other SMB servers and clients on the network, as seen in Window's network neighborhood), change the Master browser? Feld auf Ja . If you are running multiple Samba servers on the same subnet, this option should be set for only one. If there are other Windows or Samba servers on the network that want to be master browsers, the one with the highest operating system level will win the 'election' that decides who gets the job. You can increase your system's change of winning by increasing the Master browser priority field - the default of 20 will win against Windows 95 systems, but you would need to enter 65 to beat Windows NT servers.
  8. To have your Samba server contact another SMB server to validate passwords instead of checking its own user list, select *Password server* from the Security menu and enter the other server's hostname or IP address in the Password server Feld. Otherwise, leave the field set to Default or User level . Share level security is rarely used anymore with modern clients, and Domain security is too advanced to cover in this chapter.
  9. Normally, an SMB server broadcasts information about itself to other servers on the network so that it can be included in browse lists. However, if your network spans multiple subnets then broadcasts from one system may not reach others. To get around this problem, the Remote announce to table can be used to specify the addresses of browser master servers to which this server's IP address and workgroup should be sent. To configure remote announcements on this page, first select the From list option above the table. Then in the IP address field of each row enter the hostname or IP address of a server to announce to, and in the As workgroup field the name of the workgroup that your server should appear under. If the second field is left empty, the servers real workgroup (set in step 2) will be used. To enter more than two remote servers you will need to save and re-open this page so that more empty rows appear in the table.
  10. Klicken Sie abschließend auf Speichern button to activate the new networking settings.
Unix Networking options

Samba also has numerous global options related to networking that control such things as the IP address to listen on, whether to send keep-alive packets and how long clients can be idle for before they are disconnected. These can be used to tune your server's performance, or limit access to only clients on a local network. To edit them, follow these steps :

  1. Click on the Unix Networking Symbol auf der Hauptseite des Moduls.
  2. To have Samba disconnect clients that have been inactive for too long and do not have any files open, select the second radio button in the Idle time before disconnect field and enter a number of minutes into the adjacent text box. If Never is selected instead, clients will never be automatically cut off. Because Samba starts one server sub-process per client, this feature is useful for cutting down the amount of memory that they use up. And Windows clients will automatically re-connect if disconnected, so there is no down side to using it.
  3. To have Samba send packets to detect if clients have crashed without properly disconnect, select the Send every option in the Keepalive packets field and enter the number of seconds (such as 60) that a packet should be sent. Because clients can hold locks on files, a dead client may end up locking a file that other people need access to, even though it is clearly not using it. The same thing can be achieved by selecting the SO_KEEPALIVE checkbox in the Socket options Feld. This tells the operating system kernel to do basically the same thing, and so should be used in preference. The only problem is that you cannot specify the keep-alive packet interval.
  4. To restrict Samba to listening for connections on a single one of your system's IP addresses, fill in the Listen on address Feld. On a machine with one interface connected to an internal network and one connected to the Internet, this feature can be used to prevent outsiders connecting to your Samba server.
  5. Klicken Sie auf Speichern button at the bottom of the page to activate the new network settings.

As you will see when you look at the actual form, there are many more fields on it than those documented above. However, the rest have extremely specialized uses and thus do not need to be touched by the average administrator.

Configuring authentication

Authentication

The SMB protocol allows users to change their passwords for a server from a client system. For a Samba server, this causes the encrypted passwords file to be updated, assuming one is in use (as is usually the case). You can also configure the server to change the user's Unix password as well, which makes sense if they are being kept synchronized.

Another authentication-related feature supported by Webmin is username mapping. This allows you to map fake client login names to real Unix usernames, and can be useful if users prefer to use their full names to login (like Jamie Cameron instead of jcameron ) or if you have a client that is regularly moved between two different networks, each of which has different SMB accounts.

To set these global authentication options using this module, the steps to follow are :

  1. On the module's main page, click on the Authentication Symbol.
  2. As explained in the Managing Samba users section, the *Use encrypted passwords?* field determines if Samba uses its own separate password file or the standard Unix user database. Because all recent versions of Windows use a password encryption format that is incompatible with the Unix format, this field should generally be set to Yes .
  3. To allow logins by users who have no password set, select Yes for the Allow null passwords? Feld.
  4. The Password program field sets the program that Samba will use to change a user's Unix password if synchronization is enabled. If Default is selected /bin/passwd will be used, which is correct for most Unix systems. You can enter a different command by selecting the second radio button and fill in the text box with something like _/usr/bin/yppasswd %u_. The %u code is replaced with the name of the user whose password is being changed, and is required because the command is run as root.
  5. To have same change a user's Unix password when his SMB password is changed over the network, set the *Change Unix password as well?* field to Yes . Synchronization in the other direction is unaffected though - see the Managing Samba users section for more details on how that works.
  6. To define 'fake' SMB accounts, select Listed below in the Username mapping Feld. In the table below it, each row specifies a mapping - the first field must contain a valid Unix username, and the second an SMB login name of your choice. Clients logging in with one of these made-up account names must of course provide the correct password for the associated Unix user.
  7. Klicken Sie auf Speichern button at the bottom of the page to activate your new authentication settings.

Configuring printers

If you are sharing printers from your server, you will probably need to adjust the global printing options. These determine the print system commands that Samba will use to submit, list and delete jobs, the file it gets the list of printers from, and other related settings. To edit them, the steps to follow are :

  1. Click on the Windows To Unix Printing icon on the module's main page to bring up the printer options form.
  2. From the Unix print style menu select the type of print system in use on your box. Unfortunately, practically every different flavor of Unix has its own set of programs and configuration files for handling printers and print drivers, each of which must be treated differently by Samba. The options that you may want to select from are :
    • BSD The traditional Unix print software, found on FreeBSD, NetBSD and older Linux distributions.
    • SYSV The print system used on Solaris, UnixWare and a few other versions of Unix.
    • HPUX The print system shipped with HP/UX.
    • AIX The print software that comes with AIX, IBM's version of Unix.
    • CUPS The superior Common Unix Print System, which is included with many new Linux distributions.
    • LPRNG An improved version of the old BSD print system, used on all Linux systems that do not run CUPS. Most packages of Samba will have this option set correctly in the default configuration file. The PrinterAdministration page explains in more detail what the differences between the various print systems are, and how to select the right one for your operating system.
  3. Normally, Samba will find all the printers on your system and make them visible to clients when the special printers share exists. To disable this, change the Show all printers? Feld auf Nein stattdessen. The printers will still be accessible using an explicit \\_servername_\_printername_ path though.
  4. When the Printcap file field is set to Default , Samba will get the list of printers available on your system from the standard /etc/printcap file. This is fine if you want them to all show up, but sometimes you want to hide some printers from users. To do this, create a fake printers file that looks {| border="1" |- like :printer1||Description for printer 1:printer2||Description |} of second printer:And set this field to the path to this file. Only the printers listed in it will be available automatically when a printers share exists.
  5. Samba caches the output from whatever command is used to list waiting print jobs (such as lpq) in order to reduce the frequency with which it is run. By default this cache time is 10 seconds, but you can increase or decrease it using the *Printer status cache time* field. If your lpq command is very slow you may want to increase it.
  6. Klicken Sie auf Speichern button to activate your new printing settings.


Modulzugriffskontrolle

As WebminUsers explains, once a Webmin user has been granted access to a module he can be further restricted to only a subset of its functions. For the Samba module, you can allow a user to edit only certain types of settings in certain shares while denying him the ability to create new shares or edit global options. This can be useful if you want to let someone edit the settings that apply to the sharing of only his own directory, while protecting the rest of the Samba server's configuration.

I would advise against granting even limited access to this module to un-trusted users though, as it has many features that could be used by a malicious to gain root access to your system. For example, someone could allow guest access to a share with root permissions, allowing the remote modification of any file. Or they could set the command run as root at client connection time to something that changes the root password.

Instead, these access control features are should only be used to limit the changes that an in-experienced but still trusted user can make. To restrict such a user to only editing a few shares, the steps to follow are :

  1. In the Webmin Users module, create a user with access to the module, or modify an existing user to give him access.
  2. Click on Samba Windows File Sharing next to the name of the user to bring up the module access control form.
  3. Ändern Sie die Modulkonfiguration bearbeiten? Feld auf Nein .
  4. Set all the fields from *Can apply changes? *down to *Can maintain auto UNIX to SAMBA users sync?* to No as well, as they control access to global settings that the user should not touch.
  5. To hide shares that he cannot access from the user, change the Hide inaccessible objects? Feld auf Ja . Leaving it set to No lets him see other shares, but if he tries to click on any of them an error message will appear.
  6. In the Access file shares field, de-select create but leave read and write ausgewählt. Do the same for the *Access print shares* field. This does not mean that he can edit all shares - later fields control exactly which ones he can configure.
  7. Change the Enable per-file_share acls? and *Enable per-print-share acls?* fields to Yes , so that the options set in the next step are used.
  8. In the Per-share ACLs table, select n/a under *Access share* and Connections for all the shares that he should not be allowed to configure. You should definitely do this for the global share as well, as it sets the defaults for all others. For the shares that you do want the user to manage, select read write in the Access share Säule. To allow the user to kill clients connected to this share, select kill in the Connections column - or to let him only see connected clients, choose view stattdessen. The former option is not a good idea security-wise though, as it allows the user to terminate any process on your system. The radio buttons in the security , permissions , file naming and *miscellaneous or printer* columns control which of the sub-icons on the share editing form the user has access to. For each you can choose either edit to allow editing, view to only let him look at the settings or n/a to deny access altogether.
  9. Klicken Sie auf Speichern button at the bottom of the page to activate the new access control settings.

Configuring the Samba Windows File Sharing module

The module assumes that you have installed the Samba package available for your operating system or Linux distribution, or have compiled Samba from source code if no such package is available. If this is not the case (for example if you have compiled the latest version instead of using a package), the paths that it uses for the Samba programs and configuration files will be wrong. This will cause the module's main page to incorrectly display an error message about Samba not being installed.

Fortunately, these paths can be easily changed by clicking on the standard Module Config link in the top-left corner of the main page. On the form that appears if you follow this link are fields that control the module's user interface (under *Configurable options*) as well as the fields for configuration file and program paths (under System configuration ). The first group of settings can be safely changed at any time, but those that set paths do not generally need to be adjusted as the defaults are usually correct.

Inhalt

Edit Config File

The samba configuration file can be manually edited as well:

Samba - Edit Config File

Accessing SWAT from Webmin

Hinweis: Samba 4 does not contain SWAT anymore.

SWAT (which stands for Samba Web Administration Tool) is a program similar to Webmin's Samba module, but included as standard with Samba itself. It provides a web-based administration interface to the configuration file that allows you to create and edit shares and global settings. SWAT is usually run from a super-server like inetd or xinetd, which makes it appear as a web server, usually on port 901 . Most Samba packages for Linux include the program and an xinetd service for it, but have it disabled by default.

You can also access SWAT through this Webmin module, instead of needing to set it up to be run from inetd or xinetd. Unfortunately, this will not work if Samba has been configured to only allow connections from some IP addresses (using the Hosts to allow field) on the global Security and Access Control Seite. Because SWAT also uses Samba's configuration files, any IP restrictions that apply globally will apply to it as well. When it is run from Webmin, SWAT is unable to determine the connecting IP address and fails if any IP restrictions are in force.

Assuming that this is not the case on your system, you can use it by following these steps :

  1. On the module's main page, click on the SWAT Symbol. If this is the first time you have done so, the SWAT Login form will appear.
  2. If you do get the login form, enter root in the Username field and the root user's password in the Password Feld. Because it can be used to totally re-configure your Samba server, SWAT requires users to authenticate first. Webmin will remember the login and password that you enter so that the login form will be bypassed in future.
  3. After you have logged in the SWAT main menu will appear. Along the top are icons for various parts of the Samba configuration, which when clicked on bring up forms for editing settings. Some things that can be configured in Webmin cannot be in SWAT, and vice versa - so you may find it superior to the Webmin interface for some tasks.
  4. To return to the module's main page, click on the *Return to share list* link at the bottom of any page. To have Webmin forget your SWAT password so that you can login again, hit the *Logout of SWAT* link in the bottom-right corner.

Be aware that when you login to SWAT through this module, the username and password that you enter are stored un-encrypted in the file /etc/webmin/samba/swat which is readable only by root. If this bothers you for security reasons, either do not use this feature of the module, or remember to click the Logout of SWAT link after you are done using it so that the window of exposure is limited.


Webmin
  1. Open-Source-Dateifreigabe mit diesem Linux-Tool

  2. Windows- und Linux-Interoperabilität:Ein Blick auf Samba

  3. So mounten Sie Windows- oder Samba-Freigaben dauerhaft

  4. So bearbeiten Sie Ihre Hosts-Datei in Windows 10

  5. Welches Dateisystem wähle ich für die gemeinsame Nutzung von Dateien zwischen Windows und Ubuntu?

So richten Sie den Samba-Dateifreigabeserver unter Ubuntu ein

So konvertieren Sie eine Windows-Datei in eine UNIX-Datei

Samba-Server auf CentOS 8/RHEL 8 für die Dateifreigabe einrichten

Installieren und konfigurieren Sie den Samba-Server unter Ubuntu für die Dateifreigabe

So installieren und konfigurieren Sie die Samba-Dateifreigabe unter Ubuntu 20.04

So installieren Sie den Samba-Dateifreigabeserver auf einem Linux-System