110.2 Einen Rechner absichern

Aus ITWiki
Zur Navigation springen Zur Suche springen

1 110.2 Einen Rechner absichern

1.1 Superdaemons und TCP-Wrapper

  • absichern gegenüber Angreifern und Hardwareressourcen besser ausnutzen

1.1.1 Superdeamons inetd und xinetd

1.1.1.1 inetd

  • Superdeamon, älter als xinetd,
  • lauscht stellvertretend an TCP- und UDP-Ports für Serverdienste,
  • Client nimmt Verbindung mit von inetd kontrolliertem Netzwerkdienst auf, inetd übergibt an TCP-Wrapper als Daemon tcpd, der die Dienste startet und übergibt Kontrolle an Client,
  • welche Dienste inetd kontrollieren soll, muss in /etc/inetd.conf festegelegt werden,
  • nach Änderung in /etc/inetd.conf, muss inetd neu gestartet werden, damit Änderung greift


wichtig: inetd ist nicht Bestandteil der Prüfung, Erklärung hilft Funktion von xinetd besser zu verstehen


1.1.1.2 xinetd

  • aktueller Superdeamon, mit integriertem TCP-Wrapper, kann auch Dienste starten, die nicht in Datei /etc/services eingetragen sind,
  • erheblich mehr Optionen als inetd => komplexere Konfiguration als inetd,
  • Hauptkonfigurationsdatei: /etc/xinetd.conf,
  • xinetd hat integrierten Wrapper, startet Dienste selbst, tcpd hier überflüssig


1.1.2 TCP-Wrapper

  • ist eine Software zum Schutz vor unerwünschtem Zugriff aus einem Rechnernetz,
  • Konfigurationsdateien sind /ect/hosts.allow und /etc/hosts.deny,
  • Verarbeitungsweise Konfigurationsdateien ist speziell:
    • bei Eintrag in /etc/hosts.allow, wird selber Eintrag in /etc/hosts.deny ignoriert
    • wenn keine Einräge in /etc/hosts.allow und /etc/hosts.deny vorhanden sind, wird Zugriff erlaubt
    • wenn eine oder beide Dateien nicht(mehr) vorhanden sind, ist das so als wären beide leer => Zugriff wird erlaubt
  • sichere Grundkionfiguration:
    • erst mal alles verbieten mit Eintrag ALL : ALL in /etc/hosts.deny
    • dann Schritt für Schritt Zugriffe erlauben in /etc/hosts.allow

1.2 Nicht benötigte Dienste und Konten deaktivieren

1.2.1 /etc/nologin, /etc/init.d und /etc/inittab, /etc/passwd und /etc/shadow

1.2.1.1 /etc/nologin

  • verhindern, dass sich ein Benutzer interakiv an einem System anmeldet,
  • einfach Datei /etc/nologin (z.B. mit touch) anlegen,
  • Nachricht für nicht authoriserten Benutzer hinterlassen, Inhalt wird bei Login-Versuch angezeigt

1.2.1.2 /etc/init.d und /etc/inittab

1.2.1.2.1 /etc/init.d
  • Dienste, die dort nicht aufgeführt sind, sind deaktivert
1.2.1.2.2 /etc/inittab
  • Begrenzung der möglichen TTY-Konsolen, z.B. auf 1 => verhindert, dass man offene Sitzungen vergißt zu schließen (=hohes Sicherheitsrisiko),
  • (nur noch in älteren Distributionen noch vorhnden; für mehr Infos siehe 101.3)

Anzahl der Konsolen wird heute mit systemd begrenzt:

  • in Datei /etc/systemd/logind.conf NAutoVTs=1 eintragen


1.2.1.3 /etc/passwd und /etc/shadow

  • wichtig ist bei beiden die Verwendung des 2.Feldes

2.Feld bei /etc/passwd

  • X (heißt, Passwort steht in /etc/shadow)
  • * (heißt, User darf sich nicht anmelden)
  • Ein Leerzeichen steht für ein leeres Passwort-Verfallszeiten

2.Feld bei /etc/shadow, hier stehen die verschlüsselten Passwörter

  •  ! oder * (heißt Benutzer kann sich mit Unix-Passwort nicht anmelden)

1.3 Quelle

  • Buch LPIC-1 Version 5 (Kapitel 110.2 S. 443-448)