|
|
Samba: UNIX im Windows-NetzSamba ist eine freie Software, die es UNIX-Rechnern ermöglicht, mit dem Windows Netzprotokoll SMB zu kommunizieren. Samba ist so leistungsfähig, dass Sie es gut verwenden können, um einen Ersatz für einen MS Windows NT Server zu stellen. Es gibt aber auch einen SMB-Client, mit dem Sie Zugriffe auf Windowsressourcen erhalten.
Der Autor von SAMBA, der Autralier Andrew Tridgell hatte zunächst seine
Software einfach Server und später
SMBserver genannt. Als sich herausstellte, dass eine andere Softwarefirma
das Namensrecht für SMBserver hatte, suchte er mit Die Wirkung, die die Veröffentlichung dieser Software hatte, lässt sich heute kaum noch ermessen. Das Network File System (NFS siehe S. nfs), das das Standardnetzwerkdateisystem unter UNIX ist, war von anderen Betriebssystemen nur durch Zusatzsoftware erreichbar. Abgesehen von FTP (siehe S. ftp) gab es also keine Möglichkeit, Dateien zwischen UNIX und MS Windows mit Bordmitteln innerhalb des Netzes auszutauschen. Durch SAMBA war es plötzlich möglich, dass ein Linux Rechner als Ersatz für einen MS Windows NT Server auftrat. Da Sie auf einem Linux-Server im Gegensatz zu NT nicht unbedingt die grafische Oberfläche installieren müssen, ist die Hardwareanforderung erstaunlich gering. Dazu kommt, dass Sie im Gegensatz zum MS Windows NT eine enorme Skalierbarkeit gewinnen. Den Linuxrechner können Sie auch durch leistungsfähige UNIX-Server ersetzen. Samba arbeitet als TCP/IP-Service. Entsprechend müssen alle SMB-Pakete über das Protokoll TCP/IP transportiert werden. Obwohl in reinen Windowsnetzen oft IPX, das alte Protokoll von Novell, eingesetzt wird, ist das kein so großer Aufwand, da inzwischen fast jeder Windowsrechner auch mit dem Internet verbunden wird und in dem Zusammenhang TCP/IP sowieso installiert wird. IPX können Sie meist ohne Probleme deinstallieren, sofern nicht tatsächlich ein älteres Novellnetz eingesetzt wird. Lediglich MS Windows 3.11 besaß noch nicht von Haus aus TCP/IP. Das können Sie allerdings kostenlos von Microsoft erhalten. Quelle: ftp://ftp.microsoft.com/peropsys/windows/public/tcpip/WFWT32.EXE Da Samba ein TCP/IP-Dienst ist, müssen in der /etc/services Einträge gemacht werden:
netbios-ssn 139/tcp netbios-ns 137/tcp
Konfigurationsdatei smb.confDie zentrale Konfigurationsdatei heißt /etc/smb.conf. Die Datei ist in mehrere Abschnitte eingeteilt und ähnelt einer MS Windows INI-Datei. Die Abschnitte sind mit Titeln in rechteckigen Klammern eingeleitet. Die einzelnen Einstellungen werden durch Zuweisungen gemacht, die der Struktur Variable=Wert folgen. Der Wert umfasst den Rest der Zeile. Das Semikolon ist das Kommentarzeichen.
Der wichtigste Abschnitt heißt
[global] server string = Gaston, der freundliche NT-Ersatz workgroup = WILLEMER share modes = yes
; encrypt passwords wird ab NT 4.0 SP3 und Win98 gebraucht encrypt passwords = yes
printing = bsd printcap name = /etc/printcap
; wichtig, wenn es ein weiteres Interface zum Internet gibt. interfaces = 192.168.109.144/255.255.255.0
Der
Die beiden Variablen Im Abschnitt global kann eingestellt werden, auf welche Netzinterfaces Samba zugreift. Diese Einstellung ist vor allem bei einem Rechner erforderlich, der auch ein Interface zum Internet besitzt. Ansonsten versucht Samba, auch auf diesem Wege Freunde zu finden. Das wäre natürlich ein eklatantes Sicherheitsrisiko. Hinter dem Schrägstrich steht die Netzmaske (siehe S. subnet). Alternativ kann auch die CIDR-Schreibweise verwendet werden (siehe S. cidr):
interfaces = 192.168.109.144/24 Im weiteren Verlauf der smb.conf werden die Ressourcen beschrieben, die den anderen Rechnern im Netz zur Verfügung gestellt werden. Jede der Ressourcen wird in rechteckigen Klammern genannt.
[homes] comment = Heimatverzeichnis browseable = no read only = no create mode = 0750
[c-drive] comment = C-Laufwerk browsable = yes public = yes create mode = 0755 path = /windows/C writeable = yes
Die Ressource
Die Ressource
Die Option
Alle Ressourcen müssen natürlich einen Pfad haben, unter dem sie im UNIX
Verzeichnisbaum zu erreichen sind. Eingetragen wird dieser Pfad unter der
Option
Die Option
Wenn die Datei smb.conf vollständig konfiguriert wurde, kann Sie durch
den Aufruf des Programms
Load smb config files from /etc/smb.conf Processing section "[homes]" Processing section "[c-drive]" Processing section "[printers]" Loaded services file OK. Press enter to see a dump of your service definitions Nach dem Drücken der Returntaste wird die komplette Konfiguration angezeigt.
Starten der Dämonen
Samba besteht aus zwei Prozessen, Nachdem die Prozesse gestartet sind, wird zum Testen der Konfiguration als nächstes versucht, die Umgebung lokal zu testen. Dazu wird auf derselben Maschine ein SMB-Client gestartet.
smbclient -L localhost Nach einer Passwortabfrage werden Informationen über die lokale Samba-Umgebung ausgegeben.
Domain=[WILLEMER] OS=[Unix] Server=[Samba 2.0.7]
Sharename Type Comment ----- -- ---- c-drive Disk C-Laufwerk cdrom Disk Linux CD-ROM IPC$ IPC IPC Service (Gaston, der freund ascii Printer cljet5-a4-ascii-mono-300 lp2 Printer cljet5-a4-auto-color-300 lp-mono Printer cljet5-a4-auto-mono-300 cljet5-a4-raw Printer cljet5 a4 raw faxprint Printer fax
Server Comment ----- ----
Workgroup Master ----- ----
Zugriff unter MS Windows
Zunächst muss sichergestellt sein, dass der Windowsrechner zur gleichen
Workgroup gehört. Als Netzprotokoll muss TCP/IP installiert sein. Die
Funktion der Verbindung prüfen Sie zunächst mit dem Befehl Die Netzwerkumgebung ist leider in der Anzeige der verfügbaren Rechner nicht besonders verlässlich. Windowsrechner suchen in gewissen Abständen, welche anderen Rechner sich im Netz befinden. Danach aktualisieren sie ihre Netzwerkumgebung. So kann es sein, dass die angezeigten Rechner längst abgeschaltet sind oder nicht angezeigte Rechner in Wirklichkeit längst verfügbar sind.
Encrypted PasswordMS Windows NT 4 ab Service Pack 3 sowie MS Windows 98 und alle neueren Versionen senden verschlüsselte Passwörter über das Netz. Leider entspricht die Verschlüsselung nicht dem UNIX-Standard, so dass Samba nicht mehr einfach die Datei /etc/passwd verwenden kann, wie das mit den unverschlüsselt arbeitenden Windowsversionen noch funktionierte. Zur Speicherung der verschlüsselten Passwörter wird eine eigenständige Datei namens /etc/smbpasswd verwendet. Um eine solche Datei zu erzeugen, liefert Samba ein Skript mit, der aus der passwd-Datei eine smbpasswd-Datei generiert. Der Aufruf lautet:
cat /etc/passwd | bash mksmbpasswd.sh >/etc/smbpasswd
Danach kann root für jeden Benutzer ein Startpasswort mit dem Kommando
gaston# smbpasswd willemer New SMB password: Retype new SMB password: Password changed for user willemer. gaston#
Dämon oder inetdJe nach Einsatz gibt es zwei Arten, einen Samba Server zu starten. Wird er nur hin und wieder in Anspruch genommen, reicht es, den Server durch den inet-Dämon zu verwalten. Wird der Server intensiv als Firmenserver verwendet, sollten Sie die Dämonen aus den rc-Skripten starten. Die Einträge in der /etc/inetd.conf lauten, falls der Dienst auf diesem Wege gestartet werden soll:
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd
Ein kill -1 auf die PID des Wird Samba als Server in einer Firma eingesetzt, der regelmäßig benutzt wird, werden die Serverprozesse beim Booten durch eine rc-Datei gestartet. In der SuSE-Distribution wird das durch Setzen der Variable START_SMB auf »yes« in der /etc/rc.config erreicht. Auf anderen Plattformen muss die Datei smb, die dem Sambapaket beiliegt, mit symbolischen Links in die richtige Startumgebung gebracht werden (siehe S. rcskripts).
Zugriff auf Windowsnetze
Zum SAMBA-Paket gehört auch ein Client. So können UNIX-Rechner auch auf
Netzwerklaufwerke von MS Windows oder von SAMBA-Servern zugreifen.
Das Programm
Der Zugriff auf die von gaston angebotenen Heimatverzeichnisse würde von
einem anderen UNIX-Rechner per
smbclient gastonhomes Nach dem Aufruf wird ein Passwort angefordert und Sie befinden sich in einer Umgebung, die stark an den FTP-Client erinnert. Und tatsächlich funktioniert er auch mit den gleichen Kommandos. Etwas irritierend sind die vielen Backslashes. An sich werden vor dem Wort gaston nur zwei davon benötigt. Da aber der Backslash von der Shell interpretiert wird, braucht man hier vier. Allerdings können Sie auch normale Schrägstriche verwenden und dann sieht der Aufruf schon etwas übersichtlicher aus.
smbclient //gaston/homes
Interessanter als ein FTP-Zugang dürfte aber das Einbinden einer Ressource
in den eigenen Verzeichnisbaum sein. Dazu gibt es den Befehl
smbmount //gaston/homes /mnt -o username=arnold mount -t smbfs -o username=arnold //gaston/homes /mnt
Die Verbindung wird mit dem normalen
umount /mnt
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|