Zur Installation sind zwei Pakete nötig. Erstens samba und zweitens samba-doc. Mit apt kann beides gleichzeitig erledigt werden.
apt-get install samba samba-doc
Nach dem Installieren des Paketes, wird höflich gefragt, wie denn die Arbeitsgruppe (Windows) heißt. Anschließend sollte die Frage nach der
Passwortverschlüsselung bejaht werden. Die Frage nach einem NetBIOS-Nameservers muß verneint werden, da sich in meinem Netzwerk kein Windows-Server
befindet. SAMBA sollte im übrigen nicht als inetd-Service laufen. Die Entscheidung wie SAMBA gestartet werden soll, h$auml;ngt davon ab, welche Sicherheitstufe
man vorzieht. Inetd gilt als alt und unsicher. Die Verlinkung der Startscripte (und Ausführung als daemon) erscheint als bessere Variante.
Das Verwenden von verschlüsselten Passwörtern in SAMBA setzt voraus, daß SAMBA eine separate Passwortdatei anlegen darf, welche sp$auml;ter vom
Administrator mit Hilfe von smbpasswd aktuell gehalten werden muß. Die Frage nach dem Erstellen der Datenbankdatei muß mit Ja beantwortet
werden.
Das SAMBA-Protokoll ist vielfältig. Selbst Linuxklienten können darüber kommunizieren.
In diesem Fall sollen es aber wirklich Windowsrechner sein, denn für Linux-/
Unixclients eignet sich NFS besser. SAMBA hat den Vorteil, es exportiert nicht
nur Dateipfade, sondern auch eingerichtete Drucker. Wird der Druckspoolerpfad gänzlich
exportiert, dann wird auch jeder neu eingerichtete Drucker gleich mit exportiert.
Nötig dazu ist es, die smb.conf unter /etc zu editieren. Unter Debian Linux 3.1 liegt sie unter
/etc/samba/smb.conf Meine sieht wie folgt aus:
;
; /etc/smb.conf
;
[global]
workgroup = workgroup
netbios name = anakin
server string = FILE_SERVER
guest account = nobody
keep alive = 30
os level = 2
kernel oplocks = false
security = user
encrypt passwords = yes
printing = bsd
printcap name = /etc/printcap
load printers = yes
socket options = TCP_NODELAY
map to guest = Bad User
local master = no
interfaces = 192.168.0.2/255.255.255.0
wins support = no
[sven]
comment = Heimatverzeichnis Sven Alisch
path = /home/sven
browsable = yes
read only = no
writeable = yes
valid users = sven
[stefanie]
comment = Heimatverzeichnis von Stefanie
path = /home/stefanie
browsable = yes
read only = no
writeable = yes
valid users = stefanie
[pub]
comment = Internet-Seiten
path = /pub
browsable = yes
read only = no
writeable = yes
valid users = sven
[ablage]
comment = Treiber und Software
path = /ablage
browsable = yes
writeable = yes
read only = no
valid users = sven
[mmedia]
comment = Multimediadaten
path = /mmedia
browsable = yes
writeable = yes
read only = no
valid users = sven
[printers]
comment = All Printers
browseable = no
printable = yes
public = no
read only = yes
create mode = 0700
directory = /tmp
Diese smb.conf wurde an eine BSD-Printing-Style (lprold)-Version angepaßt. In
Zeiten wo sich CUPS (Common-Unix-Printing-System) durchsetzt müssen in der
smb.conf folgende Anpassungen eingetragen werden:
printing name = lpstat (optional)
printing = cups
...
[printers]
comments = All Printers
path = /var/spool/samba
browsable = yes
guest ok = yes
writable = no
printable = yes
create mode = 0700
print command = lpr -P %p -o raw %s -r
lpq command = lpstat -o %p
lprm command = cancel %p-%j
Bei Debian wird auch nach der CUPS Installation eine Datei printcap.cups unter /etc erzeugt. Möchte man diese Datei benutzen,
und nicht in printcap (siehe auch unbedingt Kapitel Drucken) umbenennen, so mu"s die Zeile
printcap name = /etc/printcap
in
printcap name = /etc/printcap.cups
geändert werden. Meine Originaldatei ist im Anhang zu finden.
Als nächstes nun wieder zu den Benutzern. Häufigste Quelle für Fehler sind die Zugriffsrechte
unter SAMBA. Gerade bei verschlüsselter Passwortübermittlung ist es ganz
wichtig, das die Benutzer auch unter SAMBA existieren. Zwei Möglichkeiten bieten sich
dem root an. Entweder man trägt in der smb.conf direkt ein, dass SAMBA automatische
alle unter Linux vorhanden Benutzer verwendet, oder etwas sicherer, man verwendet den
Befehl, bzw. das Script smbadduser. Smbadduser ist ein C-Shell-Script. Hat man das samba-doc-Paket mitinstalliert, befindet sich das smbadduser-Skript unter /usr/share/doc/samba-doc/examples, und sollte nach /usr/bin kopiert werden.
Die Syntax bei SAMBA 2.2.x lautet beispielsweise:
smbadduser sven:x
oder behält man die UnixID's bei, funktioniert auch ein:
smbadduser sven:1000
smbadduser stefanie:1001
Ab Debian Linux 3.1 funktioniert auch:
smbpasswd -a sven
smbpasswd -a stefanie
Jetzt wird man gebeten ein Passwort für diesen Benutzer einzugeben. Nach der Eingabe
und Validierung des Passwortes ist der Benutzer für SAMBA existent.
Ein Verbindungsaufbau von den Windowsklienten aus, sollte genau dann funktionieren,
wenn auch dort die Benutzer mit Ihren Passwörtern angelegt wurden.
Ist SAMBA konfiguriert, kann man den Serverdämon über /etc/init.d/samba start starten.
Hat man SAMBA über apt installiert, sollte auch die Verlinkung mit dem jeweiligen Runlevel nicht mehr nötig sein.
Sven Alisch
2005-08-27