Linux debian 9 Installation

Mitglied: 135624

135624

16.10.2018, aktualisiert 18:50 Uhr, 2048 Aufrufe, 16 Kommentare, 1 Danke

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
Mitglied: 129580
129580 (Level 2)
16.10.2018, aktualisiert um 19:02 Uhr
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
Bitte warten ..
Mitglied: it-fraggle
16.10.2018 um 19:03 Uhr
- 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.
Bitte warten ..
Mitglied: certifiedit.net
16.10.2018 um 19:07 Uhr
@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
Bitte warten ..
Mitglied: it-fraggle
16.10.2018 um 19:10 Uhr
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.
Bitte warten ..
Mitglied: certifiedit.net
16.10.2018 um 19:12 Uhr
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.
Bitte warten ..
Mitglied: 135624
135624 (Level 1)
16.10.2018 um 19:15 Uhr
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
Bitte warten ..
Mitglied: 135624
135624 (Level 1)
16.10.2018 um 19:16 Uhr
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
Bitte warten ..
Mitglied: 135624
135624 (Level 1)
16.10.2018 um 19:22 Uhr
Hallöchen,


Zitat von certifiedit.net:

@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 certifiedit.net:
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
Bitte warten ..
Mitglied: 129580
129580 (Level 2)
16.10.2018 um 19:24 Uhr
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
Bitte warten ..
Mitglied: 135624
135624 (Level 1)
16.10.2018 um 19:29 Uhr
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
Bitte warten ..
Mitglied: certifiedit.net
16.10.2018, aktualisiert um 19:31 Uhr
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
Bitte warten ..
Mitglied: Kraemer
16.10.2018 um 20:02 Uhr
^^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
Bitte warten ..
Mitglied: Hans-Ulrich-Rudel
16.10.2018 um 20:46 Uhr
Grüß dich,

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

mfg
Bitte warten ..
Mitglied: Lochkartenstanzer
17.10.2018 um 10:10 Uhr
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
Bitte warten ..
Mitglied: erikro
18.10.2018 um 12:47 Uhr
Moin,

Zitat von Hans-Ulrich-Rudel:
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
Bitte warten ..
Heiß diskutierte Inhalte
Netzwerkprotokolle
DHCP-Server vom ausgeschalteten PC?
pow3rlock3Vor 1 TagFrageNetzwerkprotokolle48 Kommentare

Guten Tag in die Runde, kurz zu mir: IT-Administrator und seit über 20 Jahren im PC-Bereich unterwegs. habe zu Hause jetzt ein Problem: grober ...

LAN, WAN, Wireless
Fritzbox mit Switch verbinden und Vlan einrichten
Forrest57Vor 1 TagFrageLAN, WAN, Wireless35 Kommentare

Hallo zusammen. Möchte meine Geräte über VLAN trennen. Anhand der Zeichung sieht man wie das Netz aufgebaut sein soll es ist ein 24 Port ...

Firewall
PfSense direkt an Glasfasermodem der Telekom über PPPoE
snah0815Vor 1 TagFrageFirewall24 Kommentare

Hallo Zusammen, nachdem ich die pfSense nun eine Zeit lang in einer Kaskade mit einer Fritzbox 7590 betrieben habe, möchte ich nun gerne die ...

Netzwerkmanagement
TIA568A oder B - Leistungsunterschiede oder egal?
gelöst alboshiroVor 1 TagFrageNetzwerkmanagement15 Kommentare

Hallo Zusammen, ich bin aktuell im Hausbau und habe in jedem Zimmer ein RJ45 CAT7 Ethernetkabel für jeden Raum verlegt. Jetzt müsste ich die ...

LAN, WAN, Wireless
WLAN-ACCESSPOINT welche soll ich mir kaufen?
samet22Vor 1 TagFrageLAN, WAN, Wireless11 Kommentare

Hallo :) Ich halte mich kurz: Ich möchte mir neue WLAN-Accesspoints für die Firma kaufen da die jetzigen fast 7 Jahre alt sind und ...

Webentwicklung
Wo legt Joomla den Content im Verzeichnis ab ?
MachelloVor 1 TagFrageWebentwicklung17 Kommentare

Hallo Zusammen, ich habe folgendes Problem: Ich benötige Daten aus einer alten Joomla Webseite. Von dieser Webseite habe ich nur das komplette Verzeichnis vom ...

Internet
Kein Internet nach Windows 19 Server installation
gelöst ZygmundVor 9 StundenFrageInternet24 Kommentare

Komputer : HP ProLiant DL580 Gen7 , 4x CPU , 16 GB ECC Ram, 1 TB SAS Installation von - Windows 8 Server - ...

Monitoring
PC Monitoring Software?
TRON06Vor 1 TagFrageMonitoring9 Kommentare

Gibt es eine Monitoring Software (ähnlich wie HWiNFO) mit der man mehrere Computer überwachen kann (CPU auslastung, Festplatte, Temperatur Sensoren) und wo die Daten ...