Server absichern

Aus Freifunk Flensburg
Wechseln zu: Navigation, Suche

SSH[Bearbeiten]

FAQ[Bearbeiten]

Was bedeutet SSH ?[Bearbeiten]

SSH stet fuer Secure Shell.
Mit SSH können wir eine sichere verschlüsselte verbindung zu
einen entfernten Gerät aufbauen.
Somit können wir auf unseren Gerät Comandos ausführen.
Seit der neueren Version bietet SSH den Service SFTP an , damit
ermöglicht es uns verschlüsselten datentransfer.

Warum ist ein SSH so wichtig ?[Bearbeiten]

Gerade im Bereich Sicherheit ist ein SSH ein wichtiger punkt.
Ein einfaches Passwort ist mit Brute-Force methode in kurzer Zeit
geknackt , dabei testet das Programm eine Rheihe an
möchlichkeiten an Zahlen und Buchstarben und Sonderzeichen aus
,bis das passwort ueber einstimmt.
Die zweite möglichketen sind die sogenanten Wörterbuch antacken.
Dabei wird im Programm eine Text Datei hinterlegt mit Passwörter
diese besteht oft aus Zahlen und Namen.
Oft versuchen Bots also infizierte Server auf den standard Port
22 (SSH) zu lauschen und ueber Brute-Force das Passwort raus
zubekommen um dieses Gerät in das Bot netzwerk einzuschleusen.

SSH Absichern[Bearbeiten]

SSH mit Passwort absichern[Bearbeiten]

Wir können uns auch mit einen SSH Passwort sicher ueber SSH einloggen.
Dafür loggen wir uns per ssh ein und erstellen mit su adduser <Benutzername> einen Benutzer , womit wir uns später einloggen wollen.
Nun öffnen wir die Datei (su nano oder su vi) /etc/ssh/sshd_config.
Wir ändern den SSH Port 22 und setzen diesen auf einen höheren Port <10001-65535>.
LoginGraceTime (in sekunden) bestimmen wie lange der SSH Server auf ein Passwort wartet, bis dieser die Verbindung schließt.
PermitRootLogin setzen wir auf no , damit der Benutzer Root sich nicht mehr per ssh einloggen darf.
MaxAuthTries legen wir die erfolglosen login Versuche fest , bis bis dieser die SSH Verbindung abbricht.
AllowUsers legen wir den Benutzer fest , der sich per SSH einloggen darf , dafuer haben wir einen erstellt.
Wenn wir alles Richtig konfiguriert haben reloaden wir den SSH-Server mit dem Befehl sudo service ssh reload.
Jetzt können wir unsere Einstellung testen uns loggen uns mit den definierten Usernamen und Passwort per SSH ein.

SSH mit SSH Key absichern[Bearbeiten]

Linux SSH Key generieren[Bearbeiten]

1.Wir loggen uns dem dem Benutzer ein , für den wir ein ssh key erstellen wollen. Mit dem Befehl: ,,ssh-keygen -t rsa -b 4096" erstellen wir einen 4096bit key.
(generiert: Generating public/private rsa key pair)
3. Jetzt werden wir gefragt, wo der SSH Key gespeichert den gespeichert werden soll:
Enter file in which to save the key (/root/.ssh/id_rsa)
4.Nachdem wir den Speicher Ort ausgewählt haben werden wir nach einen SSH passwort gefragt , womit wir uns später einloggen werden.
Wir geben nun (empty for no passphrase): unser Passwort ein und bestätigen dies mit der ENTER Taste.
5.Nachdem das Zertifikat erfolgreich generiert wurde können wir uns das Musster nochmal anschauen
Your identification has been saved in /root/.ssh/id_rsa
Das ist unser Public Key dieser soll später in den Router eingefragen werden. Your public key has been saved in /root/.ssh/id_rsa.pub.
Das ist unser Fingerabdruck. The key fingerprint is:
d7:82:8e:2b:63:06:19:a8:48:80:e3:7c:ab:d6:4a:54 root@raspberrypi
The key's randomart image is:
SSH Geriertes Image
6.Der Key wurde erfolgreich generiert jetzt müssen wir diesen in
das Vezeichnis verschieben , damit der Benutzer diesen dann
ausführen kann.
7.Als nächstes gehen wir in den Ordner .ssh und verschieben den Schlüssel mit cat id_rsa.pub >> authorized_keys2
8. Damit nur der Benutzer auf diese Datei drauf zugreifen darf geben wir ,,chmod 600 *" ein.


Windows SSH Key generieren[Bearbeiten]

1.Wir laden uns auf der Website ([1]) die puttygen.exe datei runter.
SSH Geriertes Image
2.Wir öffnen puttygen.exe und klicken nun auf ,,SSH-2-RSA" und stellen rechts unten den Stert von ,,2048" auf ,,4096" danach klicken wir auf ,,Generate".
SSH Geriertes Image
3. Als nächstes erscheint noch eine Status Leite erschein mit der Nachricht:
,,Please generate some randomness by moving the mouse over the blank area" stehen.
Wir Bewegen unsere Maus im Program Fenster und erzeugen dadurch unseren SSH Key.
SSH Geriertes Image
4.Wenn wir das erledigt haben erscheint noche Status Leiste die den SSH Key generiert: ,,Please wait a Key is generated".
Wir warten , bis dieser Vorgang abgeschlossen ist.
SSH Geriertes Image
6.Im ,,Key commet:" Feld können wir nun den einen Kommentar oder einen Namen oder eine E-mail-Adresse oder Telefonummer hinterlegen.
Diese Nachricht ist nicht öffentlich , sondern kann nur im Konfig-Mode ausgelesen werden.
SSH Geriertes Image
7.Nun vergeben wir im ,,Key passphare:" ein Passwort dies wird später für die Login abfrage benötigt und
wieder hohlen dies im ,,Confirm passphrase: Feld".
SSH Geriertes Image
8. Drücken nun auf ,,Save public key" wählen einen Speicher ort aus und geben diesen einen Namen
und drücken auf Speichern.
SSH Geriertes Image
9. Drücken nun auf ,,Save private key" wählen einen Speicher ort aus und geben diesen einen Namen
und drücken auf Speichern.
SSH Geriertes Image
10. Wir kopieren uns den Public Key in die Zwischenablage aus der TextBox unter dem Text:
,,Public key for pasting into OpenSSH authorized_keys File:".
SSH Geriertes Image

SSH mit SSH Key absichern[Bearbeiten]

ChallengeResponseAuthentication no
PasswordAuthentication yes in PasswordAuthentication no ändern.
UsePAM yes in UsePAM no ändern

Linux Passwort login[Bearbeiten]

IPV4[Bearbeiten]

Wir öffnen unser Termial und geben dort sudo ssh <sshloginbnutzer>@Ipadresse ein.
Nun müssen wir unser Benutzer passwort eingeben von diesen Gerät.
Wir werden nun nach dem Server Passwort gefragt und geben dies ein und Bestätigen mit ENTER.

IPV6[Bearbeiten]

Wir öffnen unser Termial und geben dort sudo ssh ssh -6 <Benutzername>@IPV6-Adresse ein.
Nun müssen wir unser Benutzer passwort eingeben von diesen Gerät.
Wir werden nun nach dem Server Passwort gefragt und geben dies ein und Bestätigen mit ENTER.

Windows Passwort login[Bearbeiten]

IPV4[Bearbeiten]

Wir öffnen die Putty.exe und geben bei Host Name (or IP adress) <Benutzername>@IPv4-Adresse ein. Bei Port geben wir unseren Port ein , den wir oben in der SSH Konfig festgelegt haben. Bei Connection type: klicken wir auf SSH. Wenn wir alles Korrekt eingestellt haben klicken wir auf Open. Nun sollte dort Benutzer@IP-Adresse's password: stehen und geben unser Passwort ein.

IPV6[Bearbeiten]

Wir öffnen die Putty.exe und geben bei Host Name (or IP adress) <Benutzername>@IPv6-Adresse ein. Bei Port geben wir unseren Port ein , den wir oben in der SSH Konfig festgelegt haben. Bei Connection type: klicken wir auf SSH. Wenn wir alles Korrekt eingestellt haben klicken wir auf Open. Nun sollte dort Benutzer@IP-Adresse's password: stehen und geben unser Passwort ein.

Linux SSH Key login[Bearbeiten]

IPV4[Bearbeiten]
IPV6[Bearbeiten]

Windows SSH Key login[Bearbeiten]

Wir öffnen Putty.exe und (links) auf Category und klicken auf SSH (+) -> Auth und klicken auf Browse und wählen unser Zertifikat aus. Als nächstes gehen wir auf Category und klicken dort auf Session. Bei Host Name (or Ip adress) geben wir unsere IP-Adresse ein und bei Port den Port , den wir festgelegt haben. Connection type: setzen wir einen Harken bei SSH und können nun auf Open klicken.


IPV4[Bearbeiten]
IPV6[Bearbeiten]

SSH Tunnel[Bearbeiten]

FAQ[Bearbeiten]

Fail2ban[Bearbeiten]

FAQ[Bearbeiten]

port knocking[Bearbeiten]

FAQ[Bearbeiten]

Firewall[Bearbeiten]

FAQ[Bearbeiten]