Einführung in Linux Server Security Hardening

Die Sicherung Ihrer Linux-Server ist eine schwierige und zeitaufwändige Aufgabe für Systemadministratoren, aber es ist notwendig, die Sicherheit des Servers zu verbessern, um ihn vor Angreifern und Black-Hat-Hackern zu schützen. Sie können Ihren Server sichern, indem Sie das System ordnungsgemäß konfigurieren und so wenig Software wie möglich installieren. Es gibt einige Tipps, die Ihnen helfen können, Ihren Server vor Netzwerk- und Berechtigungseskalationsangriffen zu schützen.

Aktualisieren Sie Ihren Kernel

Veralteter Kernel ist immer anfällig für mehrere Netzwerk- und Privilegieneskalationsangriffe. So können Sie Ihren Kernel mit apt in Debian oder yum in Fedora aktualisieren.

$ sudo apt-get update
$ sudo apt-get dist-upgrade

Deaktivieren von Root-Cron-Jobs

Cron-Jobs, die von root oder einem Konto mit hohen Berechtigungen ausgeführt werden, können von Angreifern verwendet werden, um hohe Berechtigungen zu erhalten. Sie können sehen, wie Cron-Jobs ausgeführt werden, indem Sie

$ ls /etc/cron*

Strenge Firewall-Regeln

Sie sollten alle unnötigen eingehenden oder ausgehenden Verbindungen an ungewöhnlichen Ports blockieren. Sie können Ihre Firewalls-Regeln mithilfe von iptables aktualisieren. Iptables ist ein sehr flexibles und einfach zu bedienendes Dienstprogramm zum Blockieren oder Zulassen von eingehendem oder ausgehendem Datenverkehr. Um zu installieren, schreiben Sie

$ sudo apt-get install iptables

Hier ist ein Beispiel, um eingehende auf FTP-Port mit iptables zu blockieren

$ iptables -A INPUT -p tcp –dport ftp -j DROP

Deaktivieren Sie unnötige Dienste

Stoppen Sie alle unerwünschten Dienste und Daemons, die auf Ihrem System ausgeführt werden. Sie können laufende Dienste mit den folgenden Befehlen auflisten.

:~$ service –status-alle
acpid
alsa-utils
anacron
apache-htcacheclean
apache2
apparmor
apport
avahi-Daemon
binfmt-Unterstützung
Bluetooth
cgroupfs-mount
…schnippeln…

ODER mit dem folgenden Befehl

$ chkconfig –Liste / grep ‚3:auf‘

Um einen Dienst zu beenden, geben Sie Folgendes ein

$ sudo service stop

ODER

$ sudo systemctl stop

Nach Backdoors und Rootkits suchen

Dienstprogramme wie rkhunter und chkrootkit können verwendet werden, um bekannte und unbekannte Backdoors und Rootkits zu erkennen. Sie überprüfen installierte Pakete und Konfigurationen, um die Sicherheit des Systems zu überprüfen. Zu installieren schreiben,

:~$ sudo apt-get install rkhunter -y

Um Ihr System zu scannen, geben Sie Folgendes ein

:~$ sudo rkhunter –check

Überprüfen von Systembefehlen…
Ausführen von ’strings‘-Befehlsprüfungen
Überprüfen des ’strings‘-Befehls
Ausführen von ’shared libraries‘-Prüfungen
Überprüfen auf vorinstallierte Variablen
Überprüfen auf vorinstallierte Bibliotheken
Überprüfen der Variablen LD_LIBRARY_PATH
Überprüfen der Dateieigenschaften
Überprüfen auf Voraussetzungen
/usr/sbin/adduser
/usr/sbin/chroot
…snip…

Listening-Ports prüfen

Sie sollten nach nicht verwendeten Listening-Ports suchen und diese deaktivieren. Um nach offenen Ports zu suchen, schreiben Sie.

:~$ sudo netstat -ulpnt
Aktive Internetverbindungen (nur Server)
Proto Recv-Q Senden-Q Lokale Adresse Status der ausländischen Adresse PID / Programmname
tcp 0 0 127.0.0.1:6379 0.0.0.0: * LISTEN 2136/redis-server 1
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1273 / rpcbind
tcp 0 0 127.0.0.1:5939 0.0.0.0: * HÖREN 2989 /teamviewerd
tcp 0 0 127.0.0.53:53 0.0.0.0: * HÖREN 1287 /systemd-resolv
tcp 0 0 0.0.0.0:22 0.0.0.0: * HÖREN 1939 / sshd
tcp 0 0 127.0.0.1:631 0.0.0.0: * HÖREN 20042/cupsd
tcp 0 0 127.0.0.1:5432 0.0.0.0: * HÖREN 1887/postgres
tcp 0 0 0.0.0.0:25 0.0.0.0:* HÖREN 31259/master
…snip…

Verwenden Sie ein IDS (Intrusion Testing System)

Verwenden Sie ein IDS, um Netzwerkprotokolle zu überprüfen und böswillige Aktivitäten zu verhindern. Es gibt ein Open Source IDS Snort für Linux. Sie können es installieren durch,

$ wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz
$ wget https://www.snort.org/downloads/snort/snort-2.9.12.tar.gz
$ tar xvzf-Datenerfassung-2.0.6.Teer.gz
$ cd daq-2.0.6
$ ./konfigurieren && machen && sudo make install
$ tar xvzf snort-2.9.12.Teer.gz
$ cd schnauben-2.9.12
$ ./configure –enable-sourcefire && make && sudo make install

Um den Netzwerkverkehr zu überwachen, geben Sie Folgendes ein

:~$ sudo snort
Läuft im Paket-Dump-Modus
–== Snort initialisieren ==–
Ausgabe-Plugins initialisieren!
pcap-DAQ auf passiv konfiguriert.
Netzwerkverkehr von „tun0“ erfassen.
Dekodierung Raw IP4
–== Initialisierung Abgeschlossen == —
…snip…

Deaktivieren Sie die Protokollierung als Root

Root fungiert als Benutzer mit vollen Berechtigungen und kann alles mit dem System tun. Stattdessen sollten Sie die Verwendung von sudo erzwingen, um administrative Befehle auszuführen.

Keine Besitzerdateien entfernen

Dateien, die keinem Benutzer oder keiner Gruppe gehören, können eine Sicherheitsbedrohung darstellen. Sie sollten nach diesen Dateien suchen und sie entfernen oder ihnen einen geeigneten Benutzer einer Gruppe zuweisen. Um nach diesen Dateien zu suchen, geben Sie Folgendes ein

$ find /dir -xdev \( -nouser -o -nogroup \) -print

Verwenden Sie SSH und sFTP

Verwenden Sie für die Dateiübertragung und Fernverwaltung SSH und sFTP anstelle von Telnet und anderen unsicheren, offenen und unverschlüsselten Protokollen. Zu installieren, typ

$ sudo apt-get install vsftpd -y
$ sudo apt-get install openssh-server -y

Protokolle überwachen

Installieren und richten Sie ein Protokollanalyseprogramm ein, um Systemprotokolle und Ereignisdaten regelmäßig zu überprüfen, um verdächtige Aktivitäten zu verhindern. Typ

$ sudo apt-get install -y loganalyzer

Deinstallieren Sie nicht verwendete Software

Installieren Sie Software so wenig wie möglich, um eine kleine Angriffsfläche zu erhalten. Je mehr Software Sie haben, desto mehr Chancen auf Angriffe haben Sie. Entfernen Sie also nicht benötigte Software von Ihrem System. Um installierte Pakete anzuzeigen, schreiben Sie

$ dpkg –list
$ dpkg –info
$ apt-get list

Um ein Paket zu entfernen

$ sudo apt-get remove -y
$ sudo apt-get clean

Conclusion

Die Sicherheitshärtung von Linux-Servern ist für Unternehmen und Unternehmen sehr wichtig. Es ist eine schwierige und ermüdende Aufgabe für Systemadministratoren. Einige Prozesse können durch einige automatisierte Dienstprogramme wie SELinux und andere ähnliche Software automatisiert werden. Außerdem reduziert das Beibehalten von Minimus-Software und das Deaktivieren nicht verwendeter Dienste und Ports die Angriffsfläche.



+