Absicherung eines Debian Servers: Unterschied zwischen den Versionen

Aus Wiki Freifunk-3Ländereck
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „Dieser Artikel beschreibt die Absicherung eines Debian Root Server =Minimale Installation= Installiere auf deinem Server stehts nur mit den notwendigen Pakete…“)
 
Zeile 11: Zeile 11:
  
 
=SSH Port ändern=
 
=SSH Port ändern=
Die Mehrzahl der (automatisierten) Loginattacken auf SSH erfolgt auf den Standardport 22. Eine einfache und effektive Methode ist es, den SSH Port auf einen anderen zu ändern. Öffnen Sie dazu die Konfigurationsdatei von SSH
+
Die Mehrzahl der (automatisierten) Loginattacken auf SSH erfolgt auf den Standardport 22. Eine einfache und effektive Methode ist es, den SSH Port auf einen anderen zu ändern. Öffne dazu die Konfigurationsdatei von SSH
  
 
  nano /etc/ssh/sshd_config
 
  nano /etc/ssh/sshd_config
Zeile 30: Zeile 30:
  
 
Aktive SSH Verbindungen bleiben offen. Öffnen nun ein neues Terminalfenster und teste ob du SSH mit deinem angegebenen Port erreichst, bevor du das aktive Fenster schließt.  
 
Aktive SSH Verbindungen bleiben offen. Öffnen nun ein neues Terminalfenster und teste ob du SSH mit deinem angegebenen Port erreichst, bevor du das aktive Fenster schließt.  
 +
 +
=SSH Anmeldung mit Passwort verbieten=
 +
Öffne dazu die Konfigurationsdatei von SSH ''/etc/ssh/sshd_config''
 +
und ändere es einfach in
 +
PasswordAuthentication no
 +
ab
  
 
=Benachrichtigung bei SSH Login=
 
=Benachrichtigung bei SSH Login=

Version vom 7. April 2015, 23:18 Uhr

Dieser Artikel beschreibt die Absicherung eines Debian Root Server

Minimale Installation

Installiere auf deinem Server stehts nur mit den notwendigen Paketen. Jeder Overhead an Software bedeutet auch mehr potentielle Angriffsfläche.

SSH Login absichern

Es empfiehlt sich dem Root Benutzer keinen direkten SSH Login zu erlauben. Sie können ausserdem eine Gruppe von Benutzern festlegen, die SSH nutzen dürfen. Die genauer Anleitung finden Sie unter SSH Root Login unter Debian verbieten Sicherer und komfortabler ist es ausserdem, den Login mit Passwort zu verbieten und dafür einen SSH Key zu verwenden. Die genaue Anleitung finden Sie unter SSH Key Login

SSH Port ändern

Die Mehrzahl der (automatisierten) Loginattacken auf SSH erfolgt auf den Standardport 22. Eine einfache und effektive Methode ist es, den SSH Port auf einen anderen zu ändern. Öffne dazu die Konfigurationsdatei von SSH

nano /etc/ssh/sshd_config

und ändere den SSH Port von

Port 22

auf einen anderen Port nach Deiner Wahl ab. Der SSH Dienst muss danach mit

/etc/init.d/ssh restart

neu gestartet werden.

Beachte bitte, dass du keinen festen Port eines anderen Dienstes benutzt. Eine Liste mit Ports und Diensten findest du unter

more /etc/services

Aktive SSH Verbindungen bleiben offen. Öffnen nun ein neues Terminalfenster und teste ob du SSH mit deinem angegebenen Port erreichst, bevor du das aktive Fenster schließt.

SSH Anmeldung mit Passwort verbieten

Öffne dazu die Konfigurationsdatei von SSH /etc/ssh/sshd_config und ändere es einfach in

PasswordAuthentication no

ab

Benachrichtigung bei SSH Login

Mit folgendem Skript erhälst du eine E-Mail, sobald sich ein Benutzer per SSH einloggt.

Erstelle dazu ein ausführbares Shell Skript /opt/shell-login.sh mit folgendem Inhalt:

#!/bin/bash
echo "Login auf $(hostname) am $(date +%Y-%m-%d) um $(date +%H:%M)"
echo "Benutzer: $USER"
echo
finger


Damit die Mails beim Login versendet werden, muss folgende Zeile

/opt/shell-login.sh | mailx -s "SSH Login auf DEIN-HOSTNAME" deine-emailadresse@example.com

in der Datei

/etc/profile

eingetragen werden.

Die Datei /opt/shell-login.sh muss die Rechte 755 besitzen:

chmod 755 /opt/shell-login.sh

Die Mail wird nun automatisch versendet, sobald sich ein Benutzer per SSH einloggt. Der User bekommt davon nichts mit.

Regelmäßige Systemupdates

Das Debian Security Team veröffentlicht regelmäßig Sicherheitsupdates und neue Kernelversionen. Die Updates solltest du (sofern du keine eigenen, angepassten Kernel verwendest) regelmäßig durchführen. Um nicht jeden Tag Updates manuell prüfen zu müssen, gibt es das Paket apticron, welches dich per Mail über neue Updates informiert. Installiere zunächst das Paket mit

aptitude install apticron

und lege es unter /etc/apticron/apticron.conf

deine Mailadresse und den Hostnamen des Systems (optional) fest. Die Updates könnten natürlich auch per Cronjob jeden Tag automatisch installiert werden, was ich jedoch nicht empfehle. Du hast so nie die Kontrolle darüber was installiert wird und können evtl. Fehler nur schwer nachvollziehen.