O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Der eigene Server mit FreeBSD 9

Book Description

  • nicht nur FreeBSD-Handbuch, sondern echtes Server-Knowhow+ einziges Buch zur aktellen FreeBSD-Version

Table of Contents

  1. Cover
  2. Titel
  3. Impressum
  4. Inhaltsverzeichnis
  5. Vorwort und Typografie
    1. Vorwort
    2. Voraussetzungen
      1. Typografie
      2. vi beenden
      3. Online-Hilfe
  6. 1. Eine Einführung
    1. 1.1 Was bedeutet es, Administrator zu sein?
    2. 1.2 Warum FreeBSD?
    3. 1.3 Das Ziel dieses Buchs
    4. 1.4 Neuerungen in FreeBSD 9
    5. 1.5 Der neue Installer
    6. 1.6 High Availability Storage
    7. 1.7 Ressourcenbeschränkungen
    8. 1.8 Kernel-Dumps auf andere Systeme
    9. 1.9 Das Sandbox-Framework Capiscum
  7. 2. FreeBSD installieren
  8. 3. Erste Schritte im neuen System
    1. 3.1 Arbeiten mit dem Server
    2. 3.2 Das richtige Passwort
    3. 3.3 Die Verzeichnisstruktur von FreeBSD
    4. 3.4 Die Editoren »vi« und »ee«
      1. 3.4.1 vi
      2. 3.4.2 ee
    5. 3.5 »sudo« – weil es nicht immer root sein muss
    6. 3.6 Die Shell anpassen
    7. 3.7 SSH absichern
      1. 3.7.1 Gefühlte Sicherheit erhöhen
      2. 3.7.2 Tatsächliche Sicherheit erhöhen
    8. 3.8 Zeitsynchronisation per NTP
    9. 3.9 E-Mails für root an ein Postfach weiterleiten
    10. 3.10 Zusammenfassung
  9. 4. Erste Gedanken zur Sicherheit
    1. 4.1 Die Benutzerverwaltung
    2. 4.2 Das Berechtigungsmodell
    3. 4.3 Der Systemaufbau in diesem Buch
    4. 4.4 Zusammenfassung
  10. 5. Das System aktuell halten
    1. 5.1 System-Updates installieren
    2. 5.2 Release-Wechsel durchführen
    3. 5.3 Zusammenfassung
  11. 6. Software installieren
    1. 6.1 Der Portstree
      1. 6.1.1 Den Portstree installieren
      2. 6.1.2 Den Portstree aktualisieren
      3. 6.1.3 Den Portstree durchsuchen
      4. 6.1.4 Ports installieren
      5. 6.1.5 Der Compiler-Cache ccache
      6. 6.1.6 Installierte Software verändern
      7. 6.1.7 Ports aktualisieren
      8. 6.1.8 Ports deinstallieren
      9. 6.1.9 Unsichere Ports erkennen
    2. 6.2 pkg als Alternative zum Portstree
      1. 6.2.1 Ein Paket installieren
      2. 6.2.2 Ein Paket aktualisieren
      3. 6.2.3 Ein Paket deinstallieren
    3. 6.3 Überflüssige Ports aufspüren
    4. 6.4 Zusammenfassung
  12. 7. Die Firewall konfigurieren
    1. 7.1 Brauche ich eine Firewall auf dem Server?
    2. 7.2 Firewall mit pf
      1. 7.2.1 Der Firewall-Airbag
      2. 7.2.2 Grundlegende Optimierungen
      3. 7.2.3 Firewallregeln
      4. 7.2.4 Eine Beispielkonfiguration
      5. 7.2.5 pf aktivieren
      6. 7.2.6 pf steuern
    3. 7.3 Spezielle pf-Konfigurationen
      1. 7.3.1 Dienste mit sshguard schützen
      2. 7.3.2 Brute-Force-Schutz mit expire-Table
    4. 7.4 Firewall-Monitoring mit pftop
    5. 7.5 Packet Queueing und Priorisierung
      1. 7.5.1 Priority Based Queueing
      2. 7.5.2 Class Based Queueing
      3. 7.5.3 Scheduler-Optionen
      4. 7.5.4 Queues zuweisen
    6. 7.6 Zusammenfassung
  13. 8. Arbeiten mit Jails
    1. 8.1 Was sind Jails?
    2. 8.2 Das System für Jails vorbereiten
      1. 8.2.1 IP-Aliase anlegen
      2. 8.2.2 Firewallregeln anpassen
      3. 8.2.3 FreeBSD-Quellcode auschecken
    3. 8.3 Das Jail-Framework ezJail
    4. 8.4 Jails anlegen, starten und konfigurieren
      1. 8.4.1 Jail-Vorlage anpassen
      2. 8.4.2 Jail anlegen
      3. 8.4.3 Jail starten
      4. 8.4.4 Jail betreten und verlassen
      5. 8.4.5 Jail stoppen
      6. 8.4.6 Jail löschen
      7. 8.4.7 Jail deaktivieren und aktivieren
      8. 8.4.8 Portstree in eine Jail mounten
    5. 8.5 Backup einer Jail anlegen und wiederherstellen
    6. 8.6 ccache-Konfiguration anpassen
    7. 8.7 Binary-Update für die Basejail
    8. 8.8 Ressourcenbeschränkungen für Jails
      1. 8.8.1 RCTL-Unterstützung aktivieren
      2. 8.8.2 Obergrenzen festlegen
      3. 8.8.3 Ressourcennutzung anzeigen
      4. 8.8.4 Einschränkungen entfernen
    9. 8.9 Zusammenfassung
  14. 9. Appliances konfigurieren
    1. 9.1 Datenbankserver
      1. 9.1.1 MySQL
      2. 9.1.2 MySQL-Server-Tuning
      3. 9.1.3 MariaDB
      4. 9.1.4 Drizzle
      5. 9.1.5 Replikation von MySQL- und MariaDB-Datenbanken
        1. 9.1.5.1 Master/Slave-Replikation
        2. 9.1.5.2 Master/Master-Replikation
      6. 9.1.6 Zusammenfassung
    2. 9.2 Webserver
      1. 9.2.1 nginx
        1. 9.2.1.1 Installation und Konfiguration
        2. 9.2.1.2 vHosts anlegen
        3. 9.2.1.3 Die location-Direktive
        4. 9.2.1.4 Ein vollständiger vHost
        5. 9.2.1.5 Berechtigungen richtig setzen
        6. 9.2.1.6 Passwortschutz für Verzeichnisse
        7. 9.2.1.7 SSL-Verschlüsselung für vHosts
        8. 9.2.1.8 nginx gegen (D)DoS-Attacken rüsten
      2. 9.2.2 PHP 5 per FastCGI
        1. 9.2.2.1 Installation
        2. 9.2.2.2 PHP-FPM als FastCGI-Manager
        3. 9.2.2.3 Benutzer und Gruppe anlegen
        4. 9.2.2.4 PHP 5 absichern
        5. 9.2.2.5 PHP 5-Prozesse konfigurieren und starten
        6. 9.2.2.6 PHP 5 im vHost konfigurieren
      3. 9.2.3 Webapplication-Firewall mit nginx
        1. 9.2.3.1 Das NAXSI-Modul installieren
        2. 9.2.3.2 Den vHost für NAXSI konfigurieren
        3. 9.2.3.3 Die Whitelist erstellen
        4. 9.2.3.4 Die Whitelist aktivieren
      4. 9.2.4 Zusammenfassung
    3. 9.3 FTP-Server mit Pure-FTPd
      1. 9.3.1 FTP-Benutzer anlegen
      2. 9.3.2 Firewall anpassen
    4. 9.4 Mailserver mit IMAP und POP3
      1. 9.4.1 Die Mailserverkomponenten
      2. 9.4.2 Der MTA: Postfix
        1. 9.4.2.1 sendmail deaktivieren
        2. 9.4.2.2 Postfix installieren
        3. 9.4.2.3 Die MySQL-Datenbank pflegen
        4. 9.4.2.4 Postfix konfigurieren
        5. 9.4.2.5 Weitere Verzeichnisse und Zertifikate erstellen
      3. 9.4.3 Der MDA: Dovecot
      4. 9.4.4 Berechtigungen setzen
      5. 9.4.5 Firewall anpassen
      6. 9.4.6 Postfächer und E-Mail-Adressen verwalten
        1. 9.4.6.1 SQL-Befehle zur Benutzerverwaltung
        2. 9.4.6.2 PostfixAdmin installieren
      7. 9.4.7 E-Mail-Clients konfigurieren
      8. 9.4.8 Spam- und Virenabwehr
        1. 9.4.8.1 Blacklists
        2. 9.4.8.2 Spam-Filter und Virenscanner per DSPAM integrieren
        3. 9.4.8.3 Sender Policy Framework
        4. 9.4.8.4 Dovecot-Antispam
        5. 9.4.8.5 Spam-Bekämpfung auf Firewallebene
        6. 9.4.8.6 Greylisting mit SQLgrey
      9. 9.4.9 E-Mails mit Sieve sortieren
        1. 9.4.9.1 Was ist Sieve?
        2. 9.4.9.2 Die Syntax von Sieve
        3. 9.4.9.3 Sieve-Plug-in installieren
      10. 9.4.10 Jails anpassen
      11. 9.4.11 DNS-Einstellungen vornehmen
      12. 9.4.12 Zusammenfassung
    5. 9.5 Cache-Server
      1. 9.5.1 Memcached
      2. 9.5.2 Redis
    6. 9.6 Subversion-Server
      1. 9.6.1 Repositories anlegen
      2. 9.6.2 Repositories sichern
      3. 9.6.3 Repositories wiederherstellen
    7. 9.7 Virtual Private Network (VPN)
      1. 9.7.1 Client/Server-Verbindung
      2. 9.7.2 Server/Server-Verbindung
        1. 9.7.2.1 Die Funktionsweise von tinc
        2. 9.7.2.2 Tinc installieren
        3. 9.7.2.3 Den VPN-Server konfigurieren
        4. 9.7.2.4 Den VPN-Client konfigurieren
    8. 9.8 Samba-Server für Intranets
      1. 9.8.1 Öffentliche Freigaben
      2. 9.8.2 Geschützte Freigaben
      3. 9.8.3 Benutzer verwalten
      4. 9.8.4 Samba starten
  15. 10. Daten sichern
    1. 10.1 Backups erstellen
      1. 10.1.1 Backup-Profil anlegen
      2. 10.1.2 GPG-Verschlüsselung konfigurieren
      3. 10.1.3 Backup-Profil konfigurieren
      4. 10.1.4 Verzeichnisse ausschließen
      5. 10.1.5 Befehle vor oder nach dem Backup-Prozess ausführen
      6. 10.1.6 Backup anlegen
      7. 10.1.7 Dateien wiederherstellen
      8. 10.1.8 Backup-Speicher bereinigen
    2. 10.2 Datensicherung mit Snapshots
      1. 10.2.1 Snapshot erstellen
      2. 10.2.2 Snapshots anzeigen
      3. 10.2.3 Snapshots mounten
      4. 10.2.4 Snapshots automatisieren
    3. 10.3 Datenbanken sichern mit AutoMySQLBackup
    4. 10.4 Zusammenfassung
  16. 11. Serverüberwachung
    1. 11.1 Hardware-Monitoring
      1. 11.1.1 Festplatten überwachen
      2. 11.1.2 Die CPU überwachen
    2. 11.2 Service-Monitoring
      1. 11.2.1 Monitoring mit monit
        1. 11.2.1.1 Allgemeine Einstellungen
        2. 11.2.1.2 Überwachungsaufgaben konfigurieren
        3. 11.2.1.3 Überwachung von Services in einer Jail
        4. 11.2.1.4 Webinterface für monit
      2. 11.2.2 Der Logfile-Parser logwatch
      3. 11.2.3 Der Logging-Daemon rsyslog
        1. 11.2.3.1 syslog ersetzen
        2. 11.2.3.2 MySQL-Server konfigurieren
        3. 11.2.3.3 rsyslog konfigurieren
    3. 11.3 Kombinierte Überwachung mit munin
      1. 11.3.1 Den Master konfigurieren
      2. 11.3.2 Clients konfigurieren
    4. 11.4 Einbruchsversuche erkennen und abwehren
      1. 11.4.1 Ports überwachen mit portsentry
      2. 11.4.2 Einfache Integritätsprüfung mit freebsd-update
    5. 11.5 Zusammenfassung
  17. 12. Für Fortgeschrittene
    1. 12.1 Software-RAID1 mit gmirror
      1. 12.1.1 Partitionstabellen abgleichen
      2. 12.1.2 Partitionen spiegeln
      3. 12.1.3 RAID-Verbund wiederherstellen
    2. 12.2 Loadbalancer und Reverse Proxies
      1. 12.2.1 pound (ohne Caching)
      2. 12.2.2 HAproxy (ohne Caching)
        1. 12.2.2.1 Session-Persistence
        2. 12.2.2.2 Access Control Lists (ACL)
        3. 12.2.2.3 HAproxy starten
      3. 12.2.3 nginx (mit Caching)
        1. 12.2.3.1 Installation
        2. 12.2.3.2 Konfiguration mit Festplatten-Cache
        3. 12.2.3.3 Konfiguration mit Memcached
    3. 12.3 Loadbalancing mit Failover für TCP-Verbindungen
    4. 12.4 Port-Knocking
    5. 12.5 FreeBSD abhärten
      1. 12.5.1 Zugriffsrechte beschränken
      2. 12.5.2 Sysctl-Flags setzen
      3. 12.5.3 Sicherheitsstufen anpassen
      4. 12.5.4 Dateien vor Veränderung schützen
      5. 12.5.5 Sicherheitsstufe per Passwort heruntersetzen
      6. 12.5.6 Sicherheitsstufen in Jails
      7. 12.5.7 Logrotation trotz »append-only«-Markierung
    6. 12.6 Device-Polling für Netzwerkkarten aktivieren
      1. 12.6.1 Den Kernel konfigurieren und installieren
      2. 12.6.2 Konfiguration der Netzwerkkarten anpassen
    7. 12.7 IPv6 auf dem Hostsystem konfigurieren
    8. 12.8 Einen eigenen Kernel kompilieren
      1. 12.8.1 Den Quellcode aktualisieren
      2. 12.8.2 Den Kernel konfigurieren
      3. 12.8.3 Den Kernel kompilieren
      4. 12.8.4 Den neuen Kernel testen
      5. 12.8.5 Den neuen Kernel installieren
    9. 12.9 Zusammenfassung
  18. 13. Server läuft – was jetzt?
  19. Index