Sichern einer Debian-Installation für den allgemeinen Heimgebrauch

8

Debian wird mit mehreren hardenPaketen geliefert, die einen Computer sicherer machen sollen. Meine Bedürfnisse sind sehr einfach: Textverarbeitung und Surfen im Internet. Ich betreibe keine speziellen Server, verwende kein SSH, Telnet usw. Die einzige Software, die das mir bekannte Internet nutzen sollte, ist iceweaselund apt.

  • Gibt es eine Möglichkeit, um sicherzustellen, dass nur diese beiden Softwareteile auf das Internet zugreifen können?
  • Sind einige der hardenPakete für diese Anforderungen geeignet?
Dorf
quelle
1
Siehe auch Härten von Linux Server und Secure Linux Desktop zur Informationssicherheit
Gilles 'SO - hör auf böse zu sein'

Antworten:

6

In einer Standardbenutzerinstallation ist nur ssh als Serveranwendung installiert, die Sie einfach über aptitude remove openssh-serveroder über einen anderen von Ihnen verwendeten Paketmanager deinstallieren können .

Das Einschränken des Netzwerkzugriffs für Anwendungen ist schwierig. {{EDIT : Es wurde jedoch Leopard Flower entwickelt, das die Funktionen bietet, die Sie benötigen (pro-Prozess-Firewall, interaktive Benutzeroberfläche). }} Siehe Pro-Prozess-Firewall? Weitere Informationen zum Thema. Ohne komplizierte Lösungen können Sie den Netzwerkzugriff nur über das iptables- ownerModul auf bestimmte Benutzer beschränken .

Als normaler Benutzer benötigen Sie keine harden-*Pakete. Sie stehen entweder in Konflikt mit unsicheren Paketen, die Sie wahrscheinlich sowieso nicht installiert haben, oder Sie installieren Sicherheitspakete, die für normale Systeme zu kompliziert sind, um sie zu konfigurieren und zu warten - wie Netzwerkeinbruchssysteme.

Jofel
quelle
3

Ich würde der strikten Verwendung von iptables zustimmen. Es ist eine sehr einfache befehlszeilenbasierte Firewall, die den Kernel verwendet (in den meisten Distributionen).

Ein weiterer Vorschlag, den ich machen würde, ist Selinux. Ich bin mir nicht sicher, ob Debian jetzt standardmäßig mitgeliefert wird. Kurz gesagt, Selinux ist eine obligatorische Zugriffssteuerung, dh auf Kernelebene regelt es die Kommunikation zwischen der Anwendung und externen Ressourcen (dh Dateien und Systemeigenschaften). Als Nebenbemerkung wurde es auch mit Hilfe der NSA entwickelt. Mit Selinux-Profilen können Sie verhindern, dass Anwendungen Dateien lesen, die über ihren Umfang hinausgehen.

In Kombination mit den Best Practices wie dem Deaktivieren nicht benötigter Dämonen sind gute Firewall-Regeln für Selinux möglicherweise die Option, nach der Sie suchen, um diese Box zu schützen.

Andrew Munro
quelle
Diese Antwort könnte verbessert werden, indem ein Beispiel für eine Selinux-Richtlinie bereitgestellt wird, die zeigt, was das OP verlangt.
Jmtd
Wie hier angefordert, finden Sie hier ein gutes Cent OS-Beispiel für das Härten eines Apache-Zugriffs mithilfe der Selinux-Befehlszeile. wiki.centos.org/HowTos/…
Andrew Munro
2

Leider scheint es keine Linux-Alternativen zu littlesnitchoder zu gebenzonealarm , und die meisten GUI-Firewalls werden Sie begeistern. Sie können natürlich einige nützliche Dinge mit iptablesund Verbindungsverfolgung tun.

Ein oft übersehener Nutzen ist tcpwrappers. Ich würde eine Regel hinzufügen zu /etc/hosts.deny:

ALL: PARANOID

Deaktivieren Sie außerdem Ping und andere ICMP-Antworten, indem Sie die folgende Zeile hinzufügen /etc/sysctl.conf:

net.ipv4.icmp_echo_ignore_all = 1

EDIT : Ich bin geneigt, jmtd zuzustimmen. Beim zweiten Gedanken gibt es bessere Möglichkeiten , Pings zu filtern.

Kwarrick
quelle
Das Problem tcpwrappersist die Anmeldung : Das Programm muss mit der Wrapper-Bibliothek verknüpft sein, damit es tatsächlich wirksam wird. iceweaselist nicht. Sie könnten es durch einen LD_PRELOADTrick erzwingen, wenn Sie wollten.
Jmtd
Das Deaktivieren von ICMP-Antworten ist aus Sicherheitsgründen fragwürdig und nicht ohne Kosten: Es kann die Netzwerkinteraktionen erheblich verlangsamen, wenn eine Antwort auf eine Zeitüberschreitung wartet, anstatt eine explizite Ablehnung zu erhalten. Ratenbegrenzende Antworten zum Schutz vor DDoS sind ein viel besserer Ansatz. ICMP-DDoS ist in der heutigen Zeit für Desktop-Benutzer fast kein existierendes Problem.
Jmtd
@jmtd tcpwrapper ist nicht LD_PRELOAD-fähig. Programme müssen es unterstützen. Für statisch verknüpfte Programme LD_PRELOADwürde das sowieso nicht funktionieren.
Jofel
@jmtd Ich stimme zu, ich habe meine Antwort bearbeitet. Ich glaube jedoch immer noch, dass das Ignorieren von Pings nicht zum Schutz vor ICMP-DDoS von Vorteil ist, nur um eine Hosterkennung zu vermeiden.
Kwarrick
1

Beenden Sie alle Dienste, die Sie nicht starten möchten: ssh, smtp, http, was auch immer Sie sonst nicht starten möchten. Richten Sie Ihre iptables so ein , dass alles blockiert wird, was auf Ihren Computer zugreift oder Ihren Computer außer der gewünschten Software lässt.

Beachten Sie, dass ich nicht eine ganze Liste von Befehlen zum Eingeben gebe, da es wichtig ist, dass man die Auswirkungen von Diensten und iptables lernt und versteht, bevor man mit ihnen spielt.

Sardathrion - gegen SE-Missbrauch
quelle
1

Die beliebteste Basis für Netzwerkfilterung / Firewalls unter Linux ist die iptables, die nicht auf Anwendungsbasis funktioniert. Was Sie benötigen, ist ein Sicherheitsrichtlinienprogramm, das verhindern kann, dass Programme auf Netzwerkressourcen zugreifen können. Zwei Ansätze wären SELinux und AppArmor .

Hier sind einige Beispiele für AppArmor-Rezepte , von denen eines den Netzwerkzugriff für Firefox / Iceweasel eröffnet.

jmtd
quelle