Passwörter sind lästig. Sind sie zu lange merkt man sie nicht. Sind sie zu kurz sind sie schon vorberechnet und somit leicht entschlüsselbar.
Wer kann sich eine Zahlen-Ziffern-Kombinatation von >10 Zeichen merken? Ich nicht. Ich kann mir eine solche Kombination nur aufschreiben. Jetzt habe ich ein „sicheres“ Passwort mnUt]<}-w?HC und kann es nicht eintippen auf einem Zettel am Schreibtisch. Also muss das beliebte „geheim“ oder „123456“ wieder einmal herhalten.
Genau das wollen wir alle 😒 oder
Für das Arbeiten auf einem entfernten System gibt es einen einfachen und doch sicheren Weg. die ssh.
Wir kennen sie als Terminal, weniger bekannt ist, dass man sie auch als VPN, FTP oder als Remote-File-System benutzen kann. Damit sind 4 wichtige Arbeitsbereiche abgedeckt. Eine VNC-Verbindung in einem VPN aufzusetzen ist auch keine Hexerei. Aber das Passwort, das Passwort.
Inhaltsverzeichnis
Wie ich das Passwort nicht immer eingeben muss.
Dazu definieren wir unsere unsere Arbeitsumgebung. Nennen wir unseren Laptop einfach „schleppi“ und unseren Server „erdbeer“. Natürlich darf der User „juhu“ nicht fehlen.
Wir melden uns wie gehabt am Rechner schleppi an. Öffnen ein Terminalfenster und tippen ein:
ssh-keygen -d rsa -b 4096
wir bekommen folgende Ausgabe:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/juhu/.ssh/id_rsa):
Enter passphrase for „/home/juhu/.ssh/id_rsa“ (empty for no passphrase):
Enter same passphrase again:
Wir werden jetzt nach einer Passphrase gefragt. Wenn man will, ist das ähnlich einen Passwort zu sehen und kann den Zugangsschutz nochmals wesentlich erhöhen. Wenn wir allerdings scripten und automatisiert arbeiten wollen, dann drücken wir 2 mal auf die CR-Taste und lassen das Feld einfach leer.
Your identification has been saved in /home/juhu/.ssh/id_rsa
Your public key has been saved in /home/juhu/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:JyaSUnuiY87eUJKMg3tX6WC0Zr1i/g32KMA/Sga9waI andrea@orange
The key’s randomart image is:
+—[RSA 8192]—-+
| |
| |
| o |
|.= + = . |
|*.O % * S . |
|.=o@ B + o |
|E Xo+ = |
| B B+o = |
| .=.o+o o |
+—-[SHA256]—–+
ssh-keygen arbeitet jetzt ein bisschen und erzeugt im $HOME-Verzeichnis ein Verzeichnis mit dem Namen „.ssh“ in diesem Verzeichnis finden wir 2 Dateien
- id_rsa
- id_rsa.pub
Auf die Datei id_rsa sollten wir aufpassen. Sie beinhaltet unseren Privat-Key. Die id_rsa.pub ist der Public-Key, der weitergegeben werden kann. d.h. mit dem Public-Key werden die Daten verschlüsselt und nur it dem Privat-Key werden sie entschlüsselt. Jetzt hat unser System „schleppi“ einen Privat-Key aber auf der Erdbeer ist noch nichts erfolgt. Wir loggen uns als User „juhu“ auf dem System „erdbeer“ ein. Auch dort rufen wir ssh-keygen auf und erzeugen ebenfalls ein Key-Paar. Danach beenden wir die Sitzung und kehren zum System „schleppi“ zurück.
Somit müssen wir als nächsten Schritt den anderem System unseren Public-Key mitteilen. Dazu gibt es einen Routine „ssh-copy-id“
Die rufen wir auf „schleppi“ mittels
ssh-copy-id -i $HOME/.ssd/id_rsa.pub juhu@erdbeer
noch einmal werden wir nach einem Passwort gefragt. Der schleppi-public-key wird kopiert und in der Datei $HOME/.ssh/authorized_keys auf dem System „erdbeer“ gespeichert.
Ab jetzt wird bei einem Login über ssh kein Passwort mehr verlangt. Ein ssh juhu@erdbeer bringt uns auf das System ohne das ein Passwort verlangt wird. Ein „scp meine_datei juhu@erdbeer:/tmp“ kopiert die Datei ohne Passwortabfrage.
Übigens in der $HOME/.ssh/authorized_keys liegen alle public-key, die auf diesen User ohne Passwort zugreifen dürfen. Ein löschen der Datei bewirkt, dass man sich wieder anmelden muss, so wie bisher.
Was passiert unter der Oberfläche bzw auf der Leitung.
– Zuerst wird eine Prüfsumme(Hash) des privat-Keys von Schleppi zur Erdbeer übertragen.
– Der wird mittels des Schleppis public-Keys auf der Erdbeer geprüft.
– Eine public-Key auf der Erdbeer wird erzeugt und auf den Schleppi übertragen.
– Ab jetzt kann jedes System mit dem public-key des anderen verschlüsseln
und gewährleisten, dass es immer der echte Empfänger ist.
Wie sicher ist es?
Debian Trixie verwendet standardmäßig 4096 Bit lange Zufallschlüssel. Das wäre in etwa ein 512 Zeichen langes Passwort, also eine halbe A4 Seite. Wer meint, es reicht noch nicht, der kann es mit 8196 Bits oder mehr, probieren. Dann wären wir bei einer A4 Seite.
Eine Besonderheit noch!!
- Der Privat-Key des User MUSS die Rechte RW auf dem User haben und sonst keine
- -rw——- 1 juhu juhu 2602 13. Apr 18:07 id_rsa
- Wer unter Windows mit putty.exe arbeitet, der kann dies ebenfalls erzeugen. der rsa-public-key muss allerdings händische kopiert werden. und mittels einem
cat putty-public.key >>$HOME/.ssh/authorized_keys
eingefügt werden. - Es gibt noch weitere Verfahren wie dsa oder ed25519. dsa ist alt und kaum mehr verwendet. ed25519 könnte rsa den Rang ablaufen.
Somit wünsche ich euch viel Erfolg. Getestet und geschrieben wie immer auf Debian Trixie😀

Noch keine Reaktion