Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
Über die Autoren
Über dieses Buch
Linux vs. BSD
1 Der Kernel
2 Die Grundlagen aus Anwendersicht
3 Die Shell
4 Reguläre Ausdrücke
5 Tools zur Dateibearbeitung
6 Die Editoren
7 Shellskriptprogrammierung
8 Benutzerverwaltung
9 Grundlegende Verwaltungsaufgaben
10 Netzwerk-Grundlagen
11 Anwendersoftware für das Netzwerk
12 Netzwerkdienste
13 Mailserver unter Linux
14 LAMP
15 DNS-Server
16 Secure Shell
17 Die grafische Oberfläche
18 Window-Manager und Desktops
19 X11-Programme
20 Multimedia und Spiele
21 Softwareentwicklung
22 Crashkurs in C und Perl
23 Sicherheit
24 Prozesse und IPC
25 Bootstrap und Shutdown
26 Dateisysteme
27 Virtualisierung und Emulatoren
A Die Installation
B Lösungen zu den einzelnen Aufgaben
C Kommandoreferenz
D X11-InputDevices
E MBR
F Die Buch-DVDs
G Glossar
H Literatur

Download:
- ZIP, ca. 6,3 MB
Buch bestellen
Ihre Meinung?

Spacer
 <<   zurück
Linux von Johannes Plötner, Steffen Wendzel
Das distributionsunabhängige Handbuch
Buch: Linux

Linux
2., aktualisierte und erweiterte Auflage
1119 S., 39,90 Euro
Galileo Computing
ISBN 978-3-8362-1090-4
gp 12 Netzwerkdienste
  gp 12.1 inetd und xinetd
    gp 12.1.1 inetd
    gp 12.1.2 tcpd
    gp 12.1.3 xinetd
  gp 12.2 Standarddienste
    gp 12.2.1 echo
    gp 12.2.2 discard
    gp 12.2.3 systat und netstat
    gp 12.2.4 daytime und time
    gp 12.2.5 QotD
    gp 12.2.6 chargen
    gp 12.2.7 finger
    gp 12.2.8 Telnet und R-Dienste
  gp 12.3 DHCP
    gp 12.3.1 dhcpd
    gp 12.3.2 Client-Konfiguration
  gp 12.4 NNTP-Server
    gp 12.4.1 Konfiguration
    gp 12.4.2 Server starten
    gp 12.4.3 Authentifizierung
    gp 12.4.4 WendzelNNTPGUI
  gp 12.5 Network File System
    gp 12.5.1 Einen NFS-Server aufsetzen
    gp 12.5.2 Den Client konfigurieren
  gp 12.6 Der FTP-Dienst
    gp 12.6.1 Konfigurationsdateien
  gp 12.7 Samba
    gp 12.7.1 Windows-Freigaben mounten
    gp 12.7.2 Dateien freigeben
    gp 12.7.3 Die smb.conf
    gp 12.7.4 Samba, LDAP & Co.
  gp 12.8 Zusammenfassung
  gp 12.9 Aufgaben


Galileo Computing

12.7 Samba  downtop

WindowsFreigaben

Wenn man nichts anderes kennt, verspürt man vielleicht den Wunsch, sich mit Windows-Freigaben zu verbinden bzw. selbst Dateien freizugeben. Das entsprechende Protokoll heißt SMB und baut auf NETBIOS auf. NETBIOS ist dabei eine von Microsoft entworfene Methode, lokale Windows-Netze zu organisieren. Samba ist die Linux-Software, die das SMB-Protokoll <SMB wurde von Microsoft in CIFS (Common Internet Filesystem) umbenannt, und Raider heißt jetzt Twix. Na ja, der alte Name ist jedenfalls immer noch gebräuchlich.> versteht und implementiert.


Galileo Computing

12.7.1 Windows-Freigaben mounten  downtop

Leider ist NETBIOS im Funktionsumfang recht beschränkt und nicht gerade intuitiv zu verstehen. Immerhin stammt es ja aus einer Zeit, in der sich TCP/IP noch nicht wirklich durchgesetzt hatte.

Wenn man selbst Dateien freigeben will, spielt man natürlich Server. Aber auch, wenn man als Client auf fremde Freigaben zugreifen will, braucht man dieses Programmpaket. Da sich aber alles in das Gesamtkonzept von Linux einfügt, braucht man, um Freigaben einzubinden, nur ein spezielles mount-Kommando:

# mount -t smbfs -o username=jploetner,password=foobar 
  //Server/test /mnt/win

Listing 12.27    Mounten einer Freigabe

In diesem Beispiel würde vom Rechner mit der Windows-Bezeichnung Server die Freigabe test nach /mnt/win gemountet. Bei einer Windows-Freigabe handelt es sich um den Dateisystemtyp smbfs, und man benötigt auch eine Login-Kennung. Diese übergibt man mit dem -o-Parameter – entweder in der Form username=xyz,password=xyz, oder der Zugang erfolgt anonym, wobei jedoch das Schlüsselwort »guest« angegeben werden muss.


Galileo Computing

12.7.2 Dateien freigeben  downtop

Möchte man nun selbst Dateien freigeben, müssen zunächst der Samba-Daemon smbd sowie der nmbd, eine Art DNS für NETBIOS, laufen. Die Samba-Software ist dabei für alle wichtigen Distributionen als Paket verfügbar, so dass Sie sich eigentlich nicht um das Kompilieren und das Erstellen von Runlevel-Skripts kümmern müssen. Eine eigene Konfiguration ist aber trotzdem notwendig, um den Dienst sinnvoll nutzen zu können.

Die smb.conf ist in sogenannte Sektionen unterteilt. Zwingend vorgeschrieben ist dabei nur die generelle Einstellungen betreffende Sektion [global]; alle anderen Sektionen beschreiben Drucker bzw. Dateifreigaben. Außerdem sollte man sich veranschaulichen, dass Samba eigentlich eine Software ist, die zu übersetzen versucht. Dieses Übersetzen ist immer nötig, wenn zwei Welten miteinander kommunizieren möchten, in diesem Fall die Windows-Welt mit Linux.


Galileo Computing

12.7.3 Die smb.conf  downtop

Wie sieht so eine Konfigurationsdatei aber im Detail aus? Im Folgenden möchten wir mit Ihnen wieder eine kommentierte Konfigurationsdatei ansehen, aus der Sie genug Rückschlüsse für eigene Setups ziehen können. Samba wird dabei hauptsächlich über eine einzige Datei, die meist in /etc/samba/ befindliche smb.conf, konfiguriert:

Listing 12.28    smb.conf – erste Einstellungen

[global] 
# workgroup = NT-Domainname bzw. Workgroup-Name 
  workgroup = MYGROUP 
 
# Mit der Option server string kann man eine 
# Beschreibung für den Server angeben. 
  server string = Samba Server

Die nächste Option ist für die Sicherheit wichtig. Mit ihr kann man den Zugriff auf den Server auf bestimmte Netze beschränken. Hier im Beispiel wird der Zugriff auf zwei Klasse-C-Netzwerke sowie das Loopback-Interface beschränkt.

  hosts allow = 192.168.1. 192.168.2. 127.

Listing 12.29    Erlaubte Rechner

Wenn Sie Ihre Drucker automatisch laden wollen, anstatt Druckerfreigaben manuell zu konfigurieren, sollten Sie diese Option verwenden.

  load printers = yes

Listing 12.30    Drucker automatisch laden

Mit der nächsten Option können Sie den Account für den Gastzugang festlegen. Dieser Account sollte natürlich auch tatsächlich auf dem Serversystem existieren.

  guest account = nobody

Listing 12.31    Gastzugriff

Die nächste Option veranlasst Samba, für jeden sich verbindenden Client eine eigene Logdatei anzulegen. Anschließend wird die Größe der Logdateien auf 50 Kilobyte beschränkt.

  log file = /var/log/samba/%m.log 
  max log size = 50

Listing 12.32    Logging

Mit den folgenden Sicherheitseinstellungen wird festgelegt, dass man eine benutzerbasierte Authentifizierung möchte. Für einzelne Unix-Benutzer muss dazu das Samba-Passwort über das smbpasswd-Tool gesetzt beziehungsweise später auch geändert werden. <Sie erinnern sich: In der /etc/shadow werden die Passwörter nicht im Klartext, sondern nur verschlüsselt gespeichert. Das Passwort im SMB-Protokoll muss aber für die Kompatibilität mit neueren Clients unbedingt vor der Übertragung verschlüsselt werden – und zwar anders, als Unix das macht. Darum braucht Samba eine eigene Passwortdatenbank, die mit smbpasswd verwaltet wird.>

  security = user 
  encrypt passwords = yes

Listing 12.33    Sicherheit

Mit den folgenden Optionen könnten Sie auf Linux-Systemen eine bessere Performance erzielen und den Dienst auf einige bestimmte Netzwerkschnittstellen beschränken. Dies ist jedoch nur sinnvoll, wenn der Server mehrere Netzwerkkarten hat.

  socket options = TCP_NODELAY SO_RCVBUF=8192 \ 
                   SO_SNDBUF=8192 
# interfaces = 192.168.12.2/24 192.168.13.2/24

Listing 12.34    Netzwerk

Die folgenden Einstellungen betreffen NetBIOS-Interna. Falls Sie mehrere SMB-Server in Ihrem Netzwerk haben, können Sie Samba beispielsweise verbieten, lokaler Master zu werden. Diese Option ist jedoch erst in größeren Netzwerken interessant. Andernfalls nimmt Samba mit dem eingestellten OS-Level an den »Wahlen« zum lokalen Master teil. <Das soll in Microsoft-Netzwerken bewirken, dass immer das »neueste« Windows die Gruppe führt. Aber Samba kann hier mitmischen.>

# local master = no 
# os level = 33 
 
# Die folgende Option erlaubt Samba, auch über 
# Subnetzgrenzen hinweg zu operieren. Falls Sie schon 
# einen NT-Domain-Controller haben, wird diese Option 
# jedoch nicht benötigt. 
  domain master = yes

Listing 12.35    NetBIOS-Einstellungen

Aktivieren Sie die folgende Option, um Samba als Domain-Logon-Server für Windows-Systeme zu aktivieren:

# domain logons = yes

Listing 12.36    Domain-Logons

Die Netzwerk- und Computernamen, die man aus der Windows-Welt kennt, haben leider nichts mit DNS zu tun. Es handelt sich dabei um WINS-Namen (»Windows Internet Name Serving«). Samba kann nun entweder selbst ein entsprechender Nameserver sein oder einen externen WINS-Server benutzen. Alternativ kann Samba auch DNS-Proxy spielen und WINS-Namen über DNS auflösen. Das ist umständlich, aber für »fremde« Protokolle gilt die Unix-Philosophie leider nicht – und es kommt zu Redundanzen, Unklarheiten und unnötigen Problemen. <... die leider auch in reinen Windows-Netzwerken auftreten.>

  wins support = yes 
# wins server = w.x.y.z 
 
  dns proxy = yes

Listing 12.37    WINS und DNS

Kommen wir endlich zu den Freigaben. Der spezielle Freigabenname »homes« erlaubt jedem Benutzer den Zugriff auf sein Homeverzeichnis.

 [homes]  
   comment = Heimatverzeichnisse 
   browseable = no 
   writable = yes

Listing 12.38    Die Freigaben – Homeverzeichnis

Eine Freigabe ohne Beschränkungen für temporäre Daten:

[tmp] 
   comment = Temporary file space 
   path = /tmp 
   read only = no 
   public = yes

Listing 12.39    Die Freigaben – temporäre Dateien

Ein öffentliches Verzeichnis, in dem nur die Mitglieder der Gruppe staff schreiben dürfen:

[public] 
   comment = Public Stuff 
   path = /home/samba 
   public = yes 
   writable = yes 
   printable = no 
   write list = @staff

Listing 12.40    Die Freigaben – Public

Zu guter Letzt folgen die Druckerfreigaben: Mit einem BSD-ähnlichen Druckersystem brauchen Sie hier nichts extra zu definieren, da wir mit load printers alle verfügbaren Drucker automatisch freigegeben.

[printers] 
   comment = All Printers 
   path = /usr/spool/samba 
   browseable = no 
#  public = yes # erlaubt dem Gastbenutzer, zu drucken 
   guest ok = no 
   writable = no 
   printable = yes

Listing 12.41    Die Druckerfreigaben


Galileo Computing

12.7.4 Samba, LDAP & Co.& Co.  toptop

Es ist nun wirklich sehr umständlich, für jeden Benutzer zwei Passwortdatenbanken – die normale /etc/shadow und die Samba-Passwörter – zu verwalten. Aber was bei mehreren Rechnern schon funktioniert hat, funktioniert auch bei Samba: LDAP. Ein entsprechend konfigurierter Server <Man muss natürlich das entsprechende Samba-Schema laden, damit ein Benutzerobjekt alle von Samba benötigten Eigenschaften wie eben sein SMB-Passwort besitzt. Hilfe hierzu finden Sie in der Samba-Dokumentation.> kann mit folgenden Anweisungen in der [globals]-Sektion genutzt werden:

   obey pam restrictions = yes 
   passdb backend = ldapsam:ldap://192.168.0.3 guest 
   ldap admin dn = cn=admin,dc=example,dc=com 
   ldap suffix = dc=example,dc=com

Listing 12.42    LDAP-Support

Man braucht also nur den LDAP-Server, das entsprechende Suffix sowie den Administrator-Benutzer anzugeben, und schon können auf dem Server angelegte und entsprechend konfigurierte Benutzer sich über Samba anmelden, und der Admin hat weniger Arbeit. <Da sich über Samba auch Windows-Benutzer an einer Domäne anmelden können, hat man mit dieser Konstruktion sogar eine einheitliche Benutzerverwaltung für heterogene Netzwerke.>

Wenn Sie Samba mit ACLs nutzen wollen, brauchen Sie seit Samba 3.0 die ACLs eigentlich nur noch auf Dateisystemebene zu aktivieren, um von Ihrem Windows-PC aus mit einem Rechtsklick auf entsprechend freigebene Dateien die Unix-Rechte ändern zu können. Jetzt muss man nur noch einen Unix-Admin finden, der so etwas auch machen würde.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






 <<   zurück
  
  Zum Katalog
Zum Katalog: Linux






 Linux
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: Einstieg in Linux






 Einstieg in Linux


Zum Katalog: Debian GNU/Linux






 Debian GNU/Linux


Zum Katalog: Ubuntu GNU/Linux






 Ubuntu GNU/Linux


Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-UNIX-Programmierung






 Linux-UNIX-
 Programmierung


Zum Katalog: Praxisbuch Netzwerk-Sicherheit






 Praxisbuch
 Netzwerk-Sicherheit


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de