1.3 Software soll frei sein 27
1.4 Inhaltsstoffe ohne Nebenwirkungen 31
1.5 Debian 35
1.6 Ubuntu 37
2 Installation 39
2.1 Einen Debian-Server einrichten 40
2.2 Installation eines Ubuntu-Servers 53
2.3 Softwarepakete nachinstallieren 58
2.4 Source-Pakete manuell installieren 71
3 Die Shell und ihre Skriptsprache 75
3.1 Starten der Shell 76
3.2 Befehlsempfänger 78
3.3 Datenströme 84
3.4 Vereinfachung der Tipperei 89
3.5 Variablen 90
3.6 Shell-Startdateien 96
3.7 Shell-Skripte 97
4 Das Schweizer Taschenmesser des Administrators 103
4.1 Dateien und Verzeichnisse anlegen und löschen 103
4.2 Verzeichnisbefehle 110
4.3 Editoren 112
4.4 Nach Dateien suchen 123
4.5 Die Werkzeugkiste 128
4.6 Suchen und ersetzen mit regulären Ausdrücken 139
4.7 Pack deine Sachen und geh 143
5 Dateien und Verzeichnisse 147
5.1 Ich will so heißen, wie ich will 148
5.2 Dateieigenschaften und Rechte 149
5.3 Verzeichnisse und Verzeichnisbaum 159
6 Laufwerke, Datenspeicher und Dateisysteme 163
6.1 Hardwarezugriff per Gerätedatei: /dev 163
6.2 Die Fesplatte einrichten und aufteilen 165
6.3 Der Umgang mit Dateisystemen 171
6.4 Verbund mehrerer Partitionen 180
6.5 Festplatten haben begrenzte Kapazitäten 189
6.6 Dateisysteme aus dem Hause Microsoft 199
6.7 Booten 204
7 Datensicherheit. 209
7.1 Vorüberlegungen zur Datensicherung 209
7.2 Wohin mit der Datenflut? 212
7.3 Workshop: Wiederherstellungsprobleme bei Festplattenwechsel 218
7.4 dump sichert komplette Dateisysteme 221
7.5 Daten sichern mit dem Verpackungskünstler tar 223
7.6 cpio 228
7.7 Medien kopieren: dd 230
7.8 Spielerei: Datensicherung bei USB-Kontakt 231
7.9 Stromausfall verhindern 233
8 Prozesse 239
8.1 Prozesse starten und stoppen 239
8.2 Prozessverwaltung 243
8.3 Hintergrundwissen Prozessverwaltung 248
8.4 Das System startet 250
9 Netzwerk 257
9.1 Anschluss und Medium 257
9.2 TCP/IP 259
9.3 Die IP-Adresse 260
9.4 Netzwerkverbindungen mit ping prüfen 267
9.5 Routing: Netzwerke verbinden 268
9.6 Namen aufiösen 273
9.7 Dynamische IP-Adressen (DHCP) 276
9.8 Mehr IP-Adressen für die Zukunft: IPv6 285
9.9 Ports, Dienste und die Datei /etc/services 288
9.10 Zugang zum Server über das Internet per dynamischem DNS 290
10 Benutzerverwaltung 295
10.1 Der Administrator root und wie man es wird 295
10.2 Benutzerkonten 297
10.3 Kurzfristig den Benutzer wechseln: su 304
10.4 Administrationsaufgaben starten: sudo 304
10.5 Priviligierung durch Dateirechte 305
10.6 Benutzerverwaltung netzwerkweit per NIS 306
11 Administration per Fernsteuerung 313
11.1 Der Großvater-Terminaldienst Telnet 313
11.2 Sitzung verschlüsseln: SSH 315
12 Ein grafischer Terminal-Server für Linux 331
12.1 Installation und Start eines lokalen Desktops 332
12.2 Grafisches Einloggen: Der Display Manager 334
13 Domain Name System 339
13.1 DNS-Server einrichten 340
13.2 Mailserver der Domäne definieren 347
13.3 Master und Slave 348
13.4 Balance und Lastverteilung 349
13.5 Syntax in den Konfigurationsdateien 351
13.6 Einrichten von DNS-Clients 359
14 Sicherheit gegenüber Angreifern 363
14.1 Firewall 364
14.2 Masquerading mit NAT 374
14.3 Workshop: Notebook als UMTS-Router 376
14.4 Proxy 381
14.5 Einbrüche erkennen 385
14.6 SELinux 390
14.7 Verschlüsseln und Signieren 394
14.8 VPN: Auf unsicheren Pfaden tunneln 402
14.9 Verschlüsselte Dateisysteme 410
15 Diagnose 415
15.1 Kennenlernphase 415
15.2 Dateien, die ein Prozess belegt 420
15.3 Das Verzeichnis /proc 421
15.4 Die Last mit der Last 422
15.5 Der Syslog-Dämon und die Protokolldatei 427
15.6 Abstürze und ihre Spuren 433
15.7 Informationen über den Netzwerkadapter auslesen 434
15.8 Netzwerkrouten anzeigen 435
15.9 Prozessverbindungen beobachten 436
15.10 Netzwerkschnüffelei 438
15.11 Netzlasthitparade mit iftop 444
15.12 Netzwerkecho netcat 444
15.13 Nagios: Monitoring per Intranet 445
16 Die Zeit 449
16.1 Die aktuelle Zeit 449
16.2 Zeitabgleich per NTP 451
16.3 Wiederkehrende Jobs mit der crontab 452
16.4 Zeitversetzter Job mit at 454
17 Drucker 455
17.1 Grundlegendes über die Anschaffung von Druckern 456
17.2 Protokolle im Netzwerkdruck 457
17.3 CUPS – Common UNIX Printing System 458
17.4 Netzwerkclients für Druckdienste einrichten 465
17.5 Fehlerverfolgung 469
18 Dateiserver 471
18.1 SAMBA – die Windows-Connection 471
18.2 Clientzugriff auf SMB-Server 511
18.3 NFS – Network File System 522
18.4 File Transfer Protocol (FTP) 532
18.5 Versionskontrolle und Datensynchronisation 538
19 Datenbanken 549
19.1 Datenbanken funktionieren mit Tabellen 550
19.2 Eine kleine Einführung in SQL 551
19.3 MySQL 558
19.4 PostgreSQL 566
20 Der Webserver Apache 573
20.1 Surfen und Server 573
20.2 Installation und Start des Webservers 575
20.3 Eine erste Website 576
20.4 Die Konfigurationsdateien 579
20.5 Beispiel: Eine Website für mp3-Dateien 587
20.6 Private Verzeichnisadministration: .htaccess 588
20.7 Fehlermeldungen und Aufrufstatistik 590
20.8 Virtuelles Hosting 591
20.9 Gesicherte Übertragung 593
20.10 CGI: Der Server schlägt zurück 597
20.11 Dynamische Websites mit PHP 608
20.12 Web-Applikationen per LAMP 619
21 Der Mailserver 629
21.1 Übersicht 630
21.2 Der Mailserver Postfix 630
21.3 Debian-Standard-MTA Exim4 637
21.4 Szenario: E-Mails lokal verteilen 649
21.5 Lokale Mail an fremden Server senden 652
21.6 SMTP-Sendungen entgegennehmen: Relay 656
21.7 Mail-Clients per POP3 und IMAP bedienen 658
21.8 Post sammeln: Fetchmail 662
21.9 Mailsystem auf PostgreSQL-Basis 664
21.10 Der Kampf gegen das Böse 671
22 Virtuelle Domänen und Maschinen 677
22.1 VirtualBox und der PC im Fenster 678
22.2 OpenVZ und der geteilte Kernel 681
22.3 KVM und die Prozessoren 683
23 Der Server als Multitalent 689
23.1 Der Server als Video-Rekorder 689
23.2 Gemeinsam Texte im Wiki schreiben 693
23.3 Die eigene Cloud mit ownCloud 695
24 Workshop: Schulcomputer und Arbeitsplatzrechner 703
24.1 Der anonyme Arbeitsplatzrechner 704
24.2 Benutzerverzeichnis im Netzwerk 710
24.3 Grafischer Terminalserver und Thin Client 715
24.4 Festplatte kopieren: eine für alle 719
Stichwortverzeichnis 725