60
Netzwerktechnologie im Internet Achim Schmidt www.knowware.de 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung Firewall - die Sicherheit Free!

Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Netzwerktechnologie im Internet

Achim Schmidtwww.knowware.de

11 KnowWare PLUS

Linuxim Netzwerk

TCP/IP - das Protokoll

OSI - der Aufbau

DNS - die Adressierung

Firewall - die Sicherheit

Free!

Page 2: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Acrobat Reader - Bestellung - Autoren gesucht

Acrobat Reader: Wie ...F5/F6 öffnet/schließt die Ansicht Lesezeichen

Strg+F sucht

Im Menü Ansicht stellst du ein, wie die Datei gezeigt wird

STRG+0 = Ganze Seite STRG+1 = Originalgrösse STRG+2 = Fensterbreite

Im selben Menü kannst du folgendes einstellen:: Einzelne Seite,Fortlaufend oder Fortlaufend - Doppelseiten .. Probiere es aus, umdie Unterschiede zu sehen.

Navigation

Pfeil Links/Rechts: eine Seite vor/zurück

Alt+ Pfeil Links/Rechts: Wie im Browser: Vorwärts/ZurückStrg++ vergrößert und Strg+– verkleinert

Bestellung und Vertrieb für den BuchhandelBonner Pressevertrieb, Postfach 3920, D-49029 OsnabrückTel.: +49 (0)541 33145-20Fax: +49 (0)541 [email protected]/bestellen

Autoren gesuchtDer KnowWare-Verlag sucht ständig neue Autoren. Hast du ein Thema,daß dir unter den Fingern brennt? - ein Thema, das du anderen Leutenleicht verständlich erklären kannst?Schicke uns einfach ein paar Beispielseiten und ein vorläufigesInhaltsverzeichnis an folgende Adresse:[email protected] werden uns deinen Vorschlag ansehen und dir so schnell wiemöglich eine Antwort senden.

www.knowware.de

Page 3: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Inhalt 3

Vorwort des Verlags .............4

Grundlagen derNetzwerktechnik....................5

Das OSI-Modell ......................5

Netzwerktopologien ................7

Bustopologie .......................... 7Sterntopologie ........................ 7Ringtopologie......................... 7Baumtopologie ....................... 7

Vernetzungsarten undGeschwindigkeiten ...............8

10 - Base - 2 ........................... 810 - Base - T........................... 8100 - Base - T......................... 8Weitere Typen........................ 8

Protokolle im Netzwerk ..........8

NetBIOS................................. 8IPX ......................................... 8TCP/IP.................................... 9

Unterschiedliche Arten vonNetzwerken...........................9

Peer-to-Peer-Netzwerke ......... 9Client-Server-Netzwerke........ 9Mischumgebungen ................. 9

Grundlagen des TCP/IP-Protokolls .............................10

Funktion und Aufbau ............10

Adressierung im TCP/IP-Netzwerk ............................10

Ports - Die Services imNetzwerk ........................... 12

Einrichten eines IP-Netzwerks unter Linux .......13

Test des IP-Netzwerks ..........15

PING - Testen derVerbindung und desTCP/IP Protokoll Stacks.... 15

Fehlerquellen undDiagnosewerkzeuge............16

Die Nutzung vonNetzwerken ..........................19

Terminaldienste ....................19

Telnet ....................................19r tools – rsh und rlogin..........19s Tools – ssh und slogin........20

Die Nutzung vonDateidiensten......................21

File Transfer Protocol - ftp ...21rcp - Dateiübertragung mit

r-Tools................................24scp - Dateien sicher über

das Netzwerk kopieren.......24nfs – der transparente

Zugriff auf dasDateisystem über dasNetz....................................24

smbmount – der Zugriffauf Windowsfreigabenim Netzwerk.......................25

Mail, Netnews undWebdienste .........................25

Electronic Mail .....................25Usenet Netnews ....................25Webdienste ...........................26

Zeit- und Datumsdienste .......26

rdate ......................................26xntp .......................................26

Die Betreibung vonNetzwerkdiensten................27

inetd ......................................27

Die Betreibung vonTerminaldiensten ................28

Telnet ....................................28rsh & rlogin...........................28ssh .........................................28

Dateidienste ..........................30

File Transfer Protocol -FTP.....................................30

nfs – dasNetzwerkdateisystem .........32

Samba – Dateidienste fürWindowsclients..................32

Webdienste............................33

Web - Proxy, DNS-Server,Mailserver............................ 40

Web-Proxydienste................. 40

DNS-Server .......................... 40

Wie DNS funktioniert .......... 40BIND - die

Standardsoftware ............... 42

Mailserver ............................. 46

Dienste fürWindowsclients - Samba.... 49

Basiskonfiguration vonSamba ................................ 49

Sicherheit in Linuxnetzen... 52Was man nicht anbieten

will, braucht nicht zulaufen ................................. 52

Dienste reglementieren......... 52

Der Einsatz von Firewalls..... 54

Paketfiltering ........................ 54Masquerading oder NAT...... 54Application Level

Gateways ........................... 54

Firewalltechniken unterLinux .................................. 55

IP Filter unter Linux............. 55IP Chains anwenden............. 55

Page 4: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Vorwort des Verlags4

Vorwort des VerlagsDas Linux-Betriebssystem wurde praktisch seitseinem Entstehen über das Internet distribuiertund entwickelt. Von Anfang an hat dieses Systemdaher großen Wert auf seine Netzwerkfähigkei-ten gelegt – so großen Wert, dass zahlreicheServer im Internet unter Linux laufen.

Dieses Heft mag in manchen Passagen etwaskomplizierter erscheinen als viele bisherigeKnowWare-Hefte – das liegt aber an seinemInhalt. Der Betrieb eines Servers ist nun einmalnicht ganz so einfach wie die Arbeit an einemEinzelplatz-Rechner.

Dafür erhält man aber hier etliche Informationen,die einen guten Hintergrund bieten – auch wennman sich eher allgemein für Netzwerktechnologieinteressiert, ohne selber an das Betreiben einesServers zu denken.

Das Heft bietet eine Einführung in Grundlagen,Aufbau, Anwendung und Betrieb eines Netz-werks unter Linux. Logischerweise konzentrierenwir uns dabei auf das TCP/IP-Protokoll, dasNetzprotokoll im Internet.

Im ersten Hauptabschnitt betrachten wir dieGrundlagen der Netzwerktechnologie:

• dem vertikalen Aufbau eines Netzwerks, alsoden verschiedenen Schichten, deren Zusam-menwirken das Funktionieren eines Netz-werks ermöglicht

• dem horizontalen Aufbau, der Topologie, alsoder Art und Weise, wie die verschiedenenComputer hinter- oder nebeneinandergeschaltet werden

• den Vernetzungsarten

• den Netzwerkprotokollen

• sowie der Rolle als Client oder Server, die dereinzelne Computer spielt.

Der zweite Hauptabschnitt befasst sich mit demTCP/IP-Protokoll, und im dritten Hauptabschnittrichten wir unser eigenes Netzwerk ein undtesten es.

Der vierte Hauptabschnitt beschreibt, wie manein solches Netzwerk als Client benutzt; derfünfte, wie man es als Server betreibt. Unterdiesen Abschnitten sehen wir uns auch diverseDienste wie Email, ftp und World Wide Web ausbeiden Perspektiven an.

Der sechste Hauptabschnitt beschreibt ein Netz-werk aus der Perspektive eines Internet-Servers.Hier finden sich grundlegende Informationenüber Adressenverteilung, Proxydienste unddergleichen mehr.

Schließlich befasst sich der siebente und letzteHauptabschnitt mit Sicherheitsproblemen imNetzwerk – und wie man ihnen vorbeugen kann.

Ein Sachwortregister am Ende des Heftes hilftbei der Suche nach bestimmten Themen – beieinem Heft diesen Charakters ist seine Benutzungsehr empfehlenswert!

Der Autor Achim Schmidt ist erreichbar unterfolgender Adresse:

[email protected]

Viel Spaß bei der Lektüre,

der KnowWare-Verlag

Page 5: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Grundlagen der Netzwerktechnik 5

Grundlagen der NetzwerktechnikDie Netzwerktechnik hat ihren Grundstein in denGrossrechneranlagen vergangener Zeiten. Damalswar Vernetzung noch eine relativ simple Sache.

Ein Netzwerk bestand aus einem Großrechner-system, an das alle Terminals mittels seriellerLeitungen direkt angeschlossen waren:

Mit dem Einzug der Mikroprozessortechnik seit1971 wurden die Endgeräte zunehmens intelli-genter, was der Netzwerktechnik ganz neuePerspektiven eröffnete.Durch die neuen Techno-logien wurde es allerdings nötig, unterschiedlicheGeräte in einem gemeinsamen Netzwerk zuverbinden. So vielfältige Anforderungen konntenkaum durch einen Hersteller erfüllt werden. Alsomußte die Kommunikation in Netzwerken stan-dardisiert werden. 1978 wurde daher dasOSI(Open System Interconnection)-Modell derISO (International Standardisation Organisation)definiert, ein Referenzmodell für die Kommuni-kation innerhalb offener Systeme. Dieses Modellbot die Basis für einen gemeinsamen Standard.Damit war die Möglichkeit geschaffen, einentransparenten Datenaustausch zwischen denverschiedensten Systemen zu realisieren.

Leider läßt eine vollständige Umsetzung diesesStandards allerdings bis heute auf sich warten, daviele Hersteller sich immer noch ihrer eigenenLösungen bedienen.

Das OSI-ModellDas OSI-Modell basiert auf sieben Schichten.Jede Ebene oder jedes Layer definiert eindeutigeinen Teil der Kommunikation. Die Schichtensind hierarchisch angeordnet, eine höhere Schichtbaut also auf der jeweils niederen auf. Allerdingshandelt es sich dabei nicht etwa um einenImplementierungsleitfaden, sondern um einModell. So kann man einige wichtigeNetzwerkprotokolle auf lediglich vier Schichtenabbilden. Dennoch eignet sich dieses Modellhervorragend, um die Kommunikation inmoderenen Netzwerken zu erklären.

Page 6: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Grundlagen der Netzwerktechnik6

1. Physische Schicht (Physical Layer)Auf der untersten Ebene des Modells werden dieSpezifikationen des physischen Übertragungs-mediums geregelt, also der Übertragungswegevia Kabel, Funk oder Infrarot. Hier werden dieEigenschaften dieser Medien definiert.

2. Verbindungsschicht(Data Link Layer)Diese Ebene ist die unterste Ebene dergesicherten Kommunikation. Es wird hier dieVerbindung zum physischen Verbindungsmedi-um geregelt.

Der Data-Link Layer unterscheidet erneut zweiUnterebenen. Die Media Access Control oderMAC) genannte Ebene ist die untere Schicht, dieein Datenpaket von der höher gelegenen LogicalLink Control- oder LLC)-Schicht übernimmt undauf das Netzwerk weiterleitet.

3. Netzwerkschicht (Network Layer)Auf dieser Ebene werden die betriebssystem-spezifischen Netzwerkprotokolle definiert.Typische Netzwerkprotokolle dieser Schicht sindz.B. IP oder IPX. Ausserdem wird innerhalbdieses Layers das evtl. nötige Routing realisiert.

4. Transportschicht (Transport Layer)Die vierte Ebene des Modells stellt den kommu-nizierenden Anwendungen eine gesicherte undtransparente Punkt-zu-Punkt-Verbindung zurDatenübertragung bereit. Des weiteren hat sieeine verbindende Funktion zwischen den unterenund oberen drei Schichten.

5. Sitzungsschicht (Session Layer)Diese auch als Verbindungssteuerungsschichtbezeichnete Ebene hat die systemunabhängigeKontrolle des durch Schicht 4 bereitgestelltenlogischen Kanals zur Aufgabe.

6. Darstellungsschicht(Presentation Layer)Aufgabe dieser Schicht ist es, die Daten für diehöhere Schicht 7 zu interpretieren. Deswegenwird diese Ebene Anpassungsschicht genannt.

7. Anwendungsschicht(Application Layer)Die oberste Schicht des OSI-Modells definiertdie Schnittstelle für die eigentlichen Anwendun-gen. Sie ist also die Schnittstelle zwischenProgramm und Anwender.

Page 7: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Netzwerktopologien 7

NetzwerktopologienNetzwerke benutzen eine physische Verbindung,um eine Kommunikation aufzubauen. Dabei kannes sich um eine Kabel-, eine Funk- oder eineoptische Verbindung handeln. Die heute meistgenutzten Verbindungsmedien sind kabelbasierteNetzwerke. Die Art einer Verbindung bezeichnetman als Topologie. In lokalen Netzwerkenunterscheidet kennt man drei Grundformen derNetzwerkstruktur:

Bustopologie

In dieser Topologie werden alle Rechner an eingemeinsames Übertragungsmedium angeschlos-sen. Vorteile dieser Topologie sind geringeErstellungskosten für ein Netzwerk sowie seineleichte Erweiterbarkeit. Der Netzwerkbus wird inder Regel an den beiden Enden durch Endwider-stände abgeschlossen.

Sterntopologie

Hier werden alle Rechner an zentrale und aktiveNetzwerkkomponenten angeschlossen. Dieseaktiven Komponenten können Hubs, Switchesoder Server sein. Da jede Station ein eigenesKabel zum zentralen Verbindungsgerät benötigt,sind die Kosten hier etwas höher; das wird abermehr als ausgeglichen durch die größere Sicher-heit: ein defektes Kabel zieht hier keinenkompletten Ausfall des Netzwerkes nach sich.

Ringtopologie

Wie schon in der Bustopologie gibt es auch beider Ringtopologie ein gemeinsamesÜbertragungsmedium. In Gegensatz zum Busliegt hier ein in sich geschlossener Ring vor, anwelchem alle Stationen angeschlossen werden.Dabei übergibt eine Station die Daten an ihrenNachbarn, die diese Informationen weiterreichtbis zum Empfänger. In der Praxis wird dieseTopologie in neuen Netzwerken jedoch kaumnoch eingesetzt.

BaumtopologieDie Baumtopologie, die auch „Topologie derstrukturierten Verkabelung“ genannt wird, isteigentlich keine eigene Struktur, sondernvielmehr ein Zusammenschluß mehrerer Sterne,bei welchen die aktiven Komponenten gemäßden Spezifikationen der strukturiertenVerkabelung verbunden werden.

Page 8: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Vernetzungsarten und Geschwindigkeiten8

Vernetzungsarten undGeschwindigkeitenNatürlich gehört zu einem Netzwerk mehr als nurdie Topologie. In vielen Topologien könnenmehrere Geschwindigkeiten eingesetzt werden.Ich gehe hier lediglich auf die verbreitetsten ein.

10 - Base - 2Die Vernetzung nach 10–Base-2 ist eine ältereVernetzungstechnik. Sie basiert auf derBustopologie und verwendet ein Koaxialkabelvom Typ RG58 (auch Cheapernet oder Thin-Ethernet genannt). Die maximale Buslänge darfbei dieser Technik maximal 185 Meter betragen,kann aber durch Repeater um weitere Segmenteverlängert werden. Ein Netzwerk darf hierhöchstens 5 Segmente enthalten, von denenlediglich 3 mit Stationen bestückt sein dürfen.Die übrigen zwei Segmente können nur als reineVerbindungssegmente eingesetzt werden, z.B. umgrößere Entfernungen zu überbrücken.

Das Konzept hat seine Vorteile in der Einfachheitund in der günstigen Realisierung. Die Nachteileberuhen vor allem in den allgemeinen Nachteileneines Bussystemes und den Nachteilen vonDatenübertragungen über Koaxialkabel, dieleider eine gute Basis für elektrische Störungenbieten.

Die Übertragung erfolgt mit 10Mbit in derSekunde.

10 - Base - TEin 10-Base-T-Netzwerk folgt der Stern- oderBaumtopologie. Zum Einsatz kommen dabeimindestens Kabel der Kategorie 3, meist werdenaber heute Kabel der Kategorie 5 verwendet. DieDatenübertragung erfolgt über zwei verdrillteKupferadern. Dank dieser Technik ist die Daten-übertragung deutlich weniger fehleranfällig fürelektrische Feldstörungen.

Die Übertragungsgeschwindigkeit im Netzwerkbeträgt auch hier 10Mbit in der Sekunde.

100 - Base - TDie Vernetzung nach 100-Base-T folgt so gutwie komplett den Richtlinien der 10-Base-T-Vernetzung. Die Unterschiede liegen vor allem inden Kabeln, die hier der Kategorie 5 entsprechenmüssen. Die Datenübertragungsgeschwindigkeitbeträgt 100 Mbit in der Sekunde.

Weitere TypenNeben der Vernetzung mittels Kupferkabel gibtes natürlich auch Vernetzungstechniken auf derBasis von Glasfasern oder Funktechniken. Daraufgehe ich hier jedoch nicht ein, da derartigeVernetzungstechniken sehr teuer sind und inkleineren und mittleren Netzwerken nur seltenzum Einsatz kommen.

Protokolle im NetzwerkSoll eine erfolgreiche Kommunikation mit allenangeschlossen Stationen im Netzwerk realisiertwerden, müssen die angeschlossen Rechner diegleiche Sprache sprechen und und bestimmteKommunikationsregeln einhalten – was imGrunde ja bei jeder Kommunikationsart der Fallist. Die Regeln und Sprache im Netzwerk nenntman Kommunikationsprotokoll. Es gibt unter-schiedliche Protokolle für Netzwerke, die jeweilsSprachumfänge von unterschiedlichem Umfanghaben – und nicht jedes Protokoll ist für jedenEinsatzzwecke sinnvoll.

Gab es zu Anfang des Vernetzungszeitalters nochsehr viele Hersteller-abhängige Protokolle, dieeine Interoperabilität verhinderten, so haben sichmittlerweile einige Standards herausgebildet. ImPC-Netzwerk findet man derzeit hauptsächlichdrei verschiedene Protokolle: Netbios, IPX undTCP/IP.

NetBIOSDas NetBIOS – die Abkürzung steht für NetworkBasic Input/Output System – war die ursprüngli-che Schnittstelle für DOS-Computer zur Kommu-nikation in Netzwerken. Vorgestellt wurde diesesProtokoll 1981 von IBM. Auch heute noch wirdes hauptsächlich in der Windows-Welt benutzt.Sein Einsatzbereich sind vorwiegend kleinereNetzwerke. Einer der größten Mankos diesesProtokolles ist, dass es über keinerlei Routing-funktionen verfügt und somit für große oderverteilte Netzwerke nicht verwendbar ist.

IPXDas IPX-Protokoll findet man vorherrschend inNovell-Umgebungen. Novell wählte diesesProtokoll in den achtziger Jahren als Standard-protokoll für die Fileserver der Firma undverschaffte ihm damit einen großen Markt. IPX

Page 9: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Vernetzungsarten und Geschwindigkeiten 9

kann als Kommunikationsplattform auf allengängigen Medien aufsetzen und besitzt auchRoutingfunktionen, so daß es auch in verteiltenNetzwerken zum Einsatz kommt.

TCP/IPTCP/IP ist das derzeit wohl bekannteste Proto-koll. Es ist sehr ausgereift und verfügt über aus-gezeichnete Routing-Funktionen, wodurch essich hervorragend für den Einsatz in grossen undverteilten Netzwerken eignet. Da kann es dennauch nicht wundern, daß dieses Protokoll zurKommunikation im Internet eingesetzt wird.Durch die rasche Verbreitung des Internet hatsich auch das TCP/IP-Protokoll überall eingenis-tet. Früher sah man TCP/IP vor allem in derUnixwelt – heute ist es aber für so gut wie alleBetriebssysteme und Hardwarearchitekturen ver-fügbar, ja es hat sich fast zum Standardprotokollder PC-Netzwerktechnik entwickelt. Das Unix-derivat Linux hat einen großen Einsatzbereich imInternet, weswegen es großen Gebrauch vonTCP/IP macht – also werde ich auf diesesProtokoll später genauer eingehen.

Unterschiedliche Arten vonNetzwerkenEs gibt zwei Hauptformen von Netzwerken, dieman nch ihrer Funktionalität unterscheidet: Peer-to-Peer-Netzwerke und Client-Server-Netzwerke.

Peer-to-Peer-NetzwerkeBei Peer-to-Peer-Netzwerken sind alle Computerim Netzwerk gleichberechtigt. Es gibt hier keinenServer – alle Rechner können auf Resourcen alleranderen Stationen zugreifen und sie verwenden.

Dieser Netzwerktyp eignet sich jedoch nur fürkleinere Netzwerke. Dabei kann es sich typischum kleinere MS-Windowsumgebungen handeln.

Client-Server-NetzwerkeInnerhalb einer Client-Server-Struktur gibt esklar verteilte Aufgaben. Hier übernimmt ein odermehrere Rechner die Funktion eines Servers. Einsolcher Server hat vielfach ein anderes Betriebs-system als die angeschlossen Arbeitsstationen.Typische Serverbetriebssysteme sind Unix,Novell NetWare oder MS Windows NT Server.Die Arbeitsstationen werden dagegen meist unter

Windows 95/98, Windows NT Workstation oderApple's MacOS betrieben.

Aufgrund der klaren Aufgaben in solchenNetzwerken ist dieser Netzwerktyp für großeSysteme bestens geeignet, da man hier einezentrale Administration der wichtigen Systemehat und allen angeschlossenen Systemenidentische Funktionen bereitstellen kann.

MischumgebungenIn komplexeren und in sehr großen Umgebungenfindet man oftmals auch Mischumgebungen ausPeer-to-Peer- und Client-Server-Netzwerken.Hier gibt es Resourcen, die zentral bereitgestelltwerden, aber auch zumindest Teilnetzwerke,deren Arbeitsstationen auch Zugriffe auf andereArbeitsstationen haben.

Solche Umgebungen findet man vor allem inheterogenen Betriebssystemumgebungen. Sokönnen Windows-Arbeitsstationen bestimmteRessourcen für andere Benutzer freigeben, undArbeitsstationen auf Unixbasis können außerdemnoch – je nach Konfiguration – verschiedeneServerdienste anbieten.

Bei Licht betrachtet findet man nur ganz selteneine 'reine' Umgebung. De facto hat man es fastimmer mit gemischtem Umgebungen zu tun, beidenen die grundsätzliche Struktur in RichtungClient-Server geht.

Page 10: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Grundlagen des TCP/IP-Protokolls10

Grundlagen des TCP/IP-ProtokollsLinux und das TCP/IP-Protokoll sind eng verbun-den. Zwar ist das im Internet verwendete Netz-werkprotokoll älter, aber da der Vertrieb vonLinux immer über das Internet erfolgte, lag seitBeginn der Linux-Entwicklung ein Schwerpunktauf den TCP/IP-Netzwerkfunktionen.

Will man ein Netzwerk auf TCP/IP-Basiseinrichten und verwalten, sind zunächst einigeInformationen über dieses Protokoll erforderlich.

Funktion und AufbauTCP/IP ist ein Paket-orientiertes Protokoll – wasbedeutet, dass die Informationen in kleinerenPaketen verschickt werden. Jedes dieser Paketehat einen eindeutigen Aufbau: es besteht auseinem Datenteil sowie aus einem Paketkopf, demsogenannten Header, der Informationen für dieKommunikation sowie Informationen über denAufbau des jeweiligen Pakets enthält.

Sind die Informationen größer als der Datenteileines Paketes, werden sie auf mehrere Paketeaufgeteilt. Auf der Grundlage von Paketnummernim Header setzt der Empfänger die Pakete zusam-men. Während der Übertragung werden empfan-gene Pakete bestätigt. Kommt ein Paket defektan, erfolgt eine negative Bestätigung an den Sen-der, der das defekte Paket erneut sendet. Erfolgtnach einer festgelegten Zeit keine Bestätigungoder Timeout für ein Paket, wird es erneutgesendet.

Eine TCP/IP-Kommunikation sieht etwa so aus:

Zu beachten ist, dass TCP/IP sich aus zwei Teil-protokollen zusammensetzt: dem TransmissionControl Protocol TCP und dem Internet ProtocolIP. Während IP für die Adressierung und dieDatenübertragung zuständig ist, kümmert sichTCP um die korrekte Übertragung, indem esPrüfsummenberechnungen durchführt.

Adressierung im TCP/IP-NetzwerkSoll ein Protokoll alle Computer im Netzwerkansprechen, benötigt es ein eindeutiges Adressie-rungsschema. Grundlage dieses Systems sind dieberühmten IP-Adressen. Jeder Rechner erhälteine eindeutige Adresse, über welche er im Netz-werk ereichbar ist. Diese Adresse besteht auseiner Kombination von vier Bytes, die jeweilsdurch einen Punkt getrennt werden.

Um festzulegen, ob Sender und Empfänger imgleichen Netzwerk liegen, gibt es eine weitereKonfigurationsangabe im TCP/IP-Protokoll: diesogenannte Netzmaske –eine Bitmaske, die denHost- vom Netzwerkanteil trennt.

Mittels der eigenen IP-Adresse und der eigenenNetzmaske sowie der IP-Adresse des Partnerskann der Sender feststellen, ob es sich um einelokale Übertragung handelt: die IP-Adresse desSenders und die des Empfängers werden in einerlogischen UND-Operation mit der eigenen Netz-maske verknüpft. Sind die Ergebnisse dieser zweiOperationen gleich, liegt der Empfänger im eige-nen Netzwerk; sind sie ungleich, befindet er sichin einem entfernten Netzwerk, und das Paketwird an einen Gateway gesendet.

Das folgende Beispiel mag diesen Prozeßverdeutlichen:

Page 11: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Adressierung im TCP/IP-Netzwerk 11

• Senderadresse: 192.168.1.10(Binär: 1100 000. 1010 1000. 0000 0001. 0000 1010)

• Netzmaske: 255.255.255.0(Binär: 1111 1111. 1111 1111. 1111 1111. 0000 0000)

• Empfänderadresse: 192.168.2.2(Binär: 1100 0000. 1010 1000. 0000 0010. 0000 0010)

Soll ermittelt werden, ob der Empfänger im lokalen Netzwerk ist, werden folgende Verknüpfungendurchgeführt:

Verknüpfung 1:

11000000 10101000 00000001 00001010

&& 11111111 11111111 11111111 00000000

11000000 10101000 00000001 00000000

Verknüpfung 2:

11000000 10101000 00000010 00000010

&& 11111111 11111111 11111111 00000000

11000000 10101000 00000010 00000000

Vergleicht man die beiden Ergebnisse, wird klar,dass sie nicht identisch sind. Der Empfänger liegtnicht im eigenen Netzwerk– also muß dasaktuelle Paket an einen Router gesendet werden,der es an den korrekten Empfänger weiterleitet.

Genaugenommen wird durch die erste Verknüp-fung die eigene Netzwerkadresse ermittelt. DieseAdresse repräsentiert jeweils ein komplettesNetzwerk – also besitzen alle Rechner innerhalbeines Netzwerks die gleiche Netzwerkadresse.Diese ist immer die erste IP-Adresse einesAdressblocks. Sie nimmt also eine Sonderstel-lung ein und darf nicht an einen Computervergeben werden. Eine weitere besondere Rollehat die letzte Adresse eines IP-Adressblocks. Sieist die sogenannte Broadcast-Adresse. Auf dieseAdresse hören alle Rechner in einem Netzwerk –Sendungen an diese Adresse werden also vonallem Rechnern im jeweiligen Netzwerkentgegengenommen. Auch die Broadcastadressedarf nicht an einen Rechner vergeben werden.

Soll ein Computer mit Systemen außerhalb deseigenen Netzwerkes kommunizieren, benötigt erdie Adresse eines Routers, welcher nicht-lokalePakete an das jeweilige Zielnetzwerk weiterleitet.Diese Adresse nennt man Gateway.

Logischerweise muß das Gateway innerhalb deseigenen Netzwerkes liegen. Ein besonderes

Gateway ist ein Router, welcher alle Paketebekommt, die nicht lokal zustellbar sind oder fürderen Zielnetzwerk es kein explizites Gatewaygibt. Diesen Router nennt man Standard- oderDefault-Gateway.

Damit wären alle Eckdaten für eine TCP/IP-basierte Datenübertragung benannt: eigene IPAdresse, Netzmaske, Broadcast und DefaultGateway. Mit diesen Daten ist es möglich, einenRechner in ein TCP/IP-Netzwerk einzubinden.

Da die komplette Internetkommunikation aufdem TCP/IP Protokoll basiert, ist es logisch, dassgroße Teile des möglichen Adressraumes fürComputer im Internet reserviert sind. Damit esnicht zu Doppelbelegungen von Adressen imInternet kommt, werden diese von zentralenOrganisationen in den USA, Europa und Asienvergeben. Für Netzwerke ohne direkte Internet-anbindung (also hinter Firewalls oder in lokalenNetzwerken) sind spezielle Adressräume reser-viert, welche im Internet nicht benutzt werden.Diese Adressen sind im Internetstandard oderRFC – Request for Comment – 1918 definiert undlauten:

• 192.168.0.0. bis 192.168.255.255

• 172.16.0.0 bis 172.31.255.255

• 10.0.0.0 bis 10.255.255.255

Page 12: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Adressierung im TCP/IP-Netzwerk12

Für lokale Netzwerke sollte auf jeden Fall aufdiese Adressräume zurückgegriffen werden, auchim eigenen Interesse – z.B. um Probleme beieinem evtl. späteren Internetanschluß von Anfangan aus dem Weg zu räumen.

Ports - Die Services im NetzwerkNeben den IP Adressen gibt es innerhalb der IPKommunikation noch eine weitere Angabe: diesogenannten Ports, die mit Kanälen vergleichbarsind. Für jede Datenübertragung wird ein solcherKanal benutzt, der sich aus einem Quellport undeinem Zielport zusammensetz. Desweiterenwerden solche Ports benutzt, um bestimmteServices oder Dienstleitungen anzusprechen. Sokönnen etwa Serverprozesse an einzelne Ports'gebunden' werden. Dies bedeutet, dass Anfragenan einen bestimmten Kanal immer an einzugewiesenes Programm weitergeleitet werden,z.B. an eine Webserversoftware. Eine TCP / IP-Verbindung besteht also grundsätzlich aus einerUrspungsadresse, einem Ursprungsport, einerZieladresse und einem Zielport. Mittels dieserAngaben ist eine Übertragung zwischen zweiNetzwerkstationen genau identifizier- undzuordbar.

Einige dieser Ports sind standardmäßig bestimm-ten Anwendungenen vorbehalten. Diese sind inentsprechenden RFC's nachlesbar.

Page 13: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Einrichten eines IP-Netzwerks unter Linux 13

Einrichten eines IP-Netzwerks unter LinuxDie erfolgreiche Navigation durch ein Netzwerksetzt voraus, dass zunächst einmal ein solcheseingerichtet wurde. Wie man das macht, hängtvon der jeweiligen Distribution ab. Die meistenDistributionen liefern eigene Administrations-tools mit. So verwendet SuSE den eigenen YaST,RedHat hat zur Netzwerkkonfiguration das grafi-sche Tool netcfg, während Debian netconfig mit-liefert. Natürlich ist das interne Vorgehen bei alldiesen Tools relativ identisch – wie man dieSache auch von Hand erledigen kann. Allerdingswerden die TCP/IP-Daten meist schon bei derInstallation abgefragt.

Sehen wir uns nun die Einrichtung eines TCP/IP-Netzwerkes am Beispiel der RedHat-Distributionan, unter Verwendung des freien Tools linuxconf.Ich habe mich zu diesem Tool aus zwei Gründenentschloßen. Zum einen legt RedHat es standard-mäßig seiner Distribution bei und empfiehlt seineVerwendung, zum anderen tun das immer weitereDistributionen, so dass linuxconf auf dem Weg zueinem distributionsübergreifenden Administrati-onswerkzeug ist.

Die Einrichtung verläuft eigentlich recht einfach.Nach dem Start des Programms wählt man denMenüpunkt CONFIG | NETWORKING | CLIENT

TASKS | BASIC HOST INFORMATION

Im Menüpunkt BASIC HOST INFORMATION

werden die TCP/IP-Eckdaten, sowie die Datenzur Netzwerkkarte eingegeben. Damit ist derGrundstein zum Anschluß an ein IP Netzwerkgelegt:

Der Menüpunkt HOST NAME fragt nach demRechnernamen. Dieser kann frei gewählt werden.Über den Menüpunkt CONFIG MODE wirdfestgelegt, ob die TCP/IP-Daten manuell – undsomit fix – hinterlegt oder mittels DHCP oderBOOTP beim Systemstart zugewiesen werden.Hierbei ist folgendes zu beachten: soll derComputer Serverdienste anbieten, ist es wichtig,dass er immer unter der selben IP-Adresse zuerreichen ist. Hier sollte man eine manuelle undfixe Konfiguration wählen, oder dafür sorgen,daß der DHCP-Server dem eigenen Rechnerimmer die gleiche Adresse zuweist. Übernimmtder Rechner dagegen reine Workstation-Aufga-ben und bietet keinerlei Serverdienste im Netz-werk an, kann eine IP-Konfiguration via DHCPdurchaus sinnvoll sein – natürlich muß es imNetzwerk dann einen DHCP-Server geben, derentsprechende Anfragen beantwortet. Sinnvoll istdies vor allem in großen Netzwerken, da dann dieIP-Daten der Arbeitsstationen vom Administratorzentral festgelegt werden können.

Der Menüpunkt PRIMARY NAME + DOMAIN fragtnach dem sogenannten Full qualified DomainName, dem FQDN. Dies bedeutet Rechnernameund Domainenname. In meinem Beispiel arbeiteich am Rechner pan in der Domain wusel.de.Im Punkt ALIASES (OPT) kann man zusätzlicheAliasnamen angeben. Als nächstes werden dieIP-Adresse und die Netzwerkmaske des Rechnerserfragt.

Im weiteren Verlauf wird das Netzwerkgerät(„Net device“) erfragt. Gemeint ist hier dieNetzwerkkarte, welche mit der zugeordneten IP-Adresse arbeiten soll. Da meist nur eine Karte in

Page 14: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Einrichten eines IP-Netzwerks unter Linux14

einem Rechner ist, ist dies im allgemeinen dasGerät eth0 (Ethernetkarte Null). Anschließendmuß der Treiber der Netzwerkkarte benanntwerden. Im aktuellen Rechner wird eine günstigePCI-Netzwerkkarte mit RTL-Chipsatz benutzt,was dem Modul ne2k-pci entspricht. In linuxconfsind die Treiber aus einem Auswahlmenü auszu-wählen, in welchem die Kartennamen neben denTreibernamen aufgelistet sind:

Des weiteren müssen für ISA-Karten noch einigeDaten zur verwendeten Hardware angegebenwerden, wie IRQ und Basisadresse. Bei PCI-Karten werden diese Informationen vom Treiberselbst bei der Karte erfragt.

Sind alle Informationen eingegeben, werden dieDaten mit einem Druck auf ACCEPT übernom-men. Beim Verlassen von linuxconf werden dieKonfigurationsdaten aktiviert.

Voraussetzung für eine erfolgreiche Konfigura-tion ist jedoch, dass die benötigten Kartentreiberals Module vorliegen oder im Kernel enthaltensind. Des weiteren muß die Option TCP/IPNETZWORKING im Kernel enthalten sein. Dies istjedoch bei den generischen Kernels, die von denDistributoren geliefert werden, meist der Fall.

Mittels der getätigten Angaben ist eine Kommu-nikation in einem lokalen Netzwerk möglich.Soll der Rechner auch mit Systemen außerhalbseines eigenen Netzwerkes in Verbindung stehen,muss ein „Standardgateway“ angegeben werden– normalerweise ein Router, der über Informatio-nen zu weiteren Netzwerken verfügt und Paketeentsprechend weiterleitet.

Diese Angabe kann ebenfalls mittels linuxconfgesetzt werden, und zwar im MenüpunktROUTING AND GATEWAYS | DEFAULTS. Hier wirdeinfach die IP-Adresse des Gateways angegeben.

Natürlich ist linuxconf lediglich ein komfortablesFrontend, das die nötigen Daten in den relevantenKonfigurationsdateien des Linuxsystems spei-chert und ggf. aktiviert. Unter RedHat Linuxwerden die IP-Konfigurationsdaten in folgendenDateien gespeichert:

• /etc/sysconfig/network: Hier sindDaten wie Hostname und Gateway hinterlegt.

• Die eigentlichen Daten der TCP/IP-Konfigu-ration finden sich im Verzeichnis/etc/sysconfig/network-scriptsDort gibt es für jede Netzwerkkarte eine Dateiifcfg-eth – das X steht für die Nummerder Netzwerkkarte.Für die gezeigte Konfiguration in linuxconfsieht diese Datei ifcfg-eth0 aus wie folgt:

DEVICE="eth0"USERCTL=noONBOOT="yes"BOOTPROTO="none"BROADCAST=212.14.64.15NETWORK=212.14.64.0NETMASK="255.255.255.240"IPADDR="212.14.64.9"

Natürlich kann der Systemverwalter diese Datei-en auch von Hand editieren. Bei der Initialisie-rung des Netzwerkes greift das System direkt aufsie zu und startet über die darin enthaltenenInformationen das Netzwerk.

Page 15: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Test des IP-Netzwerks 15

Test des IP-NetzwerksIst das Netzwerk erfolgreich eingerichtet, sollteseine Funktionalität getestet werden. Für diesenZweck stellt die TCP/IP-Protokoll-Suite einigeleistungsfähige Befehle zur Verfügung.

PING - Testen der Verbindungund des TCP/IP Protokoll StacksPing ist ein Befehl, der mehrere Pakete an denKommunikationspartner sendet und die Zeit biszur Ankunft des jeweiligen Antwortpakets mißt.Es handelt sich um ein Kommandozeilen-orien-tiertes Programm, das als Parameter lediglich dieZiel-Adresse benötigt. Optional kann man demBefehl noch die Größe des zu sendenden Paketsmitteilen. Die Syntax lautet wie folgt, wobei dergesamte Befehl in einer Zeile steht:

Ping [-s Paketgröße]<Ziel-IP-Adresse>

Als Information liefert Ping die Größe des gesen-deten Paketes , die IP-Adresse des Zielrechnerssowie die Laufzeit des Paketes. Ist der Ping-Befehl erfolgreich, funktioniert zumindest diegrundsätzliche Kommunikation. Will man dieFunktion des eigenen TCP/IP-Protokollstacksprüfen, sollte man zunächst einmal die eigene IP-Adresse pingen. Gelingt dies, kann man davonausgehen, daß zumindest der eigene Stack richtigarbeitet. Schlägt der Ping fehl, sendet man imnächsten Schritt einen Ping auf die Loopback-Adresse. Diese ist bei jedem Rechner unter demIP-Protokoll die Adresse 127.0.0.1 – unterdieser Adresse erreicht man grundsätzlich deneigenen Rechner. Die Adresse wird beim Ein-richten des Protokolles automatisch konfiguriert.Gelingt dieser Ping, liegt vermutlich ein Fehler inder Konfiguration vor, nicht aber in derInstallation des Protokolls. Ein Beispiel:

[as@hades as]$ Ping 212.14.64.2

PING 212.14.64.2 (212.14.64.2): 56 data bytes

64 bytes from 212.14.64.2: icmp_seq=0 ttl=64 time=1.6 ms

64 bytes from 212.14.64.2: icmp_seq=1 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=2 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=3 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=4 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=5 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=6 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=7 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=8 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=9 ttl=64 time=1.5 ms

64 bytes from 212.14.64.2: icmp_seq=10 ttl=64 time=1.5 ms

--- 212.14.64.2 Ping statistics ---

11 packets transmitted, 11 packets received, 0% packet loss

round-trip min/avg/max = 1.5/1.5/1.6 ms

[as@hades as]$

Page 16: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Fehlerquellen und Diagnosewerkzeuge16

Fehlerquellen und DiagnosewerkzeugeNatürlich kann es auch beim Einrichten einesNetzwerkes zu Problemen kommen. Auch hierstellt Linux Hilfswerkzeuge zur Verfügung.

Die Prüfung der eigenen IP-Adresse sowie derLoopback-Adresse 127.0.0.1 mittels Pinghaben wir uns bereits angesehen. Klappte das,kann man davon ausgehen, dass das TCP/IP-Modul arbeitet. Die nächste Fehlerdiagnoserichtet sich auf die Konfiguration der IP Daten.

Ergibt eine Überprüfung dieser Daten keinenHinweis auf einen Fehler, könnte es ein Problemim Bereich der Netzwerkkarte geben. Also sollteman zunächst prüfen, ob der Netzwerkkarten-treiber richtig geladen ist. Bei aktuellen Kernel-versionen werden die Treiber im allgemeinen alsModul hinzugeladen – siehe auch Seite 13. Mitdem Befehl lsmod, der alle geladenen Moduleanzeigt, prüft man, ob das Modul geladen ist:

[as@hades as]$ lsmod

Module Pages Used by

autofs 2 1 (autoclean)

nfs 12 5 (autoclean)

ne2k-pci 1 2 (autoclean)

8390 2 [ne2k-pci] 0 (autoclean)

[as@hades as]$

In dieser Ausgabe ist das Modul ne2k-pci zusehen, das Modul für die entsprechende Netz-werkkarte. Es wäre möglich, dass das Modul mitfalschen Einstellungen z.B. der IRQ oder derBasisadresse arbeitet, die ja bei älteren ISA-Bus-Karten richtig konfiguriert sein müssen – imGegnsatz zu modernen PCI-Karten, wo mandiese Parameter nicht mehr einstellen muß.

Die Konfiguration der Kernelmodule erfolgt inder Datei /etc/conf.modules.

Sind auch diese Angaben richtig, sollte die Inter-facekonfiguration kontrolliert werden – alsoinwieweit die IP-Konfiguration der Netzwerk-karte richtig zugeordnet ist und die IP-Datenkorrekt an das Interface gebunden wurden.

Die Interfacekonfiguration kann mittels desBefehles ifconfig überprüft werden. Soll dieKonfiguration aller Interfaces angezeigt werden,übergibt man dem Befehl beim Aufruf die Option–a (wie all).

as@hades as]$ ifconfig -a

lo Link encap:Local Loopback

inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0

UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1

RX packets:43173 errors:0 dropped:0 overruns:0

TX packets:43173 errors:0 dropped:0 overruns:0

eth0 Link encap:Ethernet HWaddr 00:00:CB:23:61:48

inet addr:212.14.64.2 Bcast:212.14.64.15 Mask:255.255.255.240

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:514001 errors:0 dropped:0 overruns:0

TX packets:306174 errors:0 dropped:0 overruns:0

Interrupt:11 Base address:0xe800

Page 17: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Fehlerquellen und Diagnosewerkzeuge 17

Aus der Ausgabe geht hervor, dass der Rechnerüber zwei logische Netzwerkgeräte verfügt.

Zunächst steht hier das lo-Device, bei dem essich um das bereits erwähnte Loopback-Devicehandelt. Wie man sieht, ist diesem Gerät die IP-Adresse 127.0.0.1 zugeordnet, was ja auchkorrekt ist.

Des weiteren wird angezeigt, wieviele Paketeempfangen – RX – und gesendet – TX – wurden.Darüber hinaus werden die bei derKommunikation aufgetretenen Fehler angezeigt –Errors, Drops und Overruns. Im Idealfall tretennatürlich keine Fehler auf.

Als zweites Interface sieht man die Schnittstelleeth0, also die erste Ethernetkarte. Hier wirdebenfalls die komplette IP-Konfiguration ange-zeigt. Da es sich um ein physisches Interface undnicht um ein logisches handelt, sieht man hierneben statistischen Daten für empfangene, gesen-dete und fehlerhafte Pakete Hardwareeinstellun-gen wie IRQ und Basisadresse.

Sind die Hardwareparameter richtig eingestellt,sollte auch die angezeigte MAC-Adresse ange-zeigt werden, die Hardwareadresse derNetzwerkkarte. Ist diese Adresse auf einenunrealistischen Wert eingestellt, etwa

00:00:00:00:00:00 oder auchff:ff:ff:ff:ff:fe, kann man davonausgehen, dass falsche Daten für IRQ oderSpeicheradresse vorliegen.

Werden auf dem Ethernetgerät die richtigenHardwareeinstellungen angezeigt, obwohl vieleFehlermeldungen wie z.B. TX/RX-Errors auftre-ten, kann man auf ein defektes Übertragungsme-dium schließen. Da die Netzwerkkarte richtigerkannt und konfiguriert wurde, sollten also dieverwendeten Kabel oder aktiven Netzwerkkom-ponenten wie Hubs oder Switches überprüftwerden.

Endlich kommt es auch vor, dass sowohl dereigene Rechner als auch die Rechner im lokalenNetzwerk erreichbar sind, z.B. mittels Ping, nichtaber Rechner in entfernten Netzwerken. Indiesem Fall kann man meist auf Routingproble-me schliessen. Dies könnte im einfachsten Falleine falsche oder fehlende Einstellung für dasStandardgateway sein. Hier prüft man zunächstdie eigenen Routing-Einstellungen, was am ein-fachsten über den Befehl netstat geht. Sollen dieRouting-Einstellungen in einer numerischenAusgabe erscheinen, übergibt man die Parameter–rn (r für Routing, -n für numerisch):

[as@hades as]$ netstat -rn

Kernel IP routing table

Destination Gateway Genmask Flags MSS Window irtt Iface

212.14.64.0 0.0.0.0 255.255.255.240 U 1500 0 0 eth0

127.0.0.0 0.0.0.0 255.0.0.0 U 3584 0 0 lo

0.0.0.0 212.14.64.1 0.0.0.0 UG 1500 0 0 eth0

Die Routingtabelle sollte eine Route für daseigene, also das lokale Netzwerk haben sowieeine Route für das Loopback-Netzwerk –grundsätzlich 127.0.0.0. Die Route für daslokale Netzwerk sollte dabei auf die eigeneEthernetkarte zeigen – hier auf eth0 –, dieRoute für das Loopbacknetzwerk auf das lo-Interface. Bei beiden Netzwerken wird keinEintrag für ein Gateway benötigt.

Sollen Rechner außerhalb des eigenen Netzwerkserreicht werden, muß eine entsprechende Routeexistieren. Normalerweise wird hierzu einStandardgateway eingetragen, das alle Paketeerhält, die nicht örtlich zustellbar sind. Eine

Default-Route wird grundsätzlich mit dem Ziel0.0.0.0 gekennzeichnet. Das entsprechendeGatewaysystem muß innerhalb des lokalen Netz-werks liegen und als Gateway für diese Routeeingetragen sein – in unserem Beispiel also dasSystem mit der IP-Adresse 212.14.64.1

Da das Routersystem im eigenen Netzwerk seinmuß, zeigt diese Route natürlich auf das Interfaceeth0, da der Router über diese Schnittstelleerreichbar ist.

Fehlt dieser Eintrag, sollte man das Standardgate-way in der Netzwerkkonfiguration eintragen. Istdieser Eintrag korrekt, und es sind dennoch keine

Page 18: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Fehlerquellen und Diagnosewerkzeuge18

entfernten Systeme erreichbar, ist es möglich,daß der Fehler in einem entfernten Netzwerkliegt. Will man den Weg eines IP-Pakets zuseinem Ziel verfolgen, bedient man sich des

Befehls traceroute, der alle Router eines IPPaketes bis hin zu seinem Ziel anzeigt. AlsParameter übergibt man lediglich die Zieladresse:

[as@hades as]$ traceroute www.linuxinfo.de

traceroute to www.linuxinfo.de (192.67.198.4), 30 hops max, 40 byte packets

1 karlsfeld.de.wusel.NET (212.14.64.1) 2.574 ms 2.174 ms 2.190 ms

2 xave.Muenchen.ISAR.net (212.14.65.20) 33.014 ms 28.612 ms 32.808 ms

3 fe-0-0-0.Muenchen.ISAR.net (212.14.65.30) 30.185 ms 27.027 ms 25.688 ms

4 muenchen2.core.xlink.net (212.14.65.130) 26.907 ms 27.263 ms 26.816 ms

5 stuttgart.core.xlink.net (194.122.234.10) 31.474 ms 31.808 ms 31.100 ms

6 karlsruhe.core.xlink.net (194.122.227.129) 34.442 ms 35.152 ms 111.827 ms

7 karlsruhe.core.xlink.net (194.122.243.17) 33.121 ms 33.096 ms 33.488 ms

8 www.linuxinfo.de (192.67.198.4) 33.971 ms 34.601 ms 34.476 ms

Unser Beispiel gibt Auskunft über den Weg vomlokalen Rechner zu einem Webserver namenswww.linuxinfo.de. Hier werden unterwegssieben weitere Stationen berührt. Ist der Wegnicht erreichbar, weil eines der Systeme temporärnicht verfügbar ist, wird das aus der Ausgabe destraceroute-Befehles ersichtlich.

Es wurden hier nur einige Möglichkeiten zurFehlerdiagnose gezeigt. Natürlich können auchindividuelle Fehler vorliegen – in diesem Fall istder detektivische Spürsinn des Lesers gefragt...

Page 19: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Netzwerken 19

Die Nutzung von NetzwerkenSoviel zur Einrichtung eines Netzwerks. Das fol-gende Kapitel widmet sich seiner Nutzung ausder Anwendersicht. Wir beginnen mit der Client-seite und sehen uns zunächst die Nutzung derüblichsten Netzwerkservices an.

TerminaldiensteTerminaldienste werden alle Services genannt,die es ermöglichen, eine Terminalsession aufeinem entfernten Computer zu öffnen und soseine Programme und Ressourcen zu nutzen.

Terminaldienste sind textorientiert. Linux bietetmehrere Arten solcher Terminalverbindungen an.

TelnetTelnet ist eine sehr alte Anwendung der Netz-werktechnik. Es bietet eine komplette Terminal-nutzung des entfernten Rechners über das Netz-werk – lediglich Ein- und Ausgabe werden aufdas eigene System umgeleitet. Die Nutzung vonRessourcen und der Arbeitsprozess erfolgen aufdem entfernten Computer. Das ermöglicht zumeinen die Fernadministration von Systemen; zumanderen erleichtert es die Verteilung der Ressour-cen, die ja auf dem Rechner verfügbar sind, woein Programm gestartet wird. Der lokale Rechnerbenötigt lediglich die Ressourcen für die Ein-und Ausgabe. Werden Anwendungen auf zentra-len Servern gestartet, können die Arbeitsplatz-rechner geringer ausgestattet sein, ohne dass daseine Leistungseinbuße bedeutete.

Telnet ist ein Kommandozeilenprogramm. AlsParameter erhält es die IP-Adresse oder denNamen des enfernten Rechners, mit demVerbindung aufgenommen wird. Ein Beispiel:telnet www.linuxinfo.de

r tools – rsh und rloginWeitere Möglichkeiten der Terminalemulationbieten zwei Programme der sogenannten r-tools,einer Sammlung von Programmen für die kom-mandozeilenorientierte Nutzung eines Computersüber das Netzwerk. Das r steht hier für remote,also entfernt.

Das Programm rsh bietet eine Remote Shell,was bedeutet, dass man mit seiner Hilfe über dasNetzwerk eine Shell – also eine Terminalsession– auf einem entfernten Computer ausführen kann.Das besondere am rsh-Befehl ist die Möglich-keit, Variablen zu übergeben oder Befehle aufanderen Systemen auszuführen. Dadurch eignetsich dieser Befehl für Automatisierungen überdas Netzwerk: er veranlasst einen entferntenComputer dazu, einzelne Befehle abzuarbeiten.Werden keine Parameter mit dem Befehl über-mittelt, aktiviert er eine interaktive Shell auf demfernen Computer, wodurch man dann ganznormal interaktiv arbeiten kann. Wie in Termi-nalsitzungen via Telnet werden alle Ressourcendes ferngesteuerten Rechner außer der Ein- undAusgabe genutzt.

Die Syntax dieses Befehles lautet:rsh [Optionen] <Rechnername oder IPAdresse> [Befehl]

Standardgemäß versucht sich das Programm mitder Userkennung, also dem Benutzernamen anzu-melden, unter welcher man den Befehl auf demlokalen System aufgerufen hat. Will man sich aufdem fernen System unter einer anderen Kennunganmelden, erfordert das den Parameter –l<Username>. Ein Beispiel:

[as@hades as]$ rsh -l as 192.168.1.1Password:Last login: Thu Dec 9 20:56:44 from www.linuxinfo.de[as@trillian as]$

Wie man sieht, wird nach der Befehlsausführungnach dem Password des gewünschten Benutzersgefragt, das interaktiv eingegeben werden muss –worauf man dann in einer normalen Shell aufdem fernen Computer arbeitet.

Will man nun aber einzelne Befehle automatisiertauf anderen Rechnern ausführen lassen, ist eine

interaktive Passwordeingabe recht hinderlich.Das umgeht man, indem man jedem Rechnermitteilt, welcher Benutzer sich von welchemRechner aus ohne Password-Eingabe mittels derr Tools anmelden darf.

Diese Informationen werden im eigenen Home-verzeichnis in der Datei .RHOSTS hinterlegt.

Page 20: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Netzwerken20

Damit kann man bestimmten Benutzerkennungenvon festgelegten Rechnern aus den unproblemati-schen Anmeldevorgang ermöglichen. Die Dateienthält die Benutzerkennung des entferntenBenutzers sowie den Rechnernamen bzw. die IP-Adresse des Rechners, wo sich diese Kennungbefinden muss. Ein Beispiel: will man sich vonRechner A mit der eigenen Kennung as aufRechner B anmelden können, muss die .RHOSTS-

Datei des Users as auf Rechner Bfolgendermaßen aussehen: [as@trillian as]$ cat .rhosts

212.14.67.190 as

[as@trillian as]$

Wie man einen Befehl – hier ls –l – auf dementfernten Rechner ausführt, zeigt Beispiel 2:

[as@hades as]$ rsh -l as 212.14.67.189 ls -la

total 16

drwx------ 3 as as 1024 Dec 10 19:19 .

drwxr-xr-x 4 root root 1024 Sep 4 20:13 ..

-rw-r--r-- 1 as as 1422 Sep 4 20:13 .Xdefaults

-rw------- 1 as as 2851 Dec 10 19:21 .bash_history

-rw-r--r-- 1 as as 24 Sep 4 20:13 .bash_logout

-rw-r--r-- 1 as as 230 Sep 4 20:13 .bash_profile

-rw-r--r-- 1 as as 124 Sep 4 20:13 .bashrc

-rw------- 1 as as 17 Dec 10 19:19 .rhosts

-rw-rw-r-- 1 as as 3505 Sep 4 20:13 .screenrc

drwxr-xr-x 2 as as 1024 Nov 30 19:39 .ssh

[as@hades as]$

Wie man sieht, ist man vor und nach der Befehls-ausführung auf dem lokalen Rechner angemeldet.Lediglich der übergebene Befehl wird auf dementfernten Rechner ausgeführt.

Der rlogin-Befehl arbeitet analog zum rsh-Befehl, falls letzterer ohne Parameter aufgerufenwird. Er liefert die Kommandoshell auf demfernen Computer.

s Tools – ssh und sloginEin Nachteil der r-Tools – den sie übrigensmit Telnet teilen – ist, dass die Übertragung deseigenen Passwordes und der Daten über dasNetzwerk im Klartext erfolgt – wodurch dieKommunikation zwischen den Partnersystemenmittels entsprechender Werkzeuge 'abhörbar' ist.

Die Programme ssh und slogin gehören zuden s-Tools. Diese sind an die r-Toolsangelehnt und analog zu benutzen, haben abereinen großen Vorteil: sie arbeiten mit verschlüs-selter Kommunikation, wobei auch die Übertra-gung des Passwordes verschlüsselt ist.

Auch die Auswertung der .RHOSTS-Datei kannvom Systemadministrator erlaubt werden. Um sievor unbefugten Zugriffen zu schützen, sollte abergrundsätzlich nur der Eigentümer Lese- undSchreibzugriff auf sie haben. Manche Systemeverweigern ohnehin die Benutzung dieser Datei,falls andere Rechte auf sie vergeben wurden.

Page 21: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Dateidiensten 21

Die Nutzung von DateidienstenUnter Dateidiensten versteht man Services, diesich mit der Dateibearbeitung befassen. Natürlichkann man auch über das Netzwerk Dateidienstenutzen. Voraussetzung ist, dass ein Netzrechnerdiese Dienste anbietet – und dass man berechtigtist, diese Möglichkeiten zu nutzen.

File Transfer Protocol - ftpDas File Transfer Protocol – abgekürzt FTP – isteines der ältesten Protokolle im Internet. Es dientdazu, Dateien über das Netzwerk zu übertragen.Um das Protokoll zu nutzen, bedient man sicheines sogenannten FTP-Client – also eines Pro-gramms, das über dieses TCP/IP-basierte Proto-koll mit einen Server Verbindung aufnimmt unddie Dateiübertragung regelt.

Einer der ältesten FTP-Clients ist das Komman-dozeilen-orientierte Programm ftp, das man auffast jeder UNIX-Maschine findet. Dank seinerTextorientiertheit lässt es sich problemlos vonRechnern ausführen, auf die z.B. mittels sshüber das Netz zugegriffen wird. Natürlich gibt esheute auch FTP-Programme mit einem grafischenUserinterface oder GUI.

Das Programm ftp wird aufgerufen, indemman dem Programmnamen ftp als Parameterden Namen oder die Adresse des Zielrechnersübergibt. Auf dem Netzrechner meldet man sichmittels Benutzername und Kennwort an, woraufman in einer Art FTP-Shell arbeitet – siehe dasnachfolgende Beispiel. Die Shell stellt bestimmteAnweisungen zur Verfügung, von denen diewichtigsten in der Tabelle auf der nächsten Seitebeschrieben werden.

[as@hades as]$ ftp ftp.wusel.de

Connected to ftp.wusel.de.

220 ftp.wusel.de FTP server (Version wu-2.4.2-academ[BETA-18](1) Mon Aug 319:1

7:20 EDT 1998) ready.

Name (ftp.wusel.de:as): schmidt

331 Password required for schmidt.

Password:

230 User schmidt logged in.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp>

Page 22: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Dateidiensten22

Anweisung Parameter Erklärung

ls Anzeigen des aktuellen Verzeichnisinhaltes

cd Verzeichnisname Wechseln in das angegebene Verzeichnisdes fernen Rechners. Wirdals Name .. (zwei Punkte) angegeben, so wird in das nächsthöhereVerzeichnis gewechselt. Die Adressierung ist analog demShellbefehl cd.

bin Wechseln in den Binärmodus. Dies ist ratsam, falls binäre Dateien,meist Programmdateien, übertragen werden sollen

get Dateiname Übertragung der angegebenen Datei vom entfernten Rechner auf deneigenen

put Dateiname Übertragung des angegebenen Datei vom eigenen Rechner auf denentfernten. Dazu wird eine entsprechende Schreibberechtigung aufdem entfernten Rechner benötigt.

lcd Verzeichnisname Wechseln in das angegebene Verzeichnis auf dem eigenen Rechner.Alle Notationen des cd-Befehles der Shellumgebung sind hiernutzbar

pwd Zeigt das aktuelle Arbeitsverzeichnis auf dem entfernten Rechner an.

mget Dateinamen Überträgt eine oder mehrere Dateien vom entfernten Rechner an denlokalen Rechner. Dabei können mehrere Dateinamen angegebenwerden. Diese müssen durch ein Leerzeichen getrennt werden. Desweiteren ist die Nutzung von Jokerzeichen wie dem Sternchen zumErsetzen des Dateinamensrestes möglich.

mput Dateinamen Überträgt eine oder mehrere Dateien vom lokalen Rechner auf denentfernten. Die Parametrierung ist analog dem mget-Befehlmöglich.

help Befehlsname Zeigt eine Hilfe zu dem übergebenen ftp-Befehl an. Wird keinParameter übergeben, werden alle bekannten ftp-Anweisungenangezeigt.

bye Abmelden vom fernen Server

Page 23: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Dateidiensten 23

Das folgende Beispiel zeigt die Übertragung derDatei TEST-1 von einem entfernten auf den loka-len Rechner. Nach der ftp-Sitzung ist sie untergleichem Namen auf dem lokalen Rechner ver-fügbar, und zwar im aktuellen Arbeitsverzeich-nis. Da es sich um die Übertragung einer Pro-grammdatei handelt, wurde vor dem eigentlichenDownload, den der Befehl mget aktiviert, mitder Anweisung bin in den binären Übertra-gungsmodus gewechselt.

Wird das bei einer Programmdatei unterlassen,kommt sie unter Umständen nicht korrekt an, dadie ASCII-Übertragung des ftp-Protokolls nicht8-bit-konform arbeitet – was dazu führt, dassZeichen aus dem erweiterten Zeichensatz fehler-haft ankommen und das Programm unbrauchbarwird. Handelt es sich beim Download nicht umeine reine ASCII-Datei, sollte dieser Modus-wechsel immer vorgenommen werden – z.B.auch bei komprimierten Dateien.

[as@hades as]$ ftp ftp.wusel.de

Connected to ftp.wusel.de.

220 ftp.wusel.de FTP server (Version wu-2.4.2-academ[BETA-18](1) Mon Aug 319:1

7:20 EDT 1998) ready.

Name (ftp.wusel.de:as): schmidt

331 Password required for schmidt.

Password:

230 User schmidt logged in.

Remote system type is UNIX.

Using binary mode to transfer files.ftp> prompInteractive mode off.ftp> bin200 Type set to I.ftp> mget test-1local: test-1 remote: test-1200 PORT command successful.150 Opening BINARY mode data connection for test-1 (386 bytes).226 Transfer complete.386 bytes received in 0.0537 secs (7 Kbytes/sec)ftp> bye221 Goodbye.[as@hades as]$

Einige FTP-Server bieten einen speziellen Dienstan –das sogenannte anonyme (oder anonymous)ftp. Damit ist es möglich, Dateien eines Serverszu kopieren, obwohl man dort keine eigene User-kennung besitzt. Da man sich beim File TransferProtocol jedoch anmelden muß, wurden hierfürzwei spezielle Kennungen geschaffen: zum einender Benutzer anonymous, zum anderen das Kontoftp. Die meisten Server verlangen nach Eingabedes Benutzernamens ein Password. Dieses wirdoftmals nicht geprüft – und könnte somit beliebiggewählt werden. Es hat sich jedoch eingebürgert,

dass man seine eigene Emailadresse eingibt.Manche Server prüfen, ob es sich bei dem einge-gebenen Password um eine gültige Mailadressehandelt. Es ist also nicht etwa nur ein Gebot derHöflichkeit, sich an dieses ungeschriebeneGesetz zu halten – dieses Vorgehen versprichtauch den meisten Erfolg.

Nach einer solchen anonymen Anmeldung hatman einen Lesezugriff auf den angesprochenenFTP Server, normalerweise aber aus Sicher-heitsgründen keinen Schreibzugriff.

Page 24: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Dateidiensten24

rcp - Dateiübertragung mit r-ToolsDas Programm rcp ist ein weiterer Bestandteilder auf Seite 19 erwähnten r Tools. DiesesRemote Copy Program arbeitet ähnlich wie seinlokales Pendant cp. Sollen allerdings auf dieseWeise Dateien zwischen zwei Systemen übertra-gen werden, setzt das eine Benutzerkennung aufbeiden Rechnern voraus – ein anonymer Daten-transfer ist hier nicht möglich. Deswegen wirddieses Programm meist in lokalen Netzwerkengenutzt. Ein weiterer Vorteil des Programms ist,dass hier die .RHOSTS-Datei auf dem Netzrechnerausgewertet wird, wodurch man eine Password-abfrage umgehen kann. Also lässt sich diesesTool für automatisierte Aufgaben verwenden.

Als Parameter werden dem rcp-Befehl zummindesten Quell- und Zielort übergeben. ImGegensatz zum cp-Befehl, der ausschließlichlokal arbeitet, muss der rcp-Anweisung auch derNetzrechner mitgeteilt werden. Dies erreicht mandurch eine in Netzwerken übliche Notation fürDateipfade, die den Rechnernamen vor demlokalen Pfad auf dem Zielsystem und von diesemdurch einen Doppelpunkt getrennt einsetzt.

Der schematische Aufbau einer solchen Angabesieht so aus:Rechneradresse:Dateipfad

Rechneradresse kann hier eine IP-Adresse oderein gültiger DNS-Name sein. Wird keine Rech-neradresse angegeben, geht die Anweisung davonaus, dass es sich um einen Dateipfad auf demlokalen System handelt.

Im folgenden Beispiel wird eine Datei vomeigenen Rechner auf einen entfernten Rechnerind /tmp kopiert:[as@hades as]$ rcp test-1192.168.1.1:/tmp

Will man diesen Befehl mittels einer anderenBenutzerkennung auf dem entfernten Rechnerdurchführen, kann diese vor die Rechneradressegestellt werden. Dabei werden Benutzername undRechneradresse durch das @-Zeichen getrennt:[as@hades as]$ rcp test-1

[email protected]:/tmp

Existiert auf dem fernen System keine .RHOSTS-Datei, oder ist die eigene lokale Kennung dortnicht berichtigt, wird man zur Eingabe deskorrekten Passwords aufgefordert.

Natürlich können auch hier die Jokerzeichen '*'und '?' benutzt werden. In diesem Zusammen-hang sind zwei weitere Parameter des rcpKommandos interessant:

-p kopiert die angegebenen Dateien unterBeibehaltung der ursprünglichenDateirechte

-r veranlaßt den Befehl, rekursiv zu arbeiten– evtl. vorhandene Unterverzeichnissewerden also mitkopiert. Dies kannnatürlich nur dann geschehen, wenn manein komplettes Verzeichnis als Quelleangibt.

scp - Dateien sicher über das Netz-werk kopierenEin analoges Programm zum rcp-Befehl gibt esin den auf Seite 20 erwähnten S TOOLS. Esarbeitet im grossen und ganzen wie rcp, hat aberwie alle S TOOLS den Vorteil, dass sowohl Pass-wordeingaben als auch die komplette Dateiüber-tragung verschlüsselt ablaufen. So lassen sichDateien auch über größere Netzwerke sicherkopieren. Gerade im Internet-Zeitalter ist dieseine sehr sinnvolle Ergänzung.

nfs – der transparente Zugriff auf dasDateisystem über das NetzDas Network File System nfs macht es möglich,Dateisystemteile auf Netzrechnern transparent indas eigene Dateisystem zu integrieren. Dies istdann sinnvoll, wenn man dauernd mit Dateienarbeitet, die sich auf Rechnern im Netzwerkbefinden – will man nur einzelne Dateien oderVerzeichnisse kopieren, ist rcp bzw. scpvorzuziehen. Hier ist zu beachten, dass sich dieDateien physisch auf dem entfernten Rechnerbefinden – sie werden also nicht kopiert, sondernkomplett ins eigene Dateisystem integriert. EineAutorisierung findet auf IP-Ebene statt: auf demServer wird festgelegt, welche IP-Adressendiesen Dienst benutzen dürfen und welche Teiledes Dateisystemes über nfs zugänglich sind.

Technisch ist das Einbinden recht einfach. Zumeinen muß der Kernel dieses Protokoll unterstüt-zen – was die meisten Linuxkernels tun –, zumanderen muß der Server die Verbindung erlau-ben. Sind diese Voraussetzungen gegeben, kann

Page 25: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Dateidiensten 25

man das entfernte Dateisystem einfach mittelsdes mount-Befehles einbinden:

mount 192.168.1.1:/exports/home/home

Hier wird das Verzeichnis /exports/homedes Rechners 192.168.1.1 als lokales Ver-zeichnis /home ins eigene Dateisystem einge-bunden. Da dieses Protokoll einen tiefen Eingriffin die Administration des lokalen und des fernenRechners bedeutet, sollte der Befehl nur vomBenutzer root ausgeführt werden dürfen.

Will man einen solchen mount-Vorgangautomatisieren, so dass die gewünschtenVerzeichnisse beim Start des eigenen Rechnersunmittelbar eingebunden werden, wird einentsprechender Eintrag in der Filesystem-Tabelledes Rechners vorgenommen, also der Datei/ETC/FSTAB.

Allerdings hat das nfs-Protokoll einige grobeSicherheitsprobleme – es bietet hervorragendeArbeitsbedingungen für Hacker. Man sollte dasSystem also nur in einem lokalen Netzwerkbenutzen, das von einem öffentlichen Netzwerkwie dem Internet durch Schutzmechanismen wiez.B. eine Firewall getrennt ist.

smbmount – der Zugriff aufWindowsfreigaben im NetzwerkUnter Linux lassen sich auch Dateifreigaben vonWindowssystemen transparent in das eigeneDateisystem integrieren. Voraussetzung ist, dassdas Programmpaket Samba auf dem Linuxrech-ner installiert ist. Aus Sicherheitsgründen solltediese Möglichkeit wiederum dem Benutzer rootvorbehalten sein.

Dem Befehl smbmount wird als Parameter derRechnername der Windowssystemes, der Nameder zu mountenden Freigabe und der aktuelleWindows-Benutzer sowie sein Password überge-ben. Anschließend hat man von Linux aus freienZugang auf dieses Dateisystem mit allen lokalenTools und Programmen:smbmount //ntserver/unixexport/winimport -U ntuser -P ntpwd

Dieser Befehl mountet die Freigabe UNIXEXPORT

des NT-Servers NTSERVER – mit Hilfe derWindows-Benutzerkennung NTUSER und desentsprechenden Passwords.

Wiederum gilt, dass eine Benutzung dieser Mög-lichkeiten über offene Netzwerke gefährlich ist,da wie bei nfs die komplette Kommunikationunverschlüsselt stattfindet.

Mail, Netnews und WebdiensteElektronische Post, Usenet Netnews und dasWorld Wide Web – diese drei sind derzeit wohldie bekanntesten und meistgenutzten Dienste imInternet. Hier folgt nur ein kurzer Überblick –das KnowWare-Heft Start ins Internet befasstsich genauer mit diesem Thema.

Electronic Mail... dient zur Übermittlung von persönlichenNachrichten zwischen zwei oder mehrerenTeilnehmern. Dieser Dienst erfordert einenServer, der die ausgehende Post verschickt unddie ankommende Post aufbewahrt, bis sieabgeholt wird. Einen solchen Server nennt maneinen SMTP-Server – nach dem Simple MailTransfer Protocol, das Post transferiert, alsoüberträgt. Damit die eingegangenen Nachrichtvom Empfänger abgeholt werden können, bedarfes eines weiteren Dienstes, der nach dem hierzubenutzten Post Office Protocol als POP-Serverbezeichnet wird. Der Mailclient öffnet eineVerbindung zu diesem Server und überträgt dieeingegangenen Nachrichten auf die lokaleArbeitsstation.

Mailclients, die man auch Mail User Agentnennt, sind eine weit verbreitete Gattung. UnterLinux werden meist der Netscape Communicatorbenutzt, der X-Windows erfordert, oder dasProgramm Kmail, das die KDE voraussetzt. Diemeistbenutzten textbasierten Programme sindMUTT oder ELM.Diese Programme haben keinegrafische Oberfläche, was sie schnell macht –dafür muss man aber auf eine Inline-Anzeigebeigefügter Grafiken verzichten.

Usenet Netnews... sind die öffentlichen Foren im Internet. Washier veröffentlich wird, ist jedem zugänglich, undjeder kann es beantworten. Man benötigt nur denZugriff auf einen sogenannten Newsserver, derdie Nachrichten der öffentlichen Foren speichertund die Informationen zum Lesen mittels des NetNews Transport Protocol, des NNTP, anbietet.Außerdem gibt ein solcher Newsserver dieempfangenen Nachrichten an andere Newsserver

Page 26: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Nutzung von Dateidiensten26

weiter. Diese Server arbeiten in Gruppen zusam-men und gleichen sich gegenseitig ab – eine neueNachricht wird also sehr schnell weltweit verteilt.

Als Programm zum Lesen und Schreiben eigenerNewsartikel oder Postings kommt ein Newsclientzum Einsatz. Auch hier gibt es viele verschiedeneExemplare: mit grafischer Oberfläche z.B. denNetscape Communicator oder Knews, im text-orientierten Bereich tin, slrn oder nn.

WebdiensteDas WWW ist wohl der meistgenutzte Dienst imInternet. Es ermöglicht die multimediale Darstel-lung von Inhalten. Übrigens ist das WWW einMusterbeispiel für verteilte Systeme: einheitlichdargestellte Inhalte können hier von unterschied-lichen Servern kommen. Der Benutzer merkt diesnormalerweise gar nicht, da die Herkunft dereinzelnen Elemente nicht angegeben wird.

Zur Darstellung der Inhalte benötigt man einenWebbrowser. Der bekannteste ist der NetscapeNavigator, der zur Ntescape Communicator-Suitegehört.

Zeit- und DatumsdiensteMit Zeit- und Datumsdiensten werden System-datum und –zeit synchronisiert – und zwar nichtnur auf einem, sondern auf mehreren Rechnerngleichzeitig. Dies lässt sich auf verschiedeneWeisen erreichen, es setzt aber in jedem Fall dieExistenz eines Zeitservers voraus, der die aktu-elle Zeit über das Netzwerk bereit stellt.

rdateDas Programm rdate ist ein einfaches Tool, dasdie Zeit bei einem beliebigen Rechner abfragt.Außerdem bietet es die Möglichkeit, die erhalte-ne Zeit als eigenes Systemdatum zu setzen.

Das erfordert aber Systemverwalterprivilegien –mit anderen Worten muss das Programm also alsroot ausgeführt werden.

Als Parameter wird die IP-Adresse oder derName des Servers angegeben, von welchem dieZeit bezogen wird.

rdate verfügt über zwei Optionen:

Option Bedeutung-p zeigt das Datum des entfernten

Rechners an

-s setzt das empfangene Datum / Zeitals eigenes Systemdatum und -zeit

Da dieses Programm aus der Kommandozeileaufgerufen werden muss, eignet es sich vor allemfür die Synchronisation von Rechnern, die nurtemporär mit dem Internet verbunden sind, z.B.über eine Wählverbindung.

xntpDas xntp/ntp -Programm ist ein Daemon zurZeitsynchronisierung. Ein Daemon ist ein Pro-gramm, das konstant im Hintergrund aktiv ist.xntp/ntp eignet sich also in erster Linie fürSysteme mit ständiger Netzwerkanbindung.

Konfiguriert wird das Programm über die Datei/ETC/NTP.CONF

Die Datei für die Konfiguration als Client ist sehreinfach herzustellen– sie sieht so aus:peer ntp.isar.netpeer ntp2.isar.net

driftfile /var/run/ntp.driftpidfile /var/run/xntpd.pid

Soviel zur Nutzung von Netzwerkdiensten. Sehenwir uns nun an, wie man diese Dienste betreibt.

Page 27: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Betreibung von Netzwerkdiensten 27

Die Betreibung von NetzwerkdienstenServerdienste laufen im Hintergrund und werdenüber das Netzwerk mit den Clients in Verbindunggesetzt. Mittels definierter Protokolle übertragensie Informationen zwischen Server und Client.

Je nach Dienst wird ein entsprechendes Server-oder Anbieterprogram installiert und konfiguriert.

Zur Kommunikation benötigen diese Programmefeste Ports des IP-Protokolls, über die sie ange-sprochen werden. Serverprozesse können sich ent-weder unmittelbar an 'ihren' Port binden oder mitHilfe eines Startprogramms, das mit dem jeweili-gen Port verbunden ist und bei eingehendenVerbindungen das Serverprogramm startet.

inetdEin solcher 'Starthelfer' ist inetd. Er wird überdie Datei /ETC/INETD.CONF konfiguriert und istmit allen Ports verbunden. Wird ein Port angeru-fen, startet inetd das zugeordnete Programm.Da es als übergeordneter Starthelfer genutzt wird,also sozusagen als Serverprozess für viele Server-

programme, wird dieses Programm oftmals auchals Superserver bezeichnet.

Zu beachten ist, dass ein Port jeweils nur an einServerprogramm gebunden werden kann. Belegtein Programm unmittelbar einen Port, steht dieseralso nicht mehr für inetd zur Verfügung.

Die für inetd relevante Datei /ETC/INETD.CONF

enthält alle Angaben, die benötigt werden, umeinen Serverprozess zu starten:

• Serviceport

• Socket-Type

• das zu verwendende Protokoll

• benötigte Flags

• der User, unter welchen der Prozess läuft

• das auszuführende Serverprogramm

• evtl. benötigte Programmoptionen

Eine typische /ETC/INETD.CONF sieht so aus(Ausschnitt):

#

# inetd.conf This file describes the services that will be available

# through the INETD TCP/IP super server. To re-configure

# the running INETD process, edit this file, then send the

# INETD process a SIGHUP signal.

# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>

#

daytime stream tcp nowait root internal

daytime dgram udp wait root internal

ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l-a

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d

tftp dgram udp wait root /usr/sbin/tcpd in.tftpd

In dieser Datei sind einige Dienste für den Startvia inetd konfiguriert. Zeilen, die mit demHash(#)-Zeichen beginnen, sind Kommentareohne Einfluß auf den Ablauf des Programms.Grundsätzlich können fast alle Netzwerkdienstevia inetd gestartet werden. Der Vorteil diesesSystemes ist, daß das Programm die Netzwerk-seite bearbeitet – sein Nachteil, dass der Aufbau

einer Verbindung etwas länger dauert und dassdiese Startart bei intensiver Nutzung eines Diens-tes deutlich mehr Ressourcen benötigt. Daher istes manchmal sinnvoller, einen Serverprozess –z.B. den Webserver – direkt auf einen Port zubinden. Das Problem entsteht, weil für jedeVerbindung eines neuen Clients ein neuerServerprozess zu starten ist.

Page 28: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Betreibung von Terminaldiensten28

Die Betreibung von TerminaldienstenEin Terminaldienst oder eine Terminalemulationerlaubt einem Benutzer den Anschluss an denServer von einem beliebigen Netzwerkcomputeraus, um eine Terminalsession zu betreiben. Esgibt mehrere Möglichkeiten für Terminaldienste.

TelnetIm allgemeinen wird der Telnetserver telnetd)über inetd gestartet, also nicht unmittelbar aneinen Port gebunden. Eine besondere Konfigura-tion des Servers ist nicht nötig. Anpassungen derArbeitsumgebung können während einer

Terminalsession über Umgebungsvariableneingesetzt werden, die jeweils von der genutztenKommandoshell abhängen – z.B. bash. MitTelnet arbeitet man wie auf der lokalen Textkon-sole des Servers.

Allerdings ist zu beachten, dass die gesamte Kom-munikation des Telnetprotokolls unverschlüsseltüber das Netzwerk gesendet wird – also auchübertragene Benutzerkennungen und Passwords.

Die Konfigurationszeile in der /ETC/INETD.CONF

sieht im allgemeinen so aus:

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

rsh & rloginDie Services rsh und rlogin ermöglichenebenfalls die Ausführung von Befehlen oderganzen Terminalsessions über das Netzwerk.Eine nähere Erklärung dieser Dienste findet sichim Kapitel über die Clients auf Seite 19.

Wie Telnetd benötigen diese Programme keineweiteren Konfigurationsschritte – und leider läuftauch hier die Kommunikation unverschlüsselt ab.

Auch hier werden die Server über inetdgestartet, wofür folgende Konfigurationszeilenbenötigt werden:

shell stream tcp nowait root /usr/sbin/tcpd in.rshd

login stream tcp nowait root /usr/sbin/tcpd in.rlogind

sshWie auf Seite 20 erwähnt arbeitet das ssh-Proto-koll wie rsh und rlogin, nur verschlüsselt.Der SSH-Server sshd wird meist unmittelbargestartet; das bedeutet, dass er eine eigene Konfi-

gurationsdatei benötigt, die /ETC/SSHD_CONFIG,wo alle Optionen für den SSH-Server gespeichertsind. Die Konfigurationsparameter können dersshd-Man-Page entnommen werden. Diewichtigsten Parameter sind:

Parameter BedeutungPort <Nummer> sshd läuft auf dem hier angegebenen Port. Standardport ist der Post 22

ListenAddress<IP Adresse>

IP-Adresse, auf die der Server hört. Wird 0.0.0.0 angegeben, verbindetsich der Server mit allen konfigurierten IP-Adressen des Systems

HostKey<Path>

Path zur Datei mit dem Host-Schlüssel

PermitRootLoginyes|no

Werden Root-Logins akzeptiert?

IgnoreRhostsyes|no

Soll die Datei .RHOSTS ignoriert werden?

X11Forwardingyes|no

Soll X11-Weiterleitung ermöglicht werden?

AllowHosts Angabe über Systeme, die sich über ssh anmelden dürfen

DenyHosts Angabe über Systeme, die sich nicht über ssh anmelden dürfen

Ein Beispiel für eine typische Konfigurationsdatei folgt hier:

Page 29: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Die Betreibung von Terminaldiensten 29

Port 22

ListenAddress 0.0.0.0

HostKey /etc/ssh_host_key

RandomSeed /etc/ssh_random_seed

ServerKeyBits 768

LoginGraceTime 600

KeyRegenerationInterval 3600

PermitRootLogin yes

IgnoreRhosts no

StrictModes yes

QuietMode no

X11Forwarding yes

X11DisplayOffset 10

FascistLogging no

PrintMotd yes

KeepAlive yes

SyslogFacility DAEMON

RhostsAuthentication no

RhostsRSAAuthentication yes

RSAAuthentication yes

PasswordAuthentication yes

PermitEmptyPasswords yes

UseLogin no

AllowHosts *.linuxinfo.de mypc.wusel.de

DenyHosts lowsecurity.theirs.com *.evil.org evil.org

# Umask 022

# SilentDeny yes

Page 30: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

File Transfer Protocol - FTP30

DateidiensteUnter Linux kann man viele verschiedene Datei-dienste anbieten. Eine Beschreibung ihrer kom-pletten Bandbreite würde den Umfang diesesHeftes übersteigen – also begnügen wir uns mitden wichtigsten.

File Transfer Protocol - FTPDas ftp-Protokoll erlaubt Benutzern aus demNetzwerk den Zugriff auf Teile des Dateisystemseines Servers. Es ist für die reine Übertragungvon Dateien optimiert, eignet sich also nicht fürdas transparente Arbeiten oder eine Eingliede-rung ins eigene Dateisystem.

Der ftp-Dienst erfordert ein entsprechendesServerprogramm – den sogenannten FTP-Server.Es gubt mehrere Exemplare dieser Gattung. Einzur Zeit sehr beliebter Server ist proFTPd –erhältlich unter http://www.proftpd.org/.An seinem Beispiel wollen wir uns ansehen, wiedie Sache funktioniert.

proFTPd kann über inetd gestartet werdenoder eigenständig laufen. Letztere Variante sollteman ins Auge fassen, wenn der Server starkfrequentiert wird – wird er nur ab und zu benutzt,kann man die inetd-Methode benutzen.

Konfiguriert wird proFTPd über eine eigeneKonfigurationsdatei namens PROFTPD.CONF, diestandardmäßig im Verzeichnis /USR/LOCAL/ETC

liegt. Hier werden alle Einstellungen für denaktiven Serverprozess vorgenommen.

Nachfolgend erscheint eine Beispielkonfigurati-on. Allerdings leistet der proFTPd-Server vielmehr. Die kompletten Konfigurationsoptionensind auf der proFTPd-Homepage unterhttp://www.proftpd.org/ nachzulesen.

ServerName "LinuxInfo.DE FTP Server"

ServerType inetd

DefaultServer on

Port 21

Umask 022

MaxInstances 30

User nobody

Group nobody

<Directory /*>

AllowOverwrite on

</Directory>

<Anonymous ~ftp>

User ftp

Group ftp

UserAlias anonymousftp

MaxClients 10

DisplayLogin welcome.msg

DisplayFirstChdir .message

<Limit WRITE>

DenyAll

</Limit>

</Anonymous>

Die gezeigte Konfiguration läßt den Server aufPort 21 laufen und wird über inetd gestartet.Die Bedeutung der Parameter ist aus der nach-folgenden Tabelle ersichtlich:

Page 31: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

File Transfer Protocol - FTP 31

Parameter EigenschaftServerName Name des Servers, der beim Login eines Benutzers angezeigt wird.

ServerType gibt an, ob der Server alleine (standalone) oder via inetd (inetd)gestartet wird.

Port gibt an, auf welchem Port der Server läuft – FTP-Standard ist 21

Umask gibt an, welche Rechte neu übertragenen Dateien gegeben werden(Serverseitig)

MaxInstances Anzahl der maximal gleichzeitig möglichen Netzwerkverbindungen

User Angabe des Benutzers, unter dem der Server läuft

Group Angabe der Benutzergruppe, unter der der Serverprozess läuft.

<Directory /*>AllowOverwrite on<Directory>

Dateien innerhalb des FTP-Dateisystemes dürfen überschrieben werden.

<Anonymous ~ftp> Dieses Schlüsselwort leitet die Konfiguration für einen anonymenZugriff auf den FTP Server ein. Außerdem wird hier festgelegt, fürwelchen Benutzer der Server gilt und welches das Homeverzeichnisdieses Benutzers ist, das die Daten enthält.

User Benutzerkennung, unter der der anonyme FTP-Server laufen soll, sowieprimäre Loginkennung

Group Angabe der Gruppe, unter der der Zugriff für diesen Server läuft.

UserAlias Angabe alternativer Loginnamen – so bedeutet z.B. anonymous ftp,dass das Login anonymous analog zu ftp zu benutzen ist.

MaxClients Maximale Anzahl gleichzeitiger Netzwerkzugriffe auf den Server/Login

DisplayLogin Angabe einer Textdatei bzw. eines Pfades zu einer solchen, die jedemneu angemeldeten Benutzer angezeigt wird.

DisplayFirstChdir Angabe einer Textdatei, die einem Benutzer beim ersten Wechsel in dasVerzeichnis angezeigt wird, das diese Datei enthält.

<Limit WRITE> Schreibzugriff begrenzen

Deny All Jeglichen Schreibzugriff verbieten

<Limit> Begrenzung aufgehoben

</Anonymous> Ende der Anonymous-Konfiguration

Page 32: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

nfs – das Netzwerkdateisystem32

nfs – das NetzwerkdateisystemDas Netzwerkdateisystem nfs ermöglicht dietransparente Nutzung der Dateisystemstruktureines fernen Rechners über das Netzwerk. DieKonfiguration des Servers und die Freigabe desbetreffenden Dateisystembereichs ist denkbareinfach – der nfs-Server wird über ein weiteresHilfsprogramm, den sogenannten Portmapper,gestartet.

Die Clientseite wurde auf Seite 24 beschrieben.Der NFS-Server muss wissen, welche Bereiche

des eigenen Dateisystemes anderen Netzwerk-stationen für welche Versionen freizugeben sind.Die Zuordnung wird in der Datei /ETC/EXPORTS

vorgenommen, mittels der Angabe des oder derBereiche, zu denen, sowie des oder der Rechner-namen bzw. IP-Adressen, denen der Zugrifferlaubt ist. Die komplette Identifizierung im nfserfolgt auf IP-Basis – es können also keineBenutzernamen oder Passwords verwendetwerden. Außerdem erfolgt hier die Definitionvon Optionen, die für diese Struktur geltensollen.

/tftpboot -network 192.168.10.0 -mask 255.255.255.0

/cdrom -network 192.168.10.0 -mask 255.255.255.0

/exports/home –network 192.168.2.0 –mask 255.255.255.240

/exports/info www.linuxinfo.de web2.linuxinfo.de mail.wusel.de(ro)

Diese Datei bewirkt folgendes: alle Rechner ausdem Netzwerk 192.168.10.0 mit der Netz-werkmaske 255.255.255.0 haben Lese- undSchreibezugriff auf den Verzeichnisbaum/TFTPBOOT. Dasselbe gilt für die Verzeichnis-struktur unterhalb des Verzeichnisses /CDROM.Auf die Struktur /EXPORTS/HOME dürfen nur dieRechner aus dem Netzwerk 192.168.2.0 mitder Netzwerkmaske 255.255.255.240zugreifen, auf die Struktur /ETXPORTS/INFO nurWWW.LINUXINFO.DE, WEBS.LINUXINFO.DE undMAIL.WUSEL.DE. Allerdings hat der RechnerMAIL.WUSEL.DE nur Lesezugriff, was angegebenwird durch ro = readonly.

Nach einem erfolgreichen Neustart des mountdund des nfsd können diese Dateien via nfsüber das Netzwerk gemounted werden, vorausge-setzt, die Anfrage kommt von einer zugelassenenIP-Adresse.

Samba – Dateidienste fürWindowsclientsNatürlich gibt es unter Linux auch die Möglich-keit, Dateisystembereiche für Windowsmaschinenbereitzustellen – mit dem Programm Samba, daseine Linux-Dateisystemstruktur als Windowsfrei-gabe exportiert. Samba läuft als eigener Service,der unmittelbar an die entsprechenden TCP/IP-Ports gebunden ist. Der Sambaserver wird in derDatei /ETC/SMB.CONF konfiguriert. Da dieseKonfigurationsdatei recht komplex ist und Sambadeutlich mehr kann als nur Dateidienste fürWindowsnetze bereitzustellen, erhält diesesProgramm sein eigenes Kapitel auf Seite 49.

Page 33: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Webdienste 33

WebdiensteDas World Wide Web (WWW) hat sich in letzerZeit zum Dienst der Dienste im Internet entwi-ckelt. Viele Anwender kennen, abgesehen vonMail und Web, gar keine anderen Dienste.

Nachfolgend werden Einrichtung und Betriebeines eigenen Webservers beschrieben. Diederzeit wohl bekannteste Serversoftware fürWWW-Dienste ist der APACHE-Webserver, derunter http://www.apache.org/ erhältlichist. Außer seiner weiten Verbreitung hat diesesProgramm den großen Vorteil, Open-Source-Software zu sein, was bedeutet, dass seineQuelltexte für jedermann einsichtig sind.

Auch ihre Leistungsfähigkeit spricht für dieseSoftware. APACHE verfolgt ein modularesPrinzip, das Programm vermag sich also an dengeplanten Einsatzzweck anzupassen. Es gibtweiterhin zahlreiche Zusatzmodule, die dieLeistungsfähigkeit des Programms extremsteigern. Eine Übersicht der verfügbaren Modulefindet man im World Wide Web unter derAdresse http://modules.apache.org/.Diese Module können entweder unmittelbar indas Programm eingebunden oder dynamischwährend der Laufzeit hinzugeladen werden.

Der APACHE-Server läuft im allgemeinen alseigener Server und bindet sich selbst an denkonfigurierten Port. Die zentrale Konfigurations-datei des Programms ist sehr umfangreich undkomplex. Wir beschränken uns nachfolgend aufdie wesentlichen Konfigurationsoptionen. Aufdie mögliche Konfiguration als Webproxy gehenwir hier nicht eingehen.

Die Konfigurationsdatei, die HTTPD.CONF heißt,sollte laut der Apache-Source-Distribution imVerzeichnis /USR/LOCAL/APACHE/CONF/ liegen.Da die Software vielfach mit der Linuxdistribu-tion ausgeliefert wird, liegt sie möglicherweise ineinem anderen Verzeichnis. Ein Blick in dieDokumentation der jeweiligen Distribution hilfthier weiter.

In dieser Konfigurationsdatei werden alle zurLaufzeit benötigten Einstellungen getroffen.Nachfolgend werden die wichtigsten Optionenanhand einer Beispielkonfiguration beschrieben.

Page 34: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Apache-Konfiguration34

##

## httpd.conf -- Apache HTTP Server Basiskonfiguration (basierend auf

## der Apacheversion 1.3.11

##

## [email protected]

##

## Es handelt sich hier lediglich um eine Basiskonfiguration fuer den

## Betrieb eines einfachen Webserver.

## Weitergehende Dokumentationen sind unter

## der URL http://www.apache.org/ zu finden.

### Section 1: Globale Einstellungen

## Die Anweisungen in diesem Bereich betreggen alle Operationen des

## Apache.

## ServerType kann inetd oder standalone sein. Bei inetd wird der apache

## ueber diesem gestartet und es muss ein entsprechender Eintrag

## in der /etc/inetd.conf vorhanden sein. Performanter und gaengiger

## ist der eigenstaendige Serverbetrieb (standalone)

ServerType standalone

## ServerRoot: Unterhalb dieses Verzeichnisses sind die Dateien

## des Servers (also die Software selbst) sowie seine Konfigurations

## Dateien zu finden. Am Ende darf keine / stehen !

ServerRoot "/usr/local/apache"

## PidFile: Pfad zur PID - Datei (dort wird die Prozessnummer gespeichert)

PidFile /usr/local/apache/logs/httpd.pid

## Timeout: Zeit in Sekunden zu einer Zeitueberschreitung

Timeout 300

## MaxKeepAliveRequests: Die max. Anzahl an gleichzeitigen Anfragen.

## Wird dieser Wert auf 0 gesetzt, ist die Anzahl unbegrenzt.

MaxKeepAliveRequests 100

## KeepAliveTimeout: Anzahl von Sekunden, welche auf dieser Verbindung

## auf den naechsten Request vom gleichen Client gewartet wird.

KeepAliveTimeout 15

## Angabe der mindest und maximalzahl an 'Spare' Serverprozessen. Um genug

## Reserven zu haben, sollten immer mehr Prozesse als Anfragen laufen.

Page 35: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Apache-Konfiguration 35

MinSpareServers 5

MaxSpareServers 10

## Anzahl der Inital - Serverprozesse (beim starten des Webservers)

StartServers 5

## Anzahl der maxmimal gleichzeitig moeglichen Verbindungen

MaxClients 150

## Anzahl der maximalen Kinderprozesse pro Serverprozess

## Einen unbegrenzten Wert erreicht man mit dem Wert 0

MaxRequestsPerChild 0

## Listen: Diese Angabe kann den Server auf einen bestimmten Port

## oder eine bestimmte IP-Adresse mit Portangabe binden.

## Beispiel:

## Listen 3000

## Listen 12.34.56.78:80

## BindAddress: Mittels dieser Angabe kann der Server auf eine

## bestimmte IP-Adresse binden, oder auf alle konfigurierten

## IP Adressen ( * )

BindAddress *

### Section 2: Hauptserverkonfiguration

## Alle Einstellungen in dieser Gruppe betreffen den Hauptserver

## Port: Der Port, auf welchen ein standalone Server hoert.

Port 80

## Angabe des Benutzers und der Gruppe unter welcher die Serverprozesse

## laufen sollen.

User nobody

Group nobody

## ServerAdmin: Angabe der Emailadresse des Serveradministrators

ServerAdmin webmaster@deine_domain.de

## DocumentRoot: Dies ist das Basisverzeichnis fuer die Dokumente, welche

## der Webserver verarbeiten soll.

DocumentRoot "/usr/local/apache/htdocs"

Page 36: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Apache-Konfiguration36

## Jedes Verzeichnis, auf welches der Server Zugriff hat, kann mit

## speziellen Zugriffsrechten versehen werden.

<Directory />

Options FollowSymLinks

AllowOverride None

</Directory>

## Hier sollten die Rechte fuer das Dokumentenverzeichnis gesetzt werden

<Directory "/usr/local/apache/htdocs">

## Moegliche Optionen sind: None, All oder beliebige Kombinationen aus

## Indexes, FollowSymLinks, ExecCGT oder Multiviews.

Options All

## Diese Angabe kontrolliert die Moeglichkeiten der .htaccess Datei,

## mit welcher man verschiedene Einzelheiten auch zur Laufzeit des

## Servers aendern kann.

## Moegliche Werte sind: All oder Kombinationen aus Options, FileInfo,

## AuthConfig und Limit

AllowOverride All

## Kontrolliert den Zugriff

Order allow,deny

Allow from all

</Directory>

## UserDir: Webhome der lokalen Benutzer. Dies liegt immer im

## Homeverzeichnis jedes lokalen Users. Der Inhalt ist ueber

## die URL ~benutzer vom Web her erreichbar.

UserDir public_html

## DirectoryIndex: Name der Dateien, welche als Startdokumente

## genutzt werden sollen.

DirectoryIndex index.html index.htm index.cgi index.php index.php3

## AccessFileName: Der Name der Kontrolldatei, welche bei jedem## Verzeichniszugriff ausgewertet wird.

AccessFileName .htaccess

Page 37: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Apache-Konfiguration 37

## Die folgenden Zeilen schuetzen die .htaccess Datei vor unberechtigtem

## Zugriff

<Files ~ "^\.ht">

Order allow,deny

Deny from all

</Files>

## TypeConfig beschreibt wo die mime.types Datei liegt

TypesConfig /usr/local/apache/conf/mime.types

## DefaultType gibt den standard MIME Type an. Normalerweise

## ist dies text/plain

DefaultType text/plain

## HostnameLookups: In den Logdateien werden die Rechnernamen (on) oder

## die Adressen (off) mitprotokolliert.

HostnameLookups On

## ErrorLog: Pfad zur Fehlerlogdatei

ErrorLog /usr/local/apache/logs/error_log

## LogLevel: gibt die Anzahl der protokollierten Informationen an.

## Moegliche Werte sind: debug, info, notice, warn, error, crit, alert und

## emerg

LogLevel warn

## Die folgenden Anweisungen definieren einige Aliases fuer den

## Aufbau von Logzeilen

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""combined

LogFormat "%h %l %u %t \"%r\" %>s %b" common

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{User-agent}i" agent

## Pfad und Typ (vorher definierter Alias) der Access_logdatei

CustomLog /usr/local/apache/logs/access_log combined

## Server soll bei Fehlern oder Hinweisen seine Signatur anzeigen

## Moegliche Werte sind: On, Off, EMail

ServerSignature On

Page 38: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Apache-Konfiguration38

## Aliases: Hier koennen mehrere Aliases definiert werden. Das Format

## ist: Alias FakeName Echter_pfad

Alias /icons/ "/usr/local/apache/icons/"

<Directory "/usr/local/apache/icons">

Options Indexes MultiViews

AllowOverride None

Order allow,deny

Allow from all

</Directory>

## ScriptAlias: Diese Angabe gibt an, welches Verzeichnis

## ausfuehrbare Dateien enthaelt, auf welche vom Web her

## zugegriffen werden kann.

ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/"

## Hier werden dann die Rechte fuer dieses Verzeichnis gesetzt

<Directory "/usr/local/apache/cgi-bin">

AllowOverride None

Options None

Order allow,deny

Allow from all

</Directory>

## Diese AddIcon* Anweisungen sagen dem Server, welches Icon wann zu

## zeigen ist.

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*

AddIconByType (IMG,/icons/image2.gif) image/*

AddIconByType (SND,/icons/sound2.gif) audio/*

AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe

AddIcon /icons/binhex.gif .hqx

AddIcon /icons/tar.gif .tar

AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv

AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip

AddIcon /icons/a.gif .ps .ai .eps

AddIcon /icons/layout.gif .html .shtml .htm .pdf

AddIcon /icons/text.gif .txt

AddIcon /icons/c.gif .c

AddIcon /icons/p.gif .pl .py

Page 39: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Apache-Konfiguration 39

AddIcon /icons/f.gif .for

AddIcon /icons/dvi.gif .dvi

AddIcon /icons/uuencoded.gif .uu

AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl

AddIcon /icons/tex.gif .tex

AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..

AddIcon /icons/hand.right.gif README

AddIcon /icons/folder.gif ^^DIRECTORY^^

AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

## AddType erlaubt das Hinzufuegen von eigenen MIME Types.

AddType application/x-tar .tgz

## AddHandler erlaubt das zuordnen von Dateiendungen zu

## sog. Handlern also einem bestimmten Dateityp. Hier werden

## Alle Dateien, welche auf .cgi enden, als CGI Programm

## gekennzeichnet.

AddHandler cgi-script .cgi

Zur Steuerung des Servers bringt die Softwareein Kontrollprogramm namens APACHECTL mit,das meist in /USR/LOCAL/APACHE/BIN liegt. Eswird mit dem Parameter start aufgerufen.Außerdem gibt es noch die Parameter restartzum Neueinlesen der Konfigurationsdatei undstop zum Beenden des Servers.

Das Kontrollprogramm kennt weitere Parameterfür Fehlerdiagnosezwecke: die Parameterstatus, fullstatus und graceful.

Page 40: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Web-Proxydienste40

Web - Proxy, DNS-Server, MailserverWeb-ProxydiensteDer Betrieb eines Proxyservers kann interessantsein: zum einen kann er dazu dienen, ein lokalesNetzwerkes vom Internet abzukoppeln, zum ande-ren spart er Mengen an zu übertragenden Daten,da er Webinhalte zwischenspeichern kann.

Ein Proxyserver nimmt Anfragen eines Cliententgegen und sucht die angefragten Seiten inseinem eigenen Zwischenspeicher oder Cache.Hat er die gewünschten Informationen nichtselbst verfügbar, ruft er sie aus dem Internet ab,speichert sie und sendet eine Kopie an denanfragenden Rechner. Wird die selbe Seite einweiteres Mal angefordert, kann er die Informatio-nen dann unmittelbar selbst liefern. Neben denBandbreiten-Einsparungen bietet das auch einenzusätzlichen Geschwindigkeitsvorteil – einlokaler Rechner antwortet schneller als einentferntes System im Internet.

Einer der derzeit unter Linux üblichsten Proxiesist das Programm squid. Dabei handelt es sichwieder um freie Software, die, falls sie nicht zumLieferumfang der benutzten Linuxdistributiongehört, aus dem Internet bezogen werden kann.

Konfiguriert wird das Programm über eine zen-trale Konfigurationsdatei namens SQUID.CONF.Hier können vielfältige Einstellungen getroffenwerden. So ist voll konfigurierbar, wer den Proxybenutzen darf und ob eine Nachprüfung aufgrundder zugreifenden IP-Adresse oder mittelsBenutzername und Password erfolgen soll.Natürlich sind auch bestimmte Webinhaltesperrbar, so dass man an zentraler Stelle denZugriff auf Systeme im Internet regeln kann.

Die Konfigurationsdatei ist sehr umfangreich,aber auch sehr gut kommentiert, so dass hierkeine ausführliche Behandlung erforderlich ist.Zu beachten ist jedoch, dass der Server so konfi-guriert wird, dass nur Rechner aus dem eigenenLocal Area Network oder LAN den Proxy benut-zen dürfen, fremde dagegen abgewiesen werden.

DNS-ServerDNS Server spielen im Internet wie in größerenlokalen Netzwerken eine wichtige Rolle. Ihnenobliegt die Verwaltung des Namensraumes desNetzwerks. Das erfordert zunächst einmal eine

Erkärung der Funktionsweise des DNS. Nachfol-gend sehen wir uns den Aufbau eines eigenenDNS-Servers an.

Wie DNS funktioniertDie Adressierung in einem TCP/IP-basiertenNetzwerk läuft über IP-Adressen. Da wir alsMenschen uns diese aus vier Bytes bestehendenZahlen nur schwer merken können, wurde einNamenssystem erschaffen: das Domain NameSystem oder DNS.

Das DNS gibt die IP Adressen in der Form vonNamen wieder und stellt also eine SchnittstelleMensch-Maschine dar, die einem Benutzer deneinfachen und komfortablen Zugriff auf andereSysteme ermöglicht. Da der Namensraum imInternet sehr groß ist, arbeitet DNS mit einersystematischen Strukturierung jedes Rechner-namens in verschiedene Namensteile. Eine volleIP-Adresse besteht aus einem Rechnernamen,einer Subdomain sowie einer Top Level Domain.In größeren Netzwerken können zwischenRechnernamen und Sub- oder 2nd Level-Domainzusätzliche Sub-Domains stehen. Als Trennzei-chen zwischen den einzelnen Namensteilen wirdein einfacher Punkt benutzt.

Ein kompletter Rechnername sieht also z.B. soaus: trillian.de.wusel.net

Dabei ist trillian der eigentliche Hostname,während das zwischengeschobene de eineSubdomain beschreibt. Die 2nd Level-Domain isthier wusel, während net die Top Level-Domain ist.

Diese Unterteilung des Namens hat keineoptische, sondern rein organisatorische Gründe:an jedem Trennpunkt kann die administrativeVerantwortung verlagert werden. Dadurch ist dasDNS eine weltweit verteilte Datenbankanwen-dung, die über keine zentrale Verwaltungsstellealler Daten verfügt. Jeder Nameserver kann einenTeil des Namensraumes eigenverantwortlichverwalten.

Die Topleveldomains werden von zentralenStellen verwaltet, Network Information Centersoder NIC genannt, die wiederum 2nd Level-Domains unterhalb ihrer zuständigen ToplevelDomain vergeben bzw. die Vergabe an andere

Page 41: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

DNS-Server 41

Nameserver delegieren. Derzeit gibt es folgendesieben generische Top Level Domains: com, org,net, edu, int, mil, arpa. Daneben gibt es fürjedes Land eine eigene Top Level Domain, diedem ISO - Code des jeweiligen Landes entspricht– für Deutschland also .de

Die Nameserver werden entsprechend dieserUnterteilung der Namen-Bereiche strukturiert.Auf der obersten Ebene finden sich die soge-nannten Root-Nameserver, die Informationen

über die für die jeweilige Top Level-Domainzuständigen Nameserver bereit halten. Entspre-chend verfügen diese über Informationen zu denNameservern der untergeordneten Domainteile –und so weiter, bis ein Nameserver die Informationüber den gewünschten Hostnamen anbietet.

Die Auflösung eines kompletten Systemnamens,d.h. seine Zuordnung zu einer IP Adresse, könnteso aussehen:

loalerDNS

Server

anfragenderComputer

AnfrageAntwort

Root NameserverAnfrage www.linuxinfo.de

Adresse Nameserver für .de

.de - Nameserver

Anfrage www.linuxinfo.de

Adresse Nameserver für linuxinfo.de

linuxinfo.de - Nameserver

Anfrage www.linuxinfo.de

Adresse fürwww.linuxinfo.de

Hier wird nach der IP-Adresse des Rechnerswww.linuxinfo.de gesucht. Der suchendeRechner richtet seine Anfrage an den in ihmeingestellten DNS-Server. Dieser leitet sie an dieRoot-Nameserver weiter, die die Adresse des fürdie Toplevel-Domain .de zuständigen DNS-Servers mitteilen. Die darauf folgende Anfragebei diesem System retourniert dem fragendenComputer die Adresse des für die Domainlinuxinfo.de verantwortlichen Nameservers.Eine weitere Anfrage bei dieser Adresse ergibtdie Adresse des Rechners www.linuxinfo.de.

Diesen Vorgang, d.h. die Suche nach einemNamen oder einer IP-Adresse, nennt man Resol-ving, also Auflösung. Sucht man bei gegebenemNamen nach einer Adresse, wird das als forward

resolving bezeichnet – den umgekehrten Vorgang,d.h. die Suche nach dem Namen bei bekannter IP-

Adresse, nennt man reverse resolving.

Will man das reverse resolving besser verstehen,sind weitere Informationen über die Organisationdes Adressraumes im DNS nützlich. Alle Adres-sen sind im DNS in der Subdomain in-addr derTop Level Domain arpa eingetragen. Unterhalbdieser Zone werden die Adressen in umgekehrterNotation aufgeführt. So erscheint die Adresse212.14.66.4 in der Zone in-addr.arpaals 4.66.14.212.in-addr.arpa. Wird nunein entsprechenes Resolving gestartet, konvertiertder fragende Computer die Adresse automatischin die entsprechende Notation. Anschließendläuft der Auflösungsvorgang wie beschrieben ab.

Page 42: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

BIND - die Standardsoftware42

Um die Funktionalität des DNS sicherzustellen,auch wenn ein Server ausfällt, sind die Dateneiner Domain oder Sub-Domain grundsätzlichmehreren Servern bekannt – einem primären undwenigstens einem sekundären DNS-Server. Derletztere gleicht sich regelmäßig mit dem primärenServer ab und übernimmt dessen Daten. Alle füreinen Bereich zuständigen Nameserver sind beimübergeordneten Nameserver als autoritativ fürihren Bereich registriert. Man spricht von einerDNS-Delegation zu diesen Servern, da nur sie diefür diese Domain glaubwürdigen Daten haben.

Die Namen- und Adressdaten werden auf demprimären DNS-Server editiert. Der oder diesekundären Server übernehmen sie dann. DieZuordnung als primärer und sekundärer Servererfolgt seitens des jeweiligen Systemverwalters.Die übergeordneten Server interessiert dieseZuordnung nicht, da sie alle eingetragenenenDNS-Server als gleichberechtigt ansehen.

BIND - die StandardsoftwareDie Standard-Nameserversoftware unter Unix –und natürlich unter Linux – ist BIND. Die Soft-ware ist frei verfügbar, wird vom Internet Soft-ware Consortium ISC gepflegt und ist bei dessenWebserver erhältlich: http://www.isc.org/.

Die Grundkonfiguration des BIND erfolgt übereine ASCII-Datei namens NAMED.CONF, die imallgemeinen im Verzeichnis /ETC liegt. Eineübliche Grundkonfiguration sieht so aus:options {

directory "/var/named";

listen-on {

212.14.66.4;

127.0.0.1;

};

query-source address 212.14.66.4;

interface-interval 5;

statistics-interval 0;

transfers-in 20;

transfers-per-ns 5;

};

zone "." in {

type hint;

file "root.cache";

};

Die wichtigsten Elemente dieser Konfigurationsind die Statements directory, das das Daten-verzeichnis für BIND bezeichnet, und listen-on, das die Adressen definiert, über die derNameserver erricht wird, also an welche sich derProzess bindet. Hier können mehrere IP-Adressendurch einen Strichpunkt getrennt angegebenwerden.

Ein weiterer wichtiger Eintrag ist die Definitionder root-Cache-Datei, die nach dem Stichwortzone „.“ definiert wird. In dieser Dateiwerden die Adressen der Root-Nameserverhinterlegt. Bis auf den Parameter hint dertype-Option handelt es sich hier um eine ganznormale Zonendefinition. Dabei beschreibt derParameter der Option file die Datei, in welcherdie Rootserverdaten hinterlegt sind – eben dieRoot Cache-Datei.

Auch die Zone oder Zonendatei muss konfigu-riert werden, also die Datei, in der die Daten füreine Domain oder Sub-Domain eingetragen sind.Diese Definition findet mittels des zone-Para-meters innerhalb der Datei NAMED.CONF statt.Dabei wird als erster Parameter der Domainnameangegeben, dann der Typ – also das Schlüssel-wort master bei einer primären bzw. slavebei einer sekundären Zone. Endlich wird derOption file, wie oben erwähnt, der Name derZonendatei übergeben. Den detaillierten Aufbauvon Zonendateien sehen wir uns nachfolgend an.

Das folgende Beispiel zeigt die Deklaration einerprimären und einer sekundären Zone:zone "wusel.net" in {

type master;

file "prim/wusel.net";

};

zone "rkcom.net" in {

type slave;

file "sec/rkcom.net";

masters {

212.14.66.1;

};

};

Page 43: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

BIND - die Standardsoftware 43

Wie ersichtlich muss bei der Bekanntgabe einersekundären Zone die IP-Adresse des zugehörigenmaster angegeben werden, also die Adressedes Nameservers, der diese Domain als primäreZone fährt, von dem also die entsprechendenDaten übertragen werden.

Aufbau von DNS-ZonendateienDie Inhalte einer Domain werden innerhalb derDNS-Zonendateien verwaltet. Dies bedeutet, daßhier die Zuordnung von Namen zu IP-Adressenund von IP Adressen zu Namen erfolgt. Einesolche Zuordnung oder Resource Record) siehtwie folgt aus:

<NAME> <CLASS> <Type> <RData>

Innerhalb des DNS kennt man folgende Klassen:

Klasse BedeutungIN Internet

CS CSNET

CH CHAOSnet

HS Hesiod

Heute hat nur noch IN-Internet Bedeutung.

Das Type - Feld beschreibt die Art des Eintrages.Hier gibt es folgende Typen:

Type folgende Daten(Rdata)

Bedeutung

A zum Namengehörende IP-Adresse

ordnet einem Namen eine IP-Adresse zu

NS Name eineszugehörigenNameservers

delegiert eine Subdomain heraus. Dabei sind die hier angegebenenRechner für diese Subdomain als DNS-Server definiert.

CNAME zu einem Aliasgehöriger Name

definiert einen Aliasnamen für einen bereits existieren Namen, dermittels eines A Records einer IP-Adresse zugeordnet sein muss

PTR Zeiger auf einenNamen (Pointer)

ordnet einer IP-Adresse einen DNS-Namen zu. Dieser solltewiederum mittels eine A-Records auf die gleiche Adresse zeigen.Hier wird das sogenannte Reverse Mapping definiert.

HINFO Hardwareinforma-tion für den Eintrag

enthält Informationen über die Hardware der vorangehendenNamen.

MX Mailsexchange-system (Mailserver)

enthält Priorität und DNS-Namen des Mailservers, der für diesenNamen Mail entgegennimmt. Dieser Name muß mittels eines A-Records einer IP-Adresse zugewiesen sein.

TXT Texteintrag gibt einen zum Eintrag gehörenden Text an. Dies kann eineBemerkung zum entsprechenden System sein. Der Text sollte indoppelten Anführungszeichen stehen.

Neben den einzelnen Datensätzen benötigt jedeZone einige Verwaltungsdaten. Diese sind ineiner bestimmten Sektion am Anfang jeder DNS-Zone im sogenannten Start of Area oder SOA)definiert. Genaugenommen handelt es hier nurum einen gesonderten Typus eines DNS-Records.

Ein üblicher SOA-Record besitzt folgendenAufbau:

<domainname> IN SOA<primärer_Nameserver><zonen_administrator> (

<serial>

<refresh>

<retry>

<expire>

<TTL>

)

Page 44: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

BIND - die Standardsoftware44

Die Angaben haben folgende Bedeutung:

• Primärer_NameserverName des primären Nameservers

• zonen_administratorEmailadresse des Zonen-Administrators. Stattdes @ - Zeichens steht hier ein Punkt.

• seriel Seriennummer der Zonnendatei. Anhand derSeriennummer erkennt ein sekundärer Servereine Veränderung beim primären Server. Istdie Seriennummer beim primären Serverhöher als in der Datei des sekundären Servers,kopiert dieser erneut die Zonendatei. Dasbedeutet, daß die Seriennummer bei jederÄnderung an der Zonendatei erhöht werdenmuß. Eine Seriennummer darf niemalsniedriger werden, da das die sekundärenSysteme nicht mitbekommen. Um dies zuverhindern, hat sich in der Praxis folgendesFormat für die Seriennummer durchgesetzt:YYYYMMDDNN

Dabei bedeuten:

Eintrag BedeutungYYYY Vierstellige Jahreszahl

MM zweistellige Monatszahl

DD zweistellige Tageszahl

NN Nummer der Änderung amjeweiligen Tag

• refreshHier wird der Zeitraum in Sekunden definiert,in dem ein sekundärer Server Seriennumernvergleichen und die Zonendatei ggf. übertra-gen soll. Ein gängiger Wert hier ist 86400.

• retry Zeitwert in Sekunden, innerhalb dessen einsekundärer Server einen erneuten Verbin-dungsaufbau probiert, wenn der Server nichterreicht wurde – meist 10800 Sekunden.

• expiredefiniert, wann ein sekundärer Server eineZone für ungültig erklärt, nachdem derprimäre Server nicht erreicht wurde. Einpraxiserprobter Wert sind 2592000 Sekunden.

• TTLbezeichnet die Time to Live. Gibt – ebenfallsin Sekunden –an, wie lange ein anfragenderClient Informationen im lokalen Cache hält.

Sehen wir uns das an einer kleinen Beispielzone an:wusel.de IN SOA ns.wusel.de. hostmaster.nic.wusel.de. (

199912162 ; Serial

86400 ; Refresh

10800 ; Retry

2592000 ; Expire

86400 ) ; Minimum

IN NS ns.ISAR.net.

IN NS ns.Essen.ISAR.net.

IN MX 100 mail.wusel.de.

IN MX 110 relay.wusel.de.

www IN A 212.14.66.4

mail IN A 212.14.66.4

relay IN A 212.14.66.44

web IN CNAME www.wusel.de.

sls IN NS ns.wusel.de.

ns IN A 212.14.66.4

Page 45: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

BIND - die Standardsoftware 45

Der Aufbau von Reverse ZonesDer Aufbau einer Reverse Zone entspricht dereiner Forward Zone – der einzige Unterschied

ist, dass links anstelle eines Namens die IP-Adresse steht und hinter dem TypekennzeichenPTR der volle Rechnername.

@ IN SOA ns.wusel.de. hostmaster.nic.wusel.de. (

199912162 ; Serial

86400 ; Refresh

10800 ; Retry

2592000 ; Expire

86400 ) ; Minimum

IN NS ns.ISAR.net.

IN NS ns.Essen.ISAR.net.

0 IN PTR net.wusel.de.

1 IN PTR karlsfeld.de.wusel.net.

2 IN PTR hades.wusel.de.

...

Kontrolle des NameserversFür die Kontrolle des Nameserverprozessesenthält die Distribution des BIND ein kleinesSteuerprogramm namens ndc oder namedcontrol, das den named kontrolliert. Diewichtigsten Parameter folgen hier:

• statuszeigt den aktuellen Status des named an.

• reload [Zonendatei]lädt alle oder die angegebene Zone neu in denSpeicher des Nameservers

• startstartet den Nameserverprozess

• stopbeendet den laufenden Nameserverprozess

• restartstartet einen neuen Nameserverprozess neu

• traceversetzt den named- in den trace-Modus.Damit protokolliert der Prozess alle Anfragenin die Datei named.run. Der Trace-Modusmuss unbedingt wieder ausgeschaltet werden,da diese Datei sehr schnell sehr gross werdenund die Platte bis zum Rand füllen kann.

• notracebeendet den trace-Modus des named.

Weitere Informationen zum BIND finden sichunter der Adresse http://www.isc.org/.

Page 46: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Mailserver46

MailserverEmail ist einer der ältesten und meistgenutztenDienste im Internet. Mit seiner Hilfe werdenNachrichten zwischen Benutzern im Netzwerkbzw. dem Internet ausgetauscht. Die aufgaben-gerechte Betreibung eines Mailservers erforderteinige Hintergrundinformationen zu Funktions-weisen und Protokollen von Email.

Der Versand von elektronischer Post in Interneterfolgt wie schon auf Seite 25 erwähnt mittelsdes Simple Mail Transport Protocol, des SMTP.Der Mailsender liefert eine Nachricht bei seinemMailserver ab, der dann den weiteren Versand biszum Mailserver des Nachrichtenempfängersübernimmt. Dabei benutzt er den DNS-Dienst,der die Informationen über den Mailserver desEmpfängers im sogenannten MX-Record zurVerfügung stellt. Dieser Eintrag definiert den

Mailserver, der für die Zieldomain eingehendeMail verwaltet. Der sendende Server richtet alsozunächst eine Anfrage an DNS bezüglich deszuständigen Mailservers und stellt diesem danndie Nachricht zu. Der Empfängerserver nimmtdie Nachricht entgegen und speichert sie, bis derEmpfänger die Nachricht abholt.

Das Abholen der Mail durch ihren Empfängererfolgt nicht etwa über das SMTP-Protokoll,sondern mittels POP3 bzw. IMAP. Diese Dienstesind meist nicht ein integraler Bestandteil desMailservers, sondern eigene Dienste undServerprozesse.

Schematisch sieht die Sache etwa so aus:

NachrichtenSender

lokalerMailserver

überträgtNachricht

DNS

Anfrage nach zuständigemEmpfängermailserver

lokalerMailserver

Name desEmpfängermailserver

DNS

Anfrage der Adressedes Empfängerservers

lokalerMailserver

IP Adresse desangefraten Systemes

entfernterMailserver

ÜberträgtNachricht

NachrichtenEmpfänger

holt Mail bei seinemMailserver ab.

Page 47: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Mailserver 47

Befassen wir uns nun mit der Mailserverseite –ohne Mailserver ist grundsätzlich keine Nachrich-tenübermittlung möglich. Der unter Linux wohlmeist eingesetzte Mailserver isr sendmail. Wiedie anderen Programme ist auch er freie Software– im Internet isat er abrufbar unter der Adressehttp://www.sendmail.org/

Wie die meisten Serverprogramme unter Unixwird sendmail mittels einiger Textdateienkonfiguriert. Die zentrale Konfigurationsdatei istdie Datei /ETC/SENDMAIL.CF . Da diese Datei

sehr komplex und – zumindest für das mensch-liche Auge – nur schwer lesbar ist, wird sie imallgemeinen mit Hilfe einer Makrosprache gene-riert – und zwar der Makrosprache m4. Durch dieAneinanderreihung der relevanten m4-Makrosund einer anschließenden Übersetzung in das cf-Dateiformat vermag der Administrator einesMailservers eine Konfiguration relativ einfach zuerstellen.

Eine Standardkonfiguration als m4-Makro siehtso aus:

VERSIONID(`lnx-as-1.0')

OSTYPE(linux)

MASQUERADE_AS(domain.de) dnl # lokale Mail maskieren

define(`confCF_VERSION', `lnx-as-1.0')dnl # Versionszusatz

define(`confERROR_MODE', m)dnl # Errormodus setzen

define(`confQUEUE_LA', 10)dnl # Ab Load 10 nur noch queueing

define(`confREFUSE_LA', 20)dnl # Ab Load 20 mail zurückweisen

define(`confPRIVACY_FLAGS',`needmailhelo,noexpn,needvrfyhelo,noreceipts,authwar

nings')dnl # EinigeSicherheitseinstellungen

FEATURE(redirect)dnl # Redirect Feature aktivieren

FEATURE(use_cw_file) dnl # CW File f. lokale Domains nutzen

FEATURE(relay_entire_domain) dnl

FEATURE(masquerade_envelope) dnl

MAILER(smtp)

Soll diese Datei das richtige Format erhalten,wird sie mittels des Befehls m4 konvertiert – überfolgenden Aufruf:m4 ./sendmail.mc > /etc/sendmail.cf

Damit wären nun die Basiseinstellungen fürsendmail vorgenommen, und der Versand vonMail ist grundsätzlich möglich. Die Anpassungder Konfiguration an das eigene System erforderteinige Feinarbeit. Zunächst müssen in der Datei/ETC/SENDMAIL.CW alle Domains eingetragenwerden, die der Mailserver als lokale Domainsbehandeln soll. Dabei werden die Domainseinfach untereinander eingetragen:

wusel.dewusel.comwusel.net

Fehlt noch die Konfiguration für den Empfangvon Email. Sollen lokalen Benutzern mehrereEmailadressen zur Verfügung stehen, nimmt manin der Datei /ETC/ALIASES die entsprechendenZuordnungen vor. Die Syntax ist einfach:Alias: lokaler Benutzer

Als Beispiel folgt ein Auschnitt aus einer/ETC/ALIASES:Achim.Schmidt: schmidtachim: schmidtas: schmidt

Page 48: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Mailserver48

Damit wird Mail für Achim.Schmidt, für achimund für as beim lokalen Benutzer schmidt abge-liefert. Aktiviert wird diese Datei mit dem Befehlnewaliases.

Ein weiterer wichtiger Punkt bei einem Mail-server ist die Sicherheit des Servers vor SPAM-Relay-Angriffen. Ein solcher Angriff veranlasstdie Weitersendung einer Mail von außen an vieleAdressen ausserhalb des lokalen Netzwerks.

Solche Angriffe werden mit Hilfe der Datei/ETC/MAIL/ACCESS abgewehrt, deren Benutzungin der obigen Beispielkonfiguration enthalten ist.Hier werden die Domains bzw. IP-Adresseneingetragen, die diesen Server als Relay-Serverbenutzen, also Mail einliefern dürfen. Einenentsprechender Eintrag zeigt das folgendeBeispiel:192.168.1. RELAY

Ist die Datei erstellt, muss sie ins DB-Formatübersetzt werden – mit dem Befehl:makemap hash access < access

sendmail ist ein sehr potenter Mailserver. Eswürde jedoch den Rahmen dieses Buchessprengen, wenn wir hier auf alle seine Möglich-keiten eingingen. Es gibt aber gute Fachliteraturzu diesem Programm, und auf der Webseite desProgramms finden sich weitere Informationenunter folgender Adresse:http://www.sendmail.org/

Page 49: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Dienste für Windowsclients - Samba 49

Dienste für Windowsclients - SambaLinux kann Datei- und Druckerdienste auch fürWindowsclients verfügbar machen – mit Hilfedes Pakets Samba, das hier abrufbar ist:http://de.samba.org/samba/samba.html

Samba bietet auch viele Dienste an, die normaler-weise nur von Windows NT erbracht werden –z.B. folgende:

• WINS-Server

• Computersuchdienst

• Loginserver

• Primärer Domain-Server

• Diagnosewerkzeuge

Gegenüber herkömmlichen NT-Servern besitztSamba die Vorteile des darunterliegenden Server-betriebssystemes, z.B. Linux – als da u.a. wären:

• standortunabhängige Administration

• Stabilität

• zentrale Konfiguration

Die Kommunikation innerhalb von Windowsnet-zen erfolgt normalerweise mittels des NETBIOS-Protokolls. Im Kern setzt sich dieses Protokollaus drei Hauptbestandteilen zusammen:

• Namensdienstsorgt für die Identifikation der angeschlosse-nen Stationen und ist Grundlage desComputersuchdienstes.

• Datagrammserviceregelt die Kommunikation zwischen deneinzelnen Rechnern. Der Datenaustauscherfolgt dabei in einzelnen Paketen, densogenannten Datagrammen.

• Sitzungsdienstsorgt für die fehlerfreie Kommunikation derNetzstationen.

Das NetBIOS-Protokoll kann in verschiedenenanderen Protokollen implementiert werden. Diederzeit bekanntesten sind NetBEUI, IPX undnatürlich TCP/IP. Samba benutzt die TCP/IPImplementierung – und somit die Vorteile diesesProtokolles.

Das Samba Paket besteht aus folgenden Teilen:

• SMBD

zentraler Serverdienst für die Datei- undDruckservices

• NMBD

Daemon für Namens- und Datagrammdienste.Das Programm reserviert beim Start vonSamba die entsprechenden NetBIOS-Namen;es ist der WINS-Server und somit zuständigfür die Namensauflösung.

• TESTPARM

prüft die Sambakonfigurationsdatei aufsyntaktische Richtigkeit

• SMBPASSWD

pflegt die verschlüsselten Passwörter derServerseite.

• SMBCLIENT

ermöglicht dem lokalen Linuxrechner denZugriff auf Ressourcen, die von NT Servernfreigegeben wurden.

• NMBLOOKUP

Diagnosewerkzeug zur NetBIOS-Namensauflösung.

• /ETC/SMB.CONF

zentrale Sambakonfigurationsdatei desLinuxservers.

• /ETC/SMBPASSWD

für Samba genutzte Passworddatenbank

• SWAT

webbasiertes Administrationswerkzeug fürSamba.

Basiskonfiguration von SambaSamba kann auf zwei verschiedene Weisenkonfiguriert werden: zum einen durch diemanuelle Bearbeitung der Datei /ETC/SMB.CONF,zum andern über das webbasierte Konfigurations-werkzeug swat.

Da das Editieren der Konfigurationsdatei sehrmühsam ist, wenden wir uns lieber gleich swatzu. Dieses Programm erlaubt die kompletteKonfiguration des Sambadienstes. Gestartet wirdswat normalerweise mittels des inetd-Superservers, was folgenden Eintrag in dessenKonfigurationsdatei /ETC/INETD.CONF erfordert:

swat stream tcp nowait.400 root /usr/sbin/swat swat

Page 50: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Dienste für Windowsclients - Samba50

swat läuft daraufhin als eigener Webserver aufPort 901 des Sambaservers und kann mittelseines normalen Webbrowsers dort angesprochenwerden. Nach der ersten Verbindung muss mansich beim System anmelden, und zwar als Userroot mit dem System-Password dieses Users.

Nach erfolgreicher Authentifikation erscheint dasHauptmenü, das die verschiedenen Funktionendes Programms sowie Links zur Dokumentationanbietet.

Im Menüpunkt GLOBALS' werden die zentralenKonfigurationen für den Server vorgenommen.Diese gliedern sich in verschiedene Gruppen:

• BASE OPTIONS (Basiseinstellungen)

• SECURITY OPTIONS (Sicherheitseinstellungen)

• LOGGING OPTIONS (Protokolleinstellungen)

• TUNING OPTIONS (Performanceeinstellungen)

• BROWSE OPTIONS(Anzeigeeinstellungen)

• WINS OPTIONS (WINS-Einstellungen)

Innerhalb dieser Gruppen werden Konfigurati-onsparameter für den späteren Betrieb desSambaservers gesetzt. Die wichtigsten sind:

• WORKGROUP

Angabe der Windows-Arbeitsgruppe oderWindows NT-Domain, der der Sambaserverangehören soll.

• NETBIOS NAME

Name des Sambaservers im Windows-Netzwerk.

• SERVER STRING

Namensergänzung, die innerhalb derWindows-Netzwerksicht angezeigt wird.

• INTERFACES

Angabe der Interfaces, die Samba benutzensoll. Dabei wird die IP-Adresse desSambaservers auf dem entsprechendenNetzinterface und dessen Netzmaske

Page 51: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Dienste für Windowsclients - Samba 51

angegeben – z.B. 192.168.1.2/24 oder192.168.1.2/255.255.255.0. Sollenmehrere Interfaces genutzt werden, kann manmehrere Kombinationen aus IP-Adresse undNetzmaske angeben, die jeweils durch einLeerzeichen getrennt werden.

• SECURITY

legt den Zeitpunkt der Identifikation fest. Hiersind mehrere Möglichkeiten denkbar:

share: legt fest, dass die Prüfung beim Ansprechen einer Freigabe stattfindetuser: prüft das Password bereits bei der Herstellung einer Benutzersession zum Server.server: Bei dieser Konfiguration prüft der Sambaserver die Kombination aus Username und Password, indem er eine Verbindung zu einem anderen Server aufbaut und versucht sich mit den erhaltenen Daten dort anzumelden. Ist dieser Vorgang positiv, gibt er dem Request statt; schlägt die Anmeldung fehl, weist der Sambaserver die aufzubauende Session ab. Um diese Funktion zu nutzen, wird noch die Option password server benötigt, welche den NetBIOS-Namen des Servers angibt, bei dem die Autentifikation stattfindet.domain: Der hier eingesetzte Mechanismus funktioniert ähnlich dem derOption server. Der Unterschied liegt darin, dass hier eine Windowsauthentifikation gegen einen Domainserver stattfindet. Um diese Option zu nutzen, muß aber ein Computerkonto in der entsprechenden Domain existieren, und der Sambaserver muß über ein entsprechendes Password verfügen, das mittels smbpasswd –j <DOMAIN> -r <PDC> generiert wird.

• ENCRYPT PASSWORDS

gibt an, ob verschlüsselte Passwörter benutztwerden sollen. Windows NT 4.0 ab SP3 undWindows 98 haben dies als Standard.

• HOSTS ALLOW/HOSTS DENY

Hier können Netze oder einzelne Systemeeingetragen werden (IP Adressen), denen derZugriff auf den Server erlaubt oder verbotenwird.

Einzelne Dateifreigaben werden im MenüpunktSHARES geregelt, wo neue Freigaben angelegtwerden und der Zugriff auf verwaltet wird. Dabeigibt es folgende Einstellungsmöglichkeiten:

• BASE OPTIONS

- comment: Name der Freigabe- path: Pfad zum Verzeichnis aufLinuxebene

• SECURITY OPTIONS

Sicherheitseinstellungen. Regelung derZugriffsrechte auf dieses Verzeichnis undAuflistung der berechtigten/nicht-berechtigtenIP-Adressen.

• BROWSE OPTIONS

Angabe, ob die Freigabe in der Liste derFreigaben dieses Servers angezeigt wird odernicht.

• MISCELLANEOUS OPTIONS

available: gibt an, ob diese Freigabeverfügbar ist oder nicht.

Im Menüpunkt PRINTERS werden die gleichenEinstellungen für Druckerfreigaben definiert.

Der nächste wesentliche Punkt ist der MenüpunktSTATUS. Hier wird der Betrieb des Sambaserverskontrolliert – so wird er hier gestartet, gestopptoder erneut gestartet. Außerdem werden hiereinige Statusinformationen wie z.B. die aktivenVerbindungen angezeigt.

Im PASSWORD-Menü können Einstellungen fürSambabenutzer vorgenommen werden.Allerdings müssen alle diese Sambabenutzer alslokale User auf der Linuxmaschine existieren.

Page 52: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Sicherheit in Linuxnetzen52

Sicherheit in LinuxnetzenSicherheit von Linuxservern und im Netz ist einviel beachtetes Thema, gerade bei Netzen, dieüber einen Anschluß an öffentliche Netze wie dasInternet verfügen. Ein weit verbreitetes Systemwie das Netzwerkbetriebssystem Linux ist oftZiel von Angriffen und Einbruchsversuchen.Man muß dabei jedoch unterscheiden, ob es sichum einen „räuberischen“ Einbruchsversuchhandelt oder um einen Angriff, der den Rechnernur lahmzulegen versucht, z.B. durch sogenannteDenial of Service- oder DoS-Angriffe.

Bei letzteren Angriffen geht es schlicht darum,den Zielrechner lahmzulegen. Dies erfolgt meistdurch ein Überfluten mit Anfragen. So versuchtman einen Webserver durch das zielgerichteteund schnelle gleichzeitige Senden von HTTP-Anfragen zu überlasten – oder man sendet vielePakete an den SMTP Port eines Mailservers.

Auf der anderen Seite stehen Attacken, bei denender Angreifer in den entfernten Rechner einzu-dringen versucht, um dessen Dienstleistungen zunutzen. Hier muss der Angreifer viel gezieltervorgehen und Sicherheitslücken im Betriebs-system oder Leichtfertigkeiten des Verwaltersausnutzen. Fehler im Betriebssystem gibt es injedem System – und immer wieder. Hier liegt esam Administrator, sich über auftauchende Feh-lerquellen zu informieren und entsprechendeGegenmaßnahmen einzuleiten. Eine gute Mög-lichkeit, sich auf dem Laufenden zu halten, sindMailinglisten der Distributoren oder anderer Ein-richtungen, die sich mit der Sicherheitsthematikbeschäftigen, wie z.B. CERT. Natürlich gibt esauch im World Wide Web entsprechendeServices und Übersichten – so etwa die SecurityNews Base von LinuxInfo.DE,http://www.linuxinfo.de/.

Die andere große Gefahrenquelle ist die Leicht-fertigkeit von System- und Netzadministratoren.Jedes Betriebssystem ist nur so gut und sicherwie sein Verwalter es zulässt. So sollten Dienste,die nicht benötigt werden, gar nicht angebotenund entsprechende Prozesse gar nicht gestartetwerden. Dienste, die nur von bestimmten Statio-nen benutzt werden, sollten nur für diese bereitstehen. Hier ist ein TCP-Wrapper eine gute Mög-lichkeit, Serverdienste nur bestimmten Stationenverfügbar zu machen – später dazu mehr.

Neben Angriffen von außen darf man auch dieinternen Gefahren nicht unterschätzen. Diemeisten Angriffe auf ein System kommen ausdem eigenen Netz heraus und nicht von außen!

Sehen wir uns zunächst einmal die einfachenMöglichkeiten an, einen Linuxrechner sicherer zumachen und Angreifern auf diese Weise nichtallzu einfache Angriffsflächen zu bieten.

Was man nicht anbieten will, brauchtnicht zu laufenDies ist einer der Leitsätze, an die sich jederAdministrator grundsätzlich halten sollte. DennProzesse, die nicht laufen, bieten keine Angriffs-flächen. Darum sollte man genau überlegen,welche Dienste man auf einem Rechner anbietenwill, und alle anderen evtl. installierten Diensteabschalten – entweder indem man die INIT-Scripts entsprechend modifiziert oder indem mandie inetd-Konfigurationsdatei/ETC/INETD.CONF anpasst.

So banal sich dies liest, so erschreckend ist,welche Unmengen an Diensten viele Systemeanbieten, ohne daß sich der Systemverwalterdarüber eigentlich im klaren ist. Und eben solcheServices sind beliebte Einbruchsstellen, da siemeist auch nicht weiter beachtet und gepflegtwerden.

Dienste reglementierenViele Dienste auf Linuxservern sollten nur demlokalen Netzwerk oder bestimmten Rechnern imInternet zur Verfügung stehen. Hier sind dieseDienste so weit zu regulieren, daß nur die rele-vanten Stationen Zugriff haben. Eine Beschrän-kung via Username und Password ist dabei nichtausreichend – um diese Identifikation zu starten,wird nämlich das entsprechende Programmangeboten und gestartet. Ist in diesem Prozess einFehler, kann dieser evtl. auch ohne Zugriffausgenutzt werden, um unbefugte Rechte zuerlangen. Besser ist es hier, auf einer tieferenEbene anzusetzen, und durch ein vorgeschaltetesProgramm zu prüfen, ob die Dienstanforderungvon der berechtigten Adresse kommt – und nur indiesem Falle den entsprechenden Service zustarten. Selbstverständlich kann eine Useranmel-dung zusätzlich eingesetzt werden. Sollte dasProgramm nun einen Fehler haben, wird es für

Page 53: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Sicherheit in Linuxnetzen 53

Anforderungen von nicht erlaubten Adressen erstgar nicht gestartet, und derartige Sicherheitslückenkönnen nicht ausgenutzt werden.

Ein Programm, das man solchen Diensten vor-schalten kann und das die Adresse der Anforderungprüft, ist der TCP-Wrapper. Bei den meistenLinuxdistributionen ist er als Standard installiert.Der TCP-Wrapper kann auch Dienste absichern,welche mittels des inetd gestartet werden.Dazu wird in der /ETC/INETD.CONF nicht dereigentliche Server gestartet, sondern der TCP-Wrapper – meist tcpd. Als Argument wird ihmder zu startende Prozess übergeben, worauf eranhand seiner Konfigurationsdateien nachprüft,ob eine anfragende IP-Adresse für den angefor-derten Dienst Zugriffsrechte hat oder nicht.

Diese Dateien sind die /ETC/HOSTS.ALLOW unddie /ETC/HOSTS.DENY. Hier werden die Zugriffs-rechte hinterlegt. Diese Zuordnung findet pro an-gebotenem Dienst statt. Die /ETC/HOSTS.ALLOW

enthält die Systeme, denen der Zugriff aufbestimmte Dienste offen steht, während die/ETC/HOSTS.DENY die Systeme enthält, die keinenZugriff auf bestimmte Services haben sollen.

In der /ETC/HOSTS.ALLOW werden die Diensteeingetragen, auf die bestimmte Systeme Zugriffhaben sollen. Dabei wird erst der Dienst genannt,dann die Systeme, die Zugriffsrechte haben. AlsTrennzeichen zwischen Service und Systemenwird ein Doppelpunkt benutzt. Um die Systemeaufzulisten, können einzelne DNS-Namen, DNSFragmente – wie z.B. .wusel.de für alleRechner, deren DNS Name auf .wusel.de endet –oder aber IP-Adressen eingesetzt werden. SollenIP-Netze gelistet werden, kann man dies in derForm Netzadresse/Netzmaske angeben – z.B.192.168.1.0/255.255.255.0. Sollenmehrere Systeme angegeben werden, kommt einLeerzeichen als Trenner zum Einsatz.

Das Wort ALL ist ein spezielles Schlüsselwort,das sowohl alle Dienste als auch alle Rechnerbezeichnen kann.

Eine /ETC/HOSTS.ALLOW sieht so aus:in.telnetd: .wusel.de

sshd: ALL

ipop3d: .wusel.de .wusel.net

... und eine /ETC/HOSTS.DENY so:ALL: ALL

In den obigen Beispielen dürfen demnach auf denTelnetservice nur Rechner aus wusel.dezugreifen, während alle Systeme mittels SSHVerbindung aufnehmen dürfen. Auf den POP3-Dienst wiederum dürfen nur Rechner aus denDomains wusel.de und wusel.net zugreifen.Da in der /ETC/HOSTS.DENY nur ALL: ALLsteht, sind alle Dienste, die nicht in der/ETC/HOSTS.ALLOW aufgeführt sind, verboten. Eswerden somit nur die Dienste angeboten, die inder /ETC/HOSTS.ALLOW stehen.

Natürlich greifen diese Regulierungen nur, wennder entsprechende Service auch mittels des tcpdgestartet wird oder dessen Konfigurationsdateienwie z.B. SSH nutzt. Services, die eigenständiglaufen und diese Dateien nicht nutzen, wie etwader Nameserver BIND, werden so natürlich auchnicht reguliert. Hier kann man entsprechendeKonfigurationen jedoch meist in der eigenenKonfigurationsdatei der Software treffen.Generell sollte man Dienste nur Systemenermöglichen, die Zugriffsrechte auf sie haben.

Mit dieser Strategie hat man schon eine großeMenge an potentiellen Sicherheitslücken einge-dämmt, da man bei sicherheitsrelevanten Dingennur noch die offenen Services betrachten muß.

Page 54: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Der Einsatz von Firewalls54

Der Einsatz von FirewallsFirewalls haben einen großen Vorteil – sie bietenSicherheit an einer zentralen Stelle und schützenso ein komplettes Netzwerk. Natürlich ist auchhier die Sicherheit nur so gut wie die Qualität derFirewall und der Kenntnisstand des Verwalters.

Sehen wir uns zunächst einmal Firewalltechnikenganz allgemein an – will man die Möglichkeitenverstehen, die Linux bietet, sind grundlegendeInformationen über Arten und Funktionsweisenvon Firewalls notwendig.

PaketfilteringPaketfilterung ist eine simple, aber wirkungsvolleArt, ein Netz zu schützen. Dabei werden alle ein-und ausgehenden Pakete von zentraler Stelle ausbetrachtet und aufgrund von Regeln weitergelei-tet oder verworfen. Diese Regelsätze können vonsehr einfachen und klaren Anweisungen bis hinzu komplexen Regelwerken reichen.

Sinnvollerweise setzt man Paketfilter an einerzentralen Stelle ein, z.B. am Übergang zwischenverschiedenen Netzen. Solche Filter eignen sichalso hervorragend für den Einsatz auf Routern.Man unterscheidet zwei verschiedene Arten vonFiltern, die auf der IP-Adressenebene oder aufder Portebene definiert werden. Der beste Ansatzzum Filtern ist eine Kombination aus Adress-und Portfiltern. Filter dieses Typs sind die meistbenutzten und wirkungsvollsten. Hier könnenKombinationen von Adressen und Portadressensowohl als Quell- wie auch als Zieladressenverwendet werden.

Grundsätzlich gibt es zwei Ansätze, Filter zudefinieren. Der ersten Variante liegt eine etwaslockere Sicherheitspolitik zu Grunde. Hier istalles erlaubt, was nicht explizit verboten ist. Diesbedeutet, dass man alle Verbindungen erlaubtund nur einige bestimmte Verbindungenverbietet.

Der zweite Ansatz ist ein sehr restriktiver Ansatz.Hier wird alles verboten, was nicht speziellerlaubt wurde. Diese Variante ist zwar sehrsicher, jedoch sehr komplex zu planen. Dennman muß planen, welche Verbindungen benötigtwerden. Das Problem dabei ist die Betrachtungder Folgeverbindungen, wie dies beispielsweisebei FTP der Fall ist.

Wie solche Filter auf Linuxsystemen realisiertwerden, sehen wir uns später in Verbindung mitden Möglichkeiten der Implementierung vonFirewalltechniken unter Linux an.

Masquerading oder NATUnter IP-Masquerading oder NAT versteht mandie Umsetzung von internen Adressen auf eineeinzige Adresse. Dabei werden alle Anfragen deslokalen Netzwerkes vom NAT-System abgefangenund so umgeschrieben, daß ausgehende Paketenur mit der IP-Adresse des Gateways versendetwerden. Das hat den Vorteil, daß in fremdenNetzwerken nur die Adresse des Gatewaysbekannt ist, nicht aber die der internenMaschinen.

Application Level GatewaysFirewalls, welche auf Applikationsebenearbeiten, gehören zur den sichersten. Bei dieserTechnik wird das lokale Netzwerk komplett vomexternen Netzwerk getrennt. Die gemeinsameSchnittstelle ist die Firewall, die in beiden Netzenbeheimatet ist, jedoch keine direkte Verbindungzwischen den beiden Netzen herstellt. JeglicheVerbindung zwischen den beiden Welten wirdüber eigene Programme abgearbeitet, sogenannteApplication Gateways oder Proxies. Es handeltsich dabei um Stellvertreter-Dienste, die Anrufeder einen Seite annehmen und sie zunächstprüfen. Ist das Ergebnis positiv, baut der Proxyeine neue Verbindung zum Zielrechner auf undschickt die Anforderung an den eigentlichenZielhost. Somit ist eine Kommunikation nur überden Stellvertreterprozess möglich – es existiertkeine direkte logische Verbindng zwischenQuelle und Ziel. Dabei hat man an derSchnittstelle, der Firewall, alle nur denkbarenRegulierungsmöglichkeiten.

Solche Proxy-Dienste stehen für fast alleNetzanwendungen zur Verfügung. So sindApplicaton Level Gateways für WWW, FTP,Telnet, POP3, IMAP, SMTP, Realaudio und –video als freie Software in Internet verfügbar.

Dies ist natürlich nur ein kleiner Einblick in diegrundlegenden Firewalltechniken. Es gibt jedochgute Literatur in diesem Bereich, und auch imInternet gibt es zu diesem Thema eine Fülle anInformationen.

Page 55: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Firewalltechniken unter Linux 55

Firewalltechniken unter LinuxUnter Linux kann man alle drei erläutertenFirewallmechanismen ohne große Problemeimplementieren. Dazu bietet zum einen derKernel viele Möglichkeiten, zum anderen stehtentsprechende Software auch als Open Source-Software im Internet zur Verfügung.

IP Filter unter LinuxLinux bietet seit dem Kernel 2.0 gute Filtermög-lichkeiten. In der Version 2.0 ist das Programm-paket ipfwadm enthalten, das eine Filterungermöglicht. In der Kernelversion 2.2 wurde esdurch die deutlich leistungsfähigere IP CHAINS-Software abgelöst.

IP Chains kennt drei verschiedene Regelarten,auch Ketten oder Chains genannt. Man unter-scheidet die input-, output- und forward-Kette. Trifft ein IP-Paket ein, benutzt der Kernelzunächst die input-Kette. Durchläuft das Paketdiese Kette erfolgreich, wird es in die nächsteStufe geleitet, die Routing- oder Forward-Ebene.Hier wird das Paket erneut durchleuchtet.

Bevor es weitergeleitet wird, durchläuft es nochdie output-Kette, die kontrolliert, ob diesesPaket das System auch verlassen darf.

Jede Kette enthält eine Reihe von Regeln. JedeRegel untersucht den Paketkopf und entscheidetdann über das weitere Verbleiben des Paketes.Dabei wird jedes Paket mit allen Regeln jederKette verglichen. Ist die Überprüfung am Endeeiner Kette angelangt, entscheidet der Linuxkern,was in der zugehörigen Ketten-Policy steht, undführt die entsprechenden Anweisungen aus.

IP Chains anwendenZur Programmierung des IP Chains-Paketes stehtdas Kommando ipchains zur Verfügung.Mittels dieses Programmes können sowohl neueKetten als auch Regelsätze definiert undgemanagt werden. Dazu stehen folgendeGrundparameter bereit:

Parameter Bedeutung-N neue Kette erzeugen

-X leere Kette löschen (input-,forward- und output-Kettenkann man jedoch nicht löschen)

-P Policy einer Kette ändern

-L Regelsätze anzeigen

-F alle Regelsätze einer Kettelöschen

-Z Zähler einer Kette zurücksetzen

Will man eine Regel innerhalb einer Ketteändern, gibt es verschiedene Wege:

Parameter Bedeutung-A neue Regel an eine Kette anfügen

-I neue Regel in eine Kette einfügen

-R Regel innerhalb einer Ketteersetzen

-D Regel innerhalb einer Kettelöschen

Diese Befehle sehen wir uns nun anhand vonBeispielen genauer an. Das zugrundeliegendeNetzwerk sieht so aus:

Internet oder sonstigesNetzwerk

Firewallrechnermit IP Filtern

Geschützter Rechner

Page 56: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Firewalltechniken unter Linux56

Auf dem Firewallrechner werden zum Schutz desdahinterliegenden Rechners oder Netzwerkes IP-Chains eingesetzt. Das Firewallsystem verfügtüber zwei Netzwerkinterfaces, hier zwei Netz-werkkarten (eth0 nach außen und eth1 nachinnen). Unser internes Netzwerk hat die Adressen192.168.2.x Um es gegen Angriffe vonaußen zu schützen, werden Filterregeln definiert.Da ein Schutz gegen Angriffe von außen

aufgebaut werden soll, müssen die von außenkommen Pakete betrachtet werden, also Paketevom Interface eth0.

Sollen alle Pakete von außen zum lokalen Netzabgewiesen werden, benötigt die input-Ketteeine entsprechende Anweisung, die alle Paketeins Netzwerk 192.168.2.x zurückweist.Dieser Befehl sieht so aus:

ipchains -A input -s 0.0.0.0/0.0.0.0 -d 192.168.2.0/255.255.255.0 -j REJECT

Dieser Befehl verdeutlicht die Syntax desipchains-Kommandos. Zunächst wird demProgramm durch den Parameter –A inputmitgeteilt, dass der input- Kette eine neueRegel zugefügt wird. Die folgenden Parameterbeschreiben die Regel selbst. Das Attribut desParameters –s beschreibt den Adressbereich derUrsprungsadresse, auf den die Regel anzuwendenist. Dabei wird zunächst die IP-Adresse genanntund dann, durch einen Schrägstrich getrennt, dieentsprechende Netzwerkmaske, wobei der Wert0.0.0.0/0.0.0.0 für alle Adressen gilt. DasAttribut des nächsten Parameters -d beschreibtden Zieladressbereich. Dabei entspricht dieNotation der des –s Parameters. In unseremBeispiel soll diese Regel demnach für Paketeeiner beliebigen Ursprungsadresse gelten, welcheals Ziel ein System im Netzwerk 192.168.2.xhaben.

Der folgende Parameter -j beschreibt dieAktion, die greifen soll, sofern ein Paket diesenFilter erfüllt. Als Attribut wird diesem Parameterein definiertes Schlüsselwort übergeben. Möglichsind:

Schlüsselwort BedeutungACCEPT Paket akzeptieren.

deny Paket wird als nicht existientangesehen (wirdverschluckt).

reject Paket wird untersagt und derSender darüber informiert(ICMP unreachable)

redirect Paket wird an einen lokalenPort weitergeleitet.

masq Paket wird maskiert (gilt nurin der forward-Kette)

Mit der oben gezeigten Regel werden alleeingehenden Pakete in das lokale Netzwerkzurückgewiesen. Damit ist von außen keinerleiKommunikation nach innen möglich. Dies istnatürlich nicht unbedingt erwünscht. Denn auchVerbindungen, welche von innen initiiert werden,sind nun nicht mehr möglich, da dieAntwortpakete von der Firewall abgewiesenwerden.

Page 57: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Firewalltechniken unter Linux 57

Wie man sieht, müssen Filterlisten wohl überlegtsein und bedürfen eines gründlichen Konzeptes.Um die Filtermöglichkeiten noch flexiblier zumachen, kennt IP-Chains weitere Parameter, dieinnerhalb der einzelnen Regelsätze greifen:

Parameter Bedeutung-p<Protokoll>

spezifiziert ein Protokoll, etwatcp, udp, icmp, für welchesdiese Regel Gültigkeit hat.

-y Prüft das TCP Syn-Bit imTCP-Kopf

Eine weitere Möglichkeit, Filter zu verfeinern,besteht darin, neben IP-Adressbereichen auchPorts anzugeben. Diese werden einfach hinterdem entsprechenden IP-Adressbereichangegeben. Als Trennzeichen wird dabei dasLeerzeichen benutzt. So lässt der folgende Filteralle Pakete ins lokale Netzwerk mit Zielport 25(sprich smtp) zu:

Eine ausführliche Erläuterung von IP-Chainsübersteigt leider deutlich den Umfang diesesBooklets. Wer jedoch Interesse an dieser Technikhat, dem sei das Firewall Handbuch von GuidoStephken nahegelegt, das im Internet unterhttp://www.little-idiot.de/firewall

komplett online lesbar ist. Darüberhinaus liefertauch das IPCHAINS-HOWTO sehr guteInformationen – unter folgender Adresse:http://www.linux-howto.com

ipchains -I input -p tcp -s 0.0.0.0/0.0.0.0 -d 192.168.2.0/24 25 -j ACCEPT

Page 58: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Sachwortregister58

#) 27

(Network Information Center40

.rhosts 19

/etc/exports 32

/etc/ntp.conf 26

/etc/smb.conf 32; 49

/etc/smbpasswd 49

@-Zeichen 24

127.0.0.1 15

2nd Level 40

8-bit-konform 23

Adressblock 11

Adressfilter 54

Adressierungsschema 10

Aliases 13

anonymous ftp 31

Anpassungsschicht 6

apachectl 39

Apache-Webserver 33

Application Gateway 54

Arbeitsstation 9

arpa 41

ASCII 23

Base Options 50

bin 23

Bitmaske 10

BOOTP 13

Broadcast-Adresse 11

Browse Options 50

Cache 40

CERT 52

Cheapernet 8

com 41

Config mode 13

Daemon 26

Datagramm 49

Default Gateway 11

Default-Route 17

Denial of Service 52

DHCP 13

directory 42

Distribution 13

DNS 40

DNS-Name 24

Domain Name System 40

Dos 52

drop 17

edu 41

elm 25

Email 46

encrypt passwords 51

Endwiderstände 7

error 17

eth0 14

expire 44

file 42

file' 42

Filesystem 25

Firewall 25

Flags 27

forward resolving 41

FQDN 13

ftp 21

FTP-Client 21

FTP-Server 30

FTP-Shell 21

ftp-Sitzung 23

Full qualified Domain Name13

Funktechnik 8

Gateway 11; 54

Glasfasern 8

Globals' 50

Grossrechner 5

GUI 21

Hash 27

Header 10

hint 42

Host name 13

Hostname 40

hosts allow/hosts deny 51

Hubs 7

ifconfig 16

IMAP 46

in-addr 41

INIT-Scripts 52

int 41

Interfacekonfiguration 16

interfaces 50

Internet Protocol 10

Internet Software Consortium42

IP 6

IP Chains 55

IP-Adresse 10; 24

ipchains 55

ipfwadm 55

IPX 6; 49

IRQ 14

ISC 42

ISO 5

Jokerzeichen 22; 24

Kennung 19

Koaxialkabel 8

Kommandoshell 28

Kommandozeilenprogramm19

Kommunikationsprotokoll 8

LAN 40

Layer 5

Lesezugriff 32

linuxconf 13

LLC 6

lo 17

Local Area Network 40

Logging Options ( 50

Page 59: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Sachwortregister 59

Logical Link Control 6

Loopback-Adresse 15

lsmod 16

m4 47

MAC 6

MAC-Adresse 17

MacOS 9

Mailclient 25

master 42

Media Access Control 6

mget 23

Mikroprozessortechnik 5

mil 41

mount 25

mutt 25

MX-Record 46

named 45

named control 45

named.conf 42

named.run 45

ndc 45

ne2k-pci 14; 16

net 41

Net device 13

Net News Transport Protocol25

NetBEUI 49

NETBIOS 49

netbios name 50

netcfg 13

netconfig 13

netstat 17

NetWare 9

Network File System 24

Netzmaske 10

Netzwerkadresse 11

Netzwerkkartentreiber 16

Newsserver 25

NIC 40

nmbd 49

nmblookup 49

nn 26

NNTP 25

Novell NetWare 9

org 41

OSI 5

overrun 17

Paketnummer 10

Paket-orientiert 10

Password 19; 51

pingen 15

Pointer 43

POP3 46

POP-Server 25

Port 27

Port 901 50

Portfilter 54

Portmapper 32

Post Office Protocol 25

Primary name + domain 13

Printers 51

proFTPd 30

proftpd.conf 30

Protokoll 27

Proxy 54

Proxyserver 40

PTR 45

Punkt-zu-Punkt-Verbindung 6

readonly 32

Rechneradresse 24

Rechnername 40

Relay-Server 48

Remote Copy Programm 24

Remote Shell 19

Repeater 8

Resolving 41

Resource Record 43

Ressourcen 19

Reverse Mapping 43

reverse resolving 41

RFC 11

RG58 8

rlogin 20

ro 32

root 26

root-Cache 42

Root-Nameserver 41; 42

Router 11; 54

Routing and gateways 14

Routingprobleme 17

rsh 19

r-tools 19

RX 17

Samba 25

Schreibezugriff 32

security 51

Security Options 50

sendmail 47

Server 7; 9

server string 50

Serverbetriebssystem 9

Serviceport 27

Shares 51

Shell 19

Simple Mail Transfer Protocol25

Simple Mail TransportProtocol 46

slave 42

slogin 20

slrn 26

smbclient 49

smbd 49

smbmount 25

smbpasswd 49

SMTP 46

SMTP-Server 25

Page 60: Linux im Netzwerk - download.knowware.de · Netzwerktechnologie im Internet Achim Schmidt 11 KnowWare PLUS Linux im Netzwerk TCP/IP - das Protokoll OSI - der Aufbau DNS - die Adressierung

Sachwortregister60

SOA 43

Socket-Type 27

-Source 33

SPAM-Relay 48

squid 40

squid.conf 40

ssh 20

sshd 28

standalone 31

Startprogramm 27

Status 51

s-Tools 20

strukturierte Verkabelung 7

Subdomain 40

swat 49

Switches 7

Systemverwalterprivileg 26

tcpd 53

TCP-Wrapper 53

telnetd 28

Terminalemulation 28

Terminalsession 19; 28

testparm 49

Thin-Ethernet 8

Timeout 10

tin 26

Top Level Domain 40

Topleveldomains 40

Topologie 7

traceroute 18

Transmission Control Protocol10

TTL 44

Tuning Options 50

TX 17

type 42

Übertragungsmedium 7

Umgebungsvariable 28

Unix 9

Unixderivat 9

Userkennung 19

Verbindungssegmente 8

Verbindungssteuerungsschicht6

Verkabelung, strukturierte 7

Windows 95/98 9

Windows NT 9; 49

Windowsfreigabe 32

WINS Optionen 50

workgroup 50

World Wide Web 33

YaST 13

Zeitserver 26

Zone 42

Zonendatei 42