Linux vServer absichern | ST-Hosting Tutorial

0
(0)

Linux vServer absichern

Als System Administrator ist es immer wichtiger geworden, Systeme regelmäßig zu aktualisieren, abzusichern und auf Generelle Sicherheit zu achten und diese zu gewährleisten. Gerade deshalb habe ich mich mit meinem Hosting Partner ST-Hosting für dieses Tutorial entschieden, um nochmals generell auf dieses Thema einzugehen und auch Anleitungen zu veröffentlichen. In diesem Beitrag erfährst Du, wie Du deinen Linux vServer/Rootserver absichern kannst gegen Angriffe oder generelle Sicherheitslücken

Video abspielen

Schritt 1: SSH gegen Bruteforce Attacken absichern

Gerade der Zugang zum Rootserver sollte gut abgesichert sein. Sollte man meinen man hat doch kaum Angreifer, so täuscht man sich gewaltig. Denn bereits im Hintergrund versuchen schon beim öffnen des SSH Ports, Angreifer zumeist auch automatische Scan Skripte von den Angreifern, Login versuche zu testen. Damit wir dies unterbinden, werden wir die Anzahl an Login versuchen begrenzen und beim überschreiten dieser Grenze, die IP des Angreifers automatisch mittels Fail2Ban sperren. Zudem ändern wir zur Sicherheit den SSH Port und begrenzen den Traffic für den Rootserver zum Schutz gegen Port Scanning

Wir geben den Befehl via SSH Konsole ein und bestätigen zum Abschluss mit Enter.
				
					# fail2ban installieren
apt-get install fail2ban -y
				
			
Hier wird nochmal alles markiert welcher Parameter was genau bedeutet.
				
					# Kopiere die Config .conf zu .local
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

# Öffne jail.local mit z.B nano
nano /etc/fail2ban/jail.local

# Whitelist IP: 
#Suche in der Config mit STRG+W und gebe "ignoreip" und unkommentiere die # weg
ignoreip = 127.0.0.1/8

# Edit:
bantime = 10m #(Sperrt den Nutzer 10 Minuten lang1)
findtime = 600 #(Innerhalb des Zeitraumes wird der Fehlerhafte Login Versuch gemerkt).
maxretry = 5 # Wie viele Versuche dürfen maximal Fehlschlagen?

# Go to [sshd] and put this config
[sshd]

enabled  = true # Aktiviert die Regel
port     = 22 #your ssh port (default: 22)
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 5
				
			
				
					# Startet fail2ban neu
service fail2ban restart

# Überprüft nun ob Fail2ban aktiv ist siehe Foto.
service fail2ban status
				
			
Nach dem Neustart des Services ist die Firewall aktiv.
Video abspielen

Jetzt wird es spannend: Wir testen in diesem 2 Minuten Video die Funktionalität unserer Setups bei Fail2Ban.

Schritt 2: Sich gegen Port Scanning absichern

Port Scanning macht es den Angreifern möglich, Dienste herauszufinden die auf den Server laufen. Wenn wir hier in dem Fall unseren SSH Dienst Standardmäßig von 22 auf z.B 1254 setzen, so kann der Angreifer mittels Port Scanning versuchen, diesen Port wieder herauszufinden. Zwar würde unsere Fail2Ban dann im Einsatz kommen und den Angreifer bei zu viel Fehlgeschlagenen Login Versuchen wieder aussperren. Doch um jetzt davor einen Riegel zu setzen, werden wir eingehende Anfragen zum Server drosseln und somit das Port Scanning zu verlangsamen oder gar zu verhindern. Hierbei setzen wir auf PortSentry und wir werden natürlich hierbei noch die Regeln auf Permanent setzen um somit den Server dauerhaft abzusichern.

Video abspielen
				
					# Wir installieren das Paket portsentry

echo portsentry portsentry/warn_no_block string "" | debconf-set-selections
apt-get install -y portsentry

# Mit dem Befehl sed -i, setzen wir bestimmte Einträge in der portsentry Config

sed -i 's/TCP_MODE="tcp"/TCP_MODE="atcp"/' /etc/default/portsentry
sed -i 's/UDP_MODE="udp"/UDP_MODE="audp"/' /etc/default/portsentry

sed -i 's/BLOCK_UDP="0"/BLOCK_UDP="1"/' /etc/portsentry/portsentry.conf
sed -i 's/BLOCK_TCP="0"/BLOCK_TCP="1"/' /etc/portsentry/portsentry.conf
sed -i 's/RESOLVE_HOST = "0"/RESOLVE_HOST = "1"/' /etc/portsentry/portsentry.conf
sed -i 's/^KILL_ROUTE/#&/' /etc/portsentry/portsentry.conf
sed -i 's/^#\?KILL_ROUTE="\/sbin\/iptables -I INPUT -s $TARGET$ -j DROP"/KILL_ROUTE="\/sbin\/iptables -I INPUT -s $TARGET$ -j CHAOS"/' /etc/portsentry/portsentry.conf

# Wir Whitelisten unsere eigene IP-Adresse

echo "ALL: ${LAN_IP}/${LAN_NM}" >> /etc/hosts.allow
echo "${LAN_IP}/${LAN_NM}" >> /etc/portsentry/portsentry.ignore.static

# Wir restarten portsentry

systemctl restart portsentry

# Jetzt setzen wir für fail2ban eine Sicherheitsregel die automatisch die IP sperrt, die unseren Server mittels Port scanning angreifen tut.

> /var/lib/portsentry/portsentry.history
cat << EOF > /etc/fail2ban/jail.d/portsentry.conf
[portsentry]
enabled = true
EOF

# Anschließend starten wir fail2ban neu

systemctl restart fail2ban
				
			
				
					
# Im Log /var/log/fail2ban.log sehen wir auch schon, dass unsere Sicherheitsregel aktiviert wurde.

2022-12-10 01:40:04,902 fail2ban.jail           [1952]: INFO    Jail 'sshd' started
2022-12-10 01:40:04,903 fail2ban.jail           [1952]: INFO    Jail 'portsentry' started
2022-12-10 01:40:39,902 fail2ban.filter         [1952]: INFO    [portsentry] Found 192.168.8.199 - 2022-12-10 01:40:39
2022-12-10 01:40:40,156 fail2ban.actions        [1952]: NOTICE  [portsentry] Ban 192.168.8.199
2022-12-10 01:50:40,941 fail2ban.actions        [1952]: NOTICE  [portsentry] Unban 192.168.8.199
				
			

Schritt 3: SSH Port ändern

Da wir nun eine aktive Firewall zum Schutz gegen Port Scanning und Bruteforce Attacken haben, können wir zusätzlich den SSH Port abändern. Somit wird es den Angreifer 1. Unmöglich sein auf die schnelle den Port Rauszufinden da unsere Anti-Port Scanning Firewall aktiv im Hintergrund läuft. Zudem sollte der Angreifer doch den geänderten SSH Port rausfinden, so greift natürlich noch die Fail2Ban SSH Bruteforce Protection. Aber wie sagt man so schön: Sicher, ist sicher!

Unter den Parameter Port = den gewünschten SSH Port eintragen.
				
					# Öffne mit dem "nano" Editor die SSH Config deines Linux Servers.
nano /etc/ssh/sshd_config

#Port 22 - Das # entfernen und anschließend die gewünschte Port eingeben und dann mit STRG+O speichern und mit STRG+X die Config wieder verlassen.

Port = 1254
				
			
Möchtest Du mehr über Methoden zum absichern eines Linux Servers lesen? Hast Du Ideen, weißt aber nicht wie Du es am besten umsetzen kannst, so schreibe gerne und auch komplexere Themen in die Kommentarfunktion und lass es uns wissen 🙂 Wir werden dann unsere Schritte zum Schutz eines Linux Servers erweitern.

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 0 / 5. Anzahl Bewertungen: 0

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Related Posts

Neuigkeiten: CoderTALK Blog und Hoster Reviews

0 (0) Neuigkeiten über Content und angepassten Inhalten Für Server-Verstehen.de gibt es zwei neue Wichtige Änderungen zwecks Content Ausbau. Da ich immer wieder überlege, wie ich am…

Uptime Robot – Webseiten Checker Skript für Linux

Der Uptime Robot von AnuaCP.de ist ein PHP-CLI Skript, worüber man über array’s und eigenen Mail-Server (SMTP Versand), seine Webseiten auf Zuverlässigkeit und Online Dauer überprüfen kann.

Proxmox – Festplatte erweitern in KVM / LVM

In diesem Tutorial befassen wir uns mit der Festplatten Erweiterung für die LVM Partitionen innerhalb einer KVM mit Proxmox. Ziel ist es gezielt die LVM Partition zu vergrößern, die auch für die LXC oder VMs als Speicherplatz dient. Ich werde hier in diesem Beitrag Beispielcode hinterlegen wodurch Ihr mit diesen die Vergrößerung der Partitionen durchführen könnt.

Windows auf KVM installieren + Netzwerk einrichten | ST-Hosting

Was ist ein KVM Server?
Ein KVM Server ist eine Virtualisierungsumgebung, worauf man komplette Betriebssysteme die einen eigenen Kernel erfordern, virtuell installieren und nutzen kann. Zumeist werden KVM oder auch LXC Container in Hosting Unternehmen als Kategorie vServer/Rootserver eingesetzt, die natürlich im Gegensatz zu Dedizierten Server, deutlich günstiger vom Preis her ausfallen, da mehrere Kunden sich ein Hostsystem und deren Internet Anbindung teilen. Selbstverständlich ist aber jeder Container isoliert und somit können sogar eigene IPv4-Adressen mit vollen Root Zugang innerhalb der VM ermöglicht werden.

TS3AudioBot Installer für Linux | AnuaCP

Der TS3AudioBot Installer für Linux ist kurz gesagt ein Automatisches und vordefiniertes Skript, worüber man in wenigen Schritten seine eigene Musik auf einem TeamSpeak 3 Server streamen kann. Um direkt die Frage zu klären zwecks Limitierungen und Co.: Es ist kostenlos bestellbar auf AnuaCP.de und der Quellcode ist offengelegt. Es können unendliche Bots über das Skript sowie innerhalb der Instanz, erstellt werden.

Proxmox – Statische IP-Adressen aufteilen auf Virtuelle Server

Wichtig hier ist natürlich einen LXC oder KVM Server mit Zusätzlichen IPv4-Adressen also bei mindestens zwei IPv4-Adressen auf unserem VPN Gateway, können wir nur maximal dann eine IPv4-Adresse aktiv nutzen. Eine bleibt immer die Haupt IP-Adresse für den Zugang und generellen Erreichen des VPN Gateways.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert