135624
Goto Top

Linux debian 9 Installation

Hallo zusammen,

ich habe mich ein wenig mit Debian auseinandergesetzt und möchte mir eine Standard-Installation als Grundlage für andere Installationen erstellen. Ich habe jetzt folgendes durchgeführt um das System abzusichern.

Natürlich gibt es viele Anleitungen zum Hardening. Was sagt ihr zu der aktuellen Konfig und was könnte man noch besser machen? Ich bin ein Freund von sehr schlanken und aufgeräumten Systemen.

Folgendes habe ich durchgeführt:
1. Das ISO debian-9.5.0-amd64-netinst.iso verwendet
2. Neben der Vergabe eines schwierigen Root-Kennwortes habe ich einen weiteren Benutzer bei der Installation
angelegt. Hier habe ich einen individuellen Namen verwendet (nicht Administrator)
3. Partitionierung "Guided - use entire disk"
4. All files in one partition
5. Mirror-Server von debian genommen
6. Nur Standard-Werkzeuge installiert
7. GRUB boot loader auf /dev/sda installiert
8. apt-get update
9. apt-get upgrade
10. SSH-Server installiert (apt-get -y install ssh openssh-server)
11. Nano installiert apt-get -y install vim-nox nano
12. SSH-Server Port auf einen anderen umgestellt
13. SSH-Server Max Sessions auf 1 gestellt
14. SSH-Server PermitRootLogin auf "no" gestellt
15. Iptables deinstalliert
16. UFW installiert und aktiviert (keine Ports freigegeben)

Natürlich hängen es auch davon ab, ob ein System aus dem Internet zugänglich ist (Web-Server) oder nicht, aber ich würde schon gerne alle System so "härten" wollen wie ein System, dass der größt möglichsten Gefahr ausgesetzt ist face-smile

Ich freue mich auf eure Meinungen.

Vielen Dank.
Green14

Content-Key: 389625

Url: https://administrator.de/contentid/389625

Ausgedruckt am: 19.03.2024 um 02:03 Uhr

Mitglied: 129580
129580 16.10.2018 aktualisiert um 19:02:41 Uhr
Goto Top
Hallo,

15. Iptables deinstalliert
16. UFW installiert und aktiviert (keine Ports freigegeben)

Du weißt schon, dass UFW lediglich ein Tool ist um iptables einfacher zu bedienen?
Somit ist die Aussage etwas widersprüchlich, denn UFW braucht iptables.

Grundsätzlich kann man nicht pauschal sagen, was die beste Grundkonfiguration eines Systems ist. Hängt immer auf den Anwendungszweck an.
Ansonsten kann man bei einer Grundinstallation nicht viel falsch machen. Viele Dinge die du hier aufzählst werden schon automatisch durch den Installer vorgenommen. Wobei ich bei der Partitionierung wohl eher auf LVM oder auf ZFS gesetzt hätte. Aber wie gesagt, hängt halt immer auf den Anwendungszweck an.

Edit:
Ich persönlich würde bei SSH die Password Authentifizierung abschalten und nur Public/Private Key erlauben. Und noch zusätzlich Fail2Ban installieren (falls der Server direkt im Netz erreichbar ist und nicht hinter einer Firewall steht).

Edit 2: Da du Debian genommen hast, würde ich noch sudo installieren und ein entsprechendes Berechtigungskonzept nach euren Bedarf konfigurieren. Wenn du total Paranoid bist, kannst du auch noch die TCP Wrapper (hosts.allow und hosts.deny) und SELinux konfigurieren.

Viele Grüße,
Exception
Mitglied: it-fraggle
it-fraggle 16.10.2018 um 19:03:50 Uhr
Goto Top
- SSH nur per Key erlauben.
- So wenig wie möglich installieren. Nur das was du wirklich brauchst
- Keine Werkzeuge drauf lassen wie wget, Compiler, net-tools usw. Alles runter.
- Fail2Ban installieren und einrichten
- Script einbinden, was dir autom. eine Email schickt, wenn sich jemand am System einlogt.
- Richte das System immer nach dem KISS-Prinzip her damit du später noch weißt wie alles zusammenspielt.

Dokumentiere das alles. Einfach und leicht verständlich muss es sein damit du in 2 Jahren noch weißt warum und wieso.
Mitglied: falscher-sperrstatus
falscher-sperrstatus 16.10.2018 um 19:07:08 Uhr
Goto Top
@it-fraggle

Richtiger Ansatz, problem ist dann, wenn er alles aufräumt und er dann wieder Apps installiert, die all das benötigen (er aber denkt, dass es nicht mehr drauf ist face-wink )

Exception hat es bereits richtig erwähnt: es kommt auf den Anwendungsfall an. Einen Best-Case gibt es nur je Szenario und dieser Best-Case wird er vermutlich nicht durch müheloses Nachfragen in einem Forum erlangen.

VG
Mitglied: it-fraggle
it-fraggle 16.10.2018 um 19:10:31 Uhr
Goto Top
Richtiger Ansatz, problem ist dann, wenn er alles aufräumt und er dann wieder Apps installiert, die all das benötigen (er aber denkt, dass es nicht mehr drauf ist)
Naja, das muss eben in Fleisch und Blut übergehen. Dazu gibt es keine Alternative.
Mitglied: falscher-sperrstatus
falscher-sperrstatus 16.10.2018 um 19:12:24 Uhr
Goto Top
Zitat von @it-fraggle:

Richtiger Ansatz, problem ist dann, wenn er alles aufräumt und er dann wieder Apps installiert, die all das benötigen (er aber denkt, dass es nicht mehr drauf ist)
Naja, das muss eben in Fleisch und Blut übergehen. Dazu gibt es keine Alternative.

Bin ich ganz bei dir, aber das sind noch einige Wegmeter, die er gehen muss, wenn er nach der Erstinstallation nach abgetippten Best-Practices sucht.
Mitglied: 135624
135624 16.10.2018 um 19:15:13 Uhr
Goto Top
Hi,

Zitat von @129580:

Hallo,

15. Iptables deinstalliert
16. UFW installiert und aktiviert (keine Ports freigegeben)

Du weißt schon, dass UFW lediglich ein Tool ist um iptables einfacher zu bedienen?
Somit ist die Aussage etwas widersprüchlich, denn UFW braucht iptables.


Ha, ich hätte mal die Einleitung lesen sollen! Okay dann streichen wir das wieder und lassen iptables drauf! Danke für den Hinweis

Zitat von @129580:
Wobei ich bei der Partitionierung wohl eher auf LVM oder auf ZFS gesetzt hätte. Aber wie gesagt, hängt halt immer auf den Anwendungszweck an.

Okay, kannst Du mir das kurz erläutern?

Zitat von @129580:
Edit:
Ich persönlich würde bei SSH die Password Authentifizierung abschalten und nur Public/Private Key erlauben. Und noch zusätzlich Fail2Ban installieren (falls der Server direkt im Netz erreichbar ist und nicht hinter einer Firewall steht).

Okay ich schau mir mal an, wie man das mit einem Key macht face-smile Das Ding hängt hinter einer Firewall, aber ggf. macht das bei einem Webserver doch Sinn, oder?

Ja und Paranoid bin ich immer :D

Danke für Deine Antwort.

VG,
Green14
Mitglied: 135624
135624 16.10.2018 um 19:16:50 Uhr
Goto Top
Hi,

Zitat von @it-fraggle:

- Keine Werkzeuge drauf lassen wie wget, Compiler, net-tools usw. Alles runter.
- Script einbinden, was dir autom. eine Email schickt, wenn sich jemand am System einlogt.
- Richte das System immer nach dem KISS-Prinzip her damit du später noch weißt wie alles zusammenspielt.

Dokumentiere das alles. Einfach und leicht verständlich muss es sein damit du in 2 Jahren noch weißt warum und wieso.

Das werde ich so mal machen. Wie genau geht man da vor? Einfach jeden Service Googlen oder gibt es da einen anderen Ansatz?


Danke,
Green14
Mitglied: 135624
135624 16.10.2018 um 19:22:24 Uhr
Goto Top
Hallöchen,


Zitat von @falscher-sperrstatus:

@it-fraggle

Richtiger Ansatz, problem ist dann, wenn er alles aufräumt und er dann wieder Apps installiert, die all das benötigen (er aber denkt, dass es nicht mehr drauf ist face-wink )

Exception hat es bereits richtig erwähnt: es kommt auf den Anwendungsfall an. Einen Best-Case gibt es nur je Szenario und dieser Best-Case wird er vermutlich nicht durch müheloses Nachfragen in einem Forum erlangen.

VG

Das verstehe ich nicht ganz. D.h. wenn ich Pakete installiere, werden einige Tools einfach wieder mit installiert?

Zitat von @falscher-sperrstatus:
Bin ich ganz bei dir, aber das sind noch einige Wegmeter, die er gehen muss, wenn er nach der Erstinstallation nach abgetippten Best-Practices sucht.

Wie ist denn der beste Ansatz? Ich würde mir das schon gerne anschauen, da ich es einfach aufgeräumter als einen Windows-Server finde und ich hab bis dato nur Windows gemacht. Nur hin und wieder mal Debian installiert.

VG
Green14
Mitglied: 129580
129580 16.10.2018 um 19:24:01 Uhr
Goto Top
Hallo,

nichts für ungut aber du bist wohl ein Neuling in der Linux Welt? Dann würde ich dir erstmals empfehlen, dich mit Linux Grundlagen zu beschäftigen. Dazu gibt es zahlreiche Tutorial und Dokus im Netz. Ansonsten gibt es noch Openbooks von Rheinwerk-Verlag. Alternativ findest du in der Bibliothek zahlreiche Fachbücher zu Linux. Anschließend baust du dir erstmal lokal eine Testumgebung auf und übst erstmal, bevor du dich an eine produktive Umgebung wagst.

Viele Grüße
Exception
Mitglied: 135624
135624 16.10.2018 um 19:29:04 Uhr
Goto Top
Hi,

ufw hat scheinbar iptables wieder mit installiert. Das meint @certifiedit.net also.

Alles gut, so ist ja auch ungefähr der Plan.

VG
Green14
Mitglied: falscher-sperrstatus
falscher-sperrstatus 16.10.2018 aktualisiert um 19:31:02 Uhr
Goto Top
Das verstehe ich nicht ganz. D.h. wenn ich Pakete installiere, werden einige Tools einfach wieder mit installiert?

wie bei Windows auch, egal ob Ballerspiel oder Exchange.

Linux ist de facto nicht aufgeräumter als Windows, es kommt manchmal nur so rüber, weil dort noch geringfügig weniger Entwickler dran waren, die das mal kurz Nebenher unter Zeitdruck gemacht haben *** (keine Allgemeingültige Aussage).

VG
Mitglied: Kraemer
Kraemer 16.10.2018 um 20:02:39 Uhr
Goto Top
^^Zitat von @135624:
13. SSH-Server Max Sessions auf 1 gestellt
Das kann bei Servern, auf die man nur Remote Zugriff hat, ein ganz böses Eigentor werden
Mitglied: 130127
130127 16.10.2018 um 20:46:13 Uhr
Goto Top
Grüß dich,

ein böses Eigentor weil nur noch eine aktive SSH Sitzung möglich ist ?

mfg
Mitglied: aqui
aqui 17.10.2018 um 09:56:54 Uhr
Goto Top
Mitglied: Lochkartenstanzer
Lochkartenstanzer 17.10.2018 um 10:10:39 Uhr
Goto Top
Moin,

debian auf "Vorrat" installieren lohnt sich nur für Testsysteme. Bei Produktivsystemen muß man die Parameter dem Bedarf angleichen und da gleicht sich selten ein System dem anderen.

zu der Partitionierung:

Ich packe generell Daten und System auf verschiedene Partitionen,was das "restaurieren" im Fall des Falles oft vereinfacht.

d.h. bei Bedarf extra Partitionen (oder LVs) für /home, /srv oder /opt. /var packe ich oft in ein eigenes Volume, damit diese das System nicht beeinträchtigt, wenn sie mal im Fehlerfall vollläuft.

LVM sollte man immer einsetzen, damit man für sich ändernde Anforderungen (mehr Platz, umverteilung der Volumegrößen, etc.) gewappnet ist.

Ansonsten:
1. Das ISO debian-9.5.0-amd64-netinst.iso verwendet

Ob man netinst oder das "vollpaket" nimmt ist egal, solange man mit der Minimalinstallation anfängt.

2. Neben der Vergabe eines schwierigen Root-Kennwortes habe ich einen weiteren Benutzer bei der Installation
angelegt. Hier habe ich einen individuellen Namen verwendet (nicht Administrator)

"schwieriges" kennwort ist nciht immer gut, z.B. wenn Du Dich zu oft vertippst oder das PW vergißt ist das kontraproduktiv.

Und unter Linux heißt der Admin immer root!

3. Partitionierung "Guided - use entire disk"

Das mach man manuell um es den Anforderugne anzupassen.

4. All files in one partition

s.o.

5. Mirror-Server von debian genommen

Das bliebt dem persönlichen Geschmack überlassen, ist aber gegenüber dem Projekt net, wenn man ncith die zentralen Serve rüberlastet.

6. Nur Standard-Werkzeuge installiert

Definiere "Standard-Werkzeuge". Das ist vom Einzelfall abhängig, welche Wrerkzeuge dazu gehören. Du nimmst ja auch nith die gesammte Werkstatt mit oder nur die Schraubenzieher, wenn u zum Kunden gehst, sondern genau die Werkzeuge, die Du erwartest zu nutzen.

7. GRUB boot loader auf /dev/sda installiert

wo denn sonst?

8. apt-get update
9. apt-get upgrade

Machst du das auch regelmäßig?

10. SSH-Server installiert (apt-get -y install ssh openssh-server)

Grundvoraussetzung für Administration über Netzwerk. du solltest Anmeldung nur über zertifikate erlauben, um Fremde auszuschließen.

11. Nano installiert apt-get -y install vim-nox nano

Geschmaclssache vi oder emacs reicht vollständig. Zur Not kannst du mit sed auch alles machen.

12. SSH-Server Port auf einen anderen umgestellt

Das ist nur kosmetischer Schnickschnack. fail2ban und zertifikate bringen da wesentlich mehr.

13. SSH-Server Max Sessions auf 1 gestellt

Unnötig.

14. SSH-Server PermitRootLogin auf "no" gestellt

default!

15. Iptables deinstalliert

Murks.

16. UFW installiert und aktiviert (keine Ports freigegeben)

Unnötiges Tool.

lks
Mitglied: erikro
erikro 18.10.2018 um 12:47:52 Uhr
Goto Top
Moin,

Zitat von @130127:
ein böses Eigentor weil nur noch eine aktive SSH Sitzung möglich ist ?

Ohja! Wenn Du nämlich was konfigurierst, das Dich selbst aussperrt. Dann ist man froh, wenn man noch eine offene Sitzung in Reserve hat. face-wink

Liebe Grüße

Erik