Samba, Linux Server für Windowsnetzwerke - 27. Mai 2004

Samba (www.samba.org) ist ist abgeleitet vom Server Message Block (SMB) Protokoll, das in der Windows Welt dazu eingesetzt wird, wenn Server im Netzwerk ihre Verzeichnisse und Drucker teilen. Es wurde 1991 von dem Australier Andrew Tridgell entwickelt.
Es bietet die Möglichkeit einen Linux Server fast unbemerkt in ein Windows Netzwerk zu integrieren. Der Zugriff von Linux-Rechnern auf den Samba Server ist ebenfalls möglich und deutlich schneller als über nfs.
Gestartet werden die beiden Dämonen
- nmbd zur Verwaltung, Browsing und als Nameserver
- smbd als Schnittstelle für die Clients.
Eine einfache /etc/smb.conf sieht so aus
# /etc/samba/smb.conf
[global]
workgroup = lug-saar.spc
security = share
[public]
path = /data/share
guest ok = yes
guest only = yes
Damit ist ein ReadOnly Zugriff auf das Verzeichnis /data/share möglich.
Syntaxfehler der smb.conf können mit testparm gefunden werden.
Linux kann Samba Verzeichnisse und damit auch Windowsverzeichnisse mounten. Nachdem wir die beiden Dämonen gestartet haben prüfen wir unser Samba damit.
smbclient -L localhost
zeigt uns das Verzeichnis /data/share
smbstatus
liefert den aktuellen Status inclusiv der aktuellen Verbindungen.
Samba kommt mit dem Web-Administrationstool SWAT. Die
Inbetriebnahme erfolgt über
#/etc/services
swat 901/tcp
und
#/etc/inetd.conf
swat stream tcp nowait.400 root /usr/sbin/swat swat
Nach Neustart des inetd erscheint swat unter
servername
Wir wollen jetzt die /etc/samba/smb.conf verfeinern.
[global]
workgroup = lug-saar.spc
server string = linux - king size server
# nur Benutzer der Linux Gruppe sambausers
valid users = @sambausers
security = user
# Mapping der Benutzernamen Linux zu Windows
username map = /etc/samba/smbusers
# verschlüsselte Kennwortübertragung durch Windows
encrypt passwords = yes
# interfaces anmelden erhöht die Geschwindigkeit
# (ebenso wie das Anlegen einer hosts Datei unter Windows)
interfaces = 192.168.199.248/255.255.255.0
# Zeitserver im Netz
time server = yes
dos filetime = yes
# ungenaue Zeitangabe wie bei Windows
dos filetime resolution = yes
# Dateinamen ohne Groß/Kleinschreibung, so wie Windows
mangle case = no
case sensitive = no
short preserve case = yes
preserve case = yes
# Druckerserver
printing = CUPS
printcap name = CUPS
socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY
wins support = No
# nicht anzuzeigende Files
veto files = /*.eml/*.nws/riched20.dll/*.{*}/
[home]
comment = Homeverzeichnisse
# jedem Benutzer sein eigenes und nur dieses Homeverzeichnis
valid users = %S
# nur einmal als home anzeigen
browseable = no
read only = no
create mode = 0750
directory mask = 0750
[share]
comment = gemeinsames Verzeichnis
path = /data/share
guest ok = Yes
guest only = Yes
read only = No
[dvd]
comment = dvd
path = /media/dvd
guest ok = Yes
guest omly = Yes
[printers]
comment = Drucker HP 930 C
path = /var/spool/cups
printable = Yes
# diesen Druckertreiber nimmt Windows
# wenn der Name exakt richtig geschrieben ist
printer driver = HP 930 C
create mask = 0600
guest ok = yes
browseable = No
#[print$]
#comment = Printer Drivers
#path = /var/lib/samba/drivers
#write list = @ntadmin root
#force group = ntadmin
#create mask = 0664
#directory mask = 0775
Damit die Benutzer erkannt werden müssen sie unter Windows ein Passwort benutzen. Diese Passwörter werden in die /etc/samba/smbpasswd mittels
smbpasswd -a <benutzername>
eingetragen.
Das Mapping der User von Windows zu Linux erfolgt, falls erforderlich,
über
# /etc/samba/smbusers
;Linuxname = Windowsname
;root = administrator admin
nobody = guest pcguest smbguest
mancas = 'Manfred Caspar'
Das war ein Einstieg in Samba.
mancas, 25.05.2004 
|