Samba Seminar Technik SS06 16.05.2006 Alexander Lange, 0321206 Inhalt • Was ist Samba? • Geschichte • Funktionen von Samba • Das SMB-Protokoll • Zu beachten! • Vorteile von Samba • Samba im Einsatz • Fazit • Quellen 1 Was ist Samba? • Samba ist ein OpenSource-SMB-Server, hauptsächlich für UNIX / Linux (aber auch OS/2, Amiga, ...) • SMB heißt »Server Message Block« und ist das Protokoll, das in Windows-Netzwerken verwendet wird • Mit Hilfe von Samba kann ein UNIX-Server anstelle eines NT-Servers verwendet werden • Bei vielen Linux-Distributionen ist Samba von vornherein dabei 2 Geschichte Anfänge • Der australische Student Andrew Tridgell wollte 1991 einen DOS-Client mit einem Server auf einer Sun-Workstation verbinden • Er analysierte die Kommunikation zwischen Client und Server und entwickelte ein einfaches Serverprogramm • Im Januar 1992 veröffentlichte er »Server 0.1«, je einen Monat später »Server 0.5« und »Server 1.0« 3 Geschichte Weiterentwicklung • Andrew Tridgell portierte den »Server« auf Linux • Nachdem er die Dokumentation des Protokolls erhalten hatte, entwickelte er den Server weiter • Heute ist dieser Server unter dem Namen »Samba« ein OpenSource-Projekt; aktuelle Version: 3.0.22 • Die Entwicklung basiert immer noch auf Reverse Engineering (Analyse der Kommunikation), da die meisten Netzwerkfunktionen undokumentiert sind 4 Geschichte Der Name »Samba« • Der SMB-Server musste aus rechtlichen Gründen umbenannt werden • Andrew Tridgell suchte in einem Wörterbuch nach dem Pattern *S*M*B* und wählte aus den Ergebnissen den Namen »Samba« 5 Funktionen von Samba • Samba wird meistens als Server in NTNetzwerken eingesetzt • Mit Samba können auf einem UNIX-Rechner Dateien, Verzeichnisse, Drucker etc. für WindowsClients freigegeben werden • Samba kann als WINS-Server verwendet werden (Windows Internet Naming Service) • Samba kann auch selbst als Client fungieren • Zusammengefasst ermöglicht Samba die Einbindung von UNIX-Rechnern in NT-Netzwerke 6 Funktionen von Samba Konfiguration • Die Konfiguration erfolgt über eine Konfigurationsdatei namens smb.conf • Diese enthält zahlreiche Parameter wie z.B. Benutzer mit Admin-Rechten, Verhalten gegenüber unbekannten Benutzern (guest account?), Dateifreigaben, Druckerfreigaben usw. • Samba kann auch über das Samba Web Administration Tool (SWAT) grafisch in einem Browser konfiguriert werden 7 Das SMB-Protokoll SMB auf NetBIOS • SMB steht für »Server Message Block« • Kommunikationsprotokoll für Datei-, Druck- und andere Serverdienste • Kern der Netzwerkdienste von Microsofts LANManager, der Windows-Produktfamilie sowie des LAN-Servers von IBM • SMB wurde zuerst 1983 von Barry Feigenbaum bei IBM vorgestellt und im Laufe der Zeit von IBM, Microsoft, Apple und anderen erweitert 8 Das SMB-Protokoll SMB auf NetBIOS Anwendung Netzwerk Netzzugang SMB NetBIOS NetBEUI Ethernet, Token Ring, ... 9 Das SMB-Protokoll SMB-Dialekte • CORE: Der Urdialekt, keine Unterstützung von Benutzernamen • CORE+ / COREPLUS: Erste Überarbeitung, v.a. verbesserte Geschwindigkeit • LANMAN1: Erstmals Unterstützung langer Dateinamen • LANMAN2: Überarbeitetes LANMAN1 • NT1: Wird als CIFS standardisiert, Standardeinstellung bei Samba 10 Das SMB-Protokoll SMB auf NetBIOS über TCP/IP • NetBIOS (Network Basic Input Output System) kann auf NetBEUI, TCP/IP oder IPX aufbauen • Samba unterstützt nur NetBIOS über TCP/IP (kurz: NBT) • NetBIOS und TCP/IP bieten jeweils einen eigenen Name Service 11 Das SMB-Protokoll SMB auf NetBIOS über TCP/IP Anwendung Adapter Transport SMB NetBIOS NetBEUI (TCPBEUI) UDP TCP Netzwerk IP Netzzugang Ethernet, Token Ring, ... 12 Das SMB-Protokoll CIFS • CIFS bedeutet »Common Internet File System« • CIFS wurde 1996 von Microsoft eingeführt und ist eine erweiterte Version von SMB • Die Namensauflösung erfolgt weiterhin über NBT Broadcasts bzw. allgemein über den NBT Name Service • Im Gegensatz zu SMB ist CIFS standardisiert und wird nicht von zahlreichen Gruppierungen eigenmächtig erweitert 13 Zu beachten! Namensauflösung • NetBIOS und TCP/IP bieten jeweils einen eigenen Name Service • Wenn der bevorzugte NBT Name Service nicht zur Verfügung steht, wird auf DNS zurückgegriffen • Dies kann zu Problemen führen, wenn z.B. ein Computer in den beiden Namensbereichen zwei verschiedene Namen hat 14 Zu beachten! Groß- und Kleinschreibung • Windows ignoriert Groß- und Kleinschreibung sowohl bei Benutzern als auch bei Dateien • Der Benutzername wird beim Login in Großbuchstaben übertragen (z.B. »MEIER«) • UNIX findet den Benutzer deswegen unter Umständen nicht (z.B. »Meier«) • Das bedeutet: Samba muss die richtige Schreibweise ›erraten‹! 15 Zu beachten! Groß- und Kleinschreibung • Samba versucht es zunächst mit Kleinbuchstaben (z.B. »meier«) • Dann versucht es alle Möglichkeiten mit einem Großbuchstaben: »Meier«, »mEier«, »meIer«, ... • ... Dann alle mit zweien usw. • Die maximale Anzahl von Großbuchstaben kann vorgegeben werden (viele Rateversuche = schlechte Performance) • Großbuchstaben am besten ganz verbieten! 16 Zu beachten! Verschlüsselung von Passwörtern • Ursprünglich wurde alles unverschlüsselt übertragen • Seit Windows NT Service Pack 3 ist Verschlüsselung möglich und standardmäßig aktiviert • Leider verwenden Windows NT / 2000 und Windows 9x unterschiedliche Verfahren • Samba kann entsprechend konfiguriert werden 17 Zu beachten! Zugriffsrechte • Ein Benutzer muss sowohl bei Samba als auch bei UNIX die passenden Rechte haben, um auf eine Datei o.ä. zugreifen zu können Datei Benutzer Samba UNIX 18 Vorteile von Samba • Samba ist OpenSource und daher gratis, während bei einem ›echten‹ NT-Server Lizenzkosten anfallen • Samba kann über die Kommandozeile oder einen Webbrowser auch aus der Ferne administriert werden • Samba enthält einige Diagnose-Tools zur Fehlersuche im Netzwerk • UNIX-Server laufen i.a. stabiler als NT-Server 19 Samba im Einsatz • Ein Windows-Client merkt nicht, ob er sich bei einem ›echten‹ NT-Server oder bei Samba anmeldet • Samba kann daher in jedem dieser Netze eingesetzt werden • Ein Beispiel ist zum Greifen nah: Im GRS-Labor melden sich Windows-XP-Clients bei Samba auf einem Ubuntu-Server an 20 Fazit • Samba ist eine echte Alternative zu einem ›echten‹ NT-Server • Die bekannten Probleme können alle behoben oder umgangen werden • Das allgemeine Interesse an Samba ist groß genug, um die Weiterentwicklung des Projektes zu sichern (die nächste Version 3.0.23 ist bereits als Beta verfügbar) 21 Quellen • Gerald Carter, Richard Sharpe: SAMBA, Markt + Technik Verlag (erhältlich in der Bibliothek) • Jens Kühnel: SAMBA – Integration von Linux/Unix-Rechnern in Windows-Netze, MITPVerlag (erhältlich in der Bibliothek) • Wikipedia: http://de.wikipedia.org • Kursskript von Volker Lendecke, Service Network GmbH Göttingen: http://samba.SerNet.DE 22 Fragen? • Gibt es noch Fragen? 23 Das war‘s... • Vielen Dank für Ihre / Eure Aufmerksamkeit! 24