L i n u x - S c h u l e
|
|
Homepage | Server | Linux-Clients | Win9x-Clients | WinNT-Clients | Win3.11-Clients | Dos-Clients | Utilities |
Die Konfigurationsdatei /etc/samba/smb.conf
Erweiterungen zur Konfigurationsdatei"
Ein Samba-Server stellt unter Linux Datei- und Druckdienste bereit, die von Windows-Clients aus genutzt werden können. Grundlage dieser Dienste ist das SMB (Server Message Blocks) Protokoll. Dieses Protokoll muss auf einem Transportprotokoll aufsetzen. Beim c't-Server ist dies das TCP/IP- Protokoll (zu seiner Einrichtung auf den Clients gibt es Hinweise auf der entsprechenden Seite des Client-Betriebssystems).
Der Server wird mit einer lauffähigen Konfiguration ausgeliefert, die auch als Anmeldeserver genutzt werden kann. Zur Änderung der Konfiguration sind zwei Wege möglich:
- über die Änderung der Konfigurationsdatei /etc/samba/smb.conf
- über das grafische Administrationstool SWAT.
SWAT wird über einen Webbrowser mit http://arktur:901 aufgerufen und bietet neben einer gut gestalteten grafischen Oberfläche auch direkten Zugriff auf entsprechenden Hilfeseiten, was die Arbeit sehr erleichtert. Als Benutzername zur Authentifizierung muß root und das entsprechende Passwort eingegeben werden.Das Sicherheitskonzept
Es sind verschiedene Sicherheitslevel möglich, die in der Konfigurationsdatei gesetzt werden können:
- security = share
Hierbei müssen die User sich nicht am Server anmelden. Diese Einstellung zieht weitere Einstellungen bei den Freigaben (shares) nach sich und sollte vermieden werden.- security = user
Hier müssen sich die User mit einer gültigen username/password Kombination anmelden. Diese Art der Anmeldung ist zu bevorzugen, wenn die User private Verzeichnisse auf dem Server zugewiesen bekommen sollen (wichtig für Emails). Das ist die Grundeinstellung.- security = server
Hier wird die gesamte Passwortverwaltung auf einem anderen Server abgewickelt (ich weiß, dass es mit einem NT-Server geht).Der Aufbau der Konfigurationsdatei /etc/samba/smb.conf
[global] Das ist die Bezeichnung der Section. workgroup = bfshr Die Workgroup ist das, was beim Windows "Domain" heißt. Die Vorgabeeinstellung ist "WORKGROUP". server string = %h mit Samba %v Das wird als Kommentar in der Netzwerkumgebung gezeigt. %h wird durch den Servernamen und %v durch die Samba-Versionsnummer ersetzt. os level = 34 Damit gewinnt der Samba-Server die Wahl zum Master-Browser. Hat man noch einen NT-Server im Netz, sollte man das OS-Level auf 2 heruntersetzen. security = user Alle User brauchen ein Passwort (siehe oben). domain master = yes Samba will Master-Browser werden. domain logons = yes Samba arbeitet als Domain-Kontroller. Er nimmt Einlogganforderungen von Clients entgegen. logon script = logon.bat Diese Batchdatei (sie liegt im Share "Netlogon") wird beim Einloggen abgearbeitet. case sensitive = no Wird zwischen Groß- und Kleinschreibung unterschieden? password level = 8 Werden unterschiedliche Kombinationen von Groß- und Kleinschreibung beim Passwort probiert? (Manche Clients übermitteln alle Passworte in Großschreibung, egal was man eingibt; z.B. Win3.11) mangle case = no Werden lange Dateinamen zu kurzen "umgebaut"? preserve case = yes Soll Groß- oder Kleinschreibung erhalten bleiben? short preserve case = yes Wird Kleinschreibung erhalten? mangled names = no Werden Dateinamen, die nicht der DOS-Konvention (drei Zeichen als Extension) entsprechen, angezeigt? map archive = no Werden Dateien mit unter DOS gesetztem Archivattribut unter Linux als "ausführbar" gekennzeichnet? valid chars = 148:153 132:142 129:154 225 Welche ASCII-Zeichen sind in Dateinamen erlaubt? printing = bsd Zum Drucken wird der bsd-Druckerspooler verwendet. Der Druckertreiber muß auf dem Client installiert werden. printcap name = /etc/printcap Diese Datei ist für die Konfiguration des Druckers verantwortlich. load printers = yes Soll am Server gedruckt werden? guest account = nobody Unter welcher User-ID werden die Files ohne Passwortabfrage angelegt? message command = /bin/bash -c 'rm %s' & Welches Kommando führt Samba aus, wenn es eine WinPopUp-Message bekommt (hier löscht es die Nachricht)? lock directory = /var/lock Wo stehen die Informationen über die Verhinderung von gemeinsamen Dateizugriffen? share modes = yes Werden konkurrierende Dateizugriffe abgewehrt? include = /etc/samba/smb.conf.proj Gibt es noch einen anderen Konfigurationsfile, der beachtet werden muß? interfaces = 192.168.0.1/255.255.255.0 Über welche Netzwerkkarten bzw. IP-Nummern läuft der Datenverkehr? Wichtig, um ungewollte Rauswahlen zu verhindern. [netlogon] Dieser Share beinhaltet die Angaben, wo und was beim Einloggen passiert. browsable = yes Wird der Share im Dateimanager angezeigt? path = /etc/samba/scripts Wo befindet sich der Share? public = yes Hat jeder darauf Zugriff? writeable = yes Darf dort geschrieben bzw. dürfen Dateien geändert werden? writelist = adm,root Wer darf diese Änderungen durchführen? Hier kann sich z.B. der Netzwerkverwalter mit seiner perönlichen Kennung eintragen. Bei mir steht da noch "tlitsch". [homes] Hier werden die Homeverzeichnisse erzeugt. Beim Einloggen eines eingetragenen Users mit Homeverzeichnis wird [home] automatisch durch /home/user ersetzt. M.E. das genialste Feature bei Samba. ; available = no Ist der Service verfügbar? Im Beispiel ist diese Zeile auskommentiert, so dass er erreichbar ist. Mit dem Entfernen des ";" und einem Neustart von Samba können so ganz einfach die Zugriffe auf die Homes gesperrt werden. comment = Stammverzeichnis Das erscheint im Dateinamanger. browseable = no Darf dort auch von anderen Usern gesucht und in Unterverzeichnisse gewechselt werden? read only = no Zum Schreiben freigegeben. create mode = 0755 Welche Unix-Dateiattribute erhalten DOS/Win-Dateien? map archive = no Werden Dateien mit unter DOS gesetztem Archivattribut unter Linux als "ausführbar" gekennzeichnet? wide links = no Werden Softlinks auf andere Verzeichnisse oder Dateien verfolgt? preexec = /bin/bash -c 'cat /etc/motd | /usr/samba/bin/smbclient -M %m -I %I' & Diese Kommando (hier wird die motd = Message of the Day geschickt) wird beim Einloggen eines Clients ausgeführt. (Ich habe auf Win9x und Win3.11 noch nie eine solche Message gesehen.) [printers]
comment = Die Drucker
printable = yes
browsable = no
public = no
writable = no
create mode = 0700
path = /var/tmp
min printspace = 10000Wie der Name schon sagt: hier geht es um die Drucker. Das macht normalerweise keine Probleme und wird deshalb auch nicht weiter kommentiert. [tmp] Das ist das Verzeichnis für den Datenaustausch. Es sollte regelmäßig geleert werden. Und bei Klassenarbeiten gehört es abgeschaltet! ; available = no Durch Entfernen des ; kann man den Datenaustausch abschalten ! comment = Datenaustausch So heißt es. path = /home/tmp Da ist es. read only = no Alle können was reinschreiben. public = yes Genau, alle dürfen. wide links = no Aber es werden keine Links auf andere Verzeichnisse oder Dateien verfolgt. [pub] Hier sollte für alle (public) zugängliches Material gesammelt werden comment = Unterrichtsmaterial Das sieht der User im Webbrowser. path = /home/adm Wo ist es? read only = yes Hier darf niemend was löschen oder verändern. public = yes Weil es für alle da sein soll. wide links = yes Hier darf man endlich auch Links auf andere Verzeichnisse oder Dateien setzen. [a]
comment = Diskette in Laufwerk A
path = /a
read only = no
public = yes
wide links = noHier sind nach dem oben gesagten kaum noch Kommentare nötig ... [b] und [cdrom] sind genau wie [a]
Es gibt einige wichtige Erweiterungen dieser Konfigurationsdatei in der Section [global]:
[global]
admin users = anwenderHier kann einzelnen Anwendern oder ganzen Gruppen (dann mit einem "@" davor, z.B. @lehrer) das Zugriffsrecht auf alle Verzeichnisse auf dem Server gegeben werden. Dieses Recht sollte sehr restiktiv benutzt werden. Die von einem Admin-User angelegten Dateien erhalten auch, wenn sie aus Winxx heraus angelegt wurden, unter Linux die Eigentumsrechte root.gruppe-des-anwenders! logon script = %g.bat Hier wird eine gruppenspezifische Login Datei abgearbeitet. Es gibt also eine Datei lehrer.bat und eine Datei schueler.bat. Dadurch lassen sich versteckte shares (browseable=no) einem Laufwerksbuchstaben zuweisen, z.B. das share /home/lehrer dem Buchstaben L:. Es ist auch möglich, beim Login Programme zu starten oder eben nicht (wie z.B. einen identd). [tree]
path = /
browseable = no
write only = yes
write list = @lehrerDiese Freigabe erlaubt den Zugriff auf den gesamten Verzeichnisbaum des Servers. Der browseable Flag sorgt dafür, dass man die Freigabe im Windows-Explorer nicht sieht. Man muss also wissen, dass es diese Freigabe gibt, um mit "net use q: \\arktur\tree" eine Verbindung zu dieser Freigabe herzustellen. Die Dateien dieser Freigabe (also alle auf dem Server) sind nur durch die freigegebene Gruppe (hier die Lehrer) beschreibbar. Eine Konstruktion wie die zuletzt genannte macht sich auch die Fachlehrershell zu Nutze. Mit dieser Shell können Schüler zu Projektgruppen zusammengefasst werden, die dann eine nur für diese Projektgruppe beschreibbare Freigabe erhalten.
Nach oben
© Thomas Litsch, zuletzt aktualisiert 30.04.2000, Email: thomas.litsch@linux-schule.de