PuttyPrivate Key für alle Benutzer

hibbert

Registered User
Hallo,
ich habe mich heute endlich mal hingesetzt und habe meinen SH Zugang mit einem Private Key abgesichert. Das hat jetzt auch alles soweit ganz gut funktioniert, allerdings nur für den Benutzer root. D.h. ich starte Putty und connecte mich als root zum Server.
der Private-Key und ich werde auch nach dem Passphrase gefragt, alles schick und ohne Key geht es nicht, so wie es eben sein soll.

So nun habe ich allerdings noch ein paar weitere Benutzer im System angelegt, zum Beispiel User1.
Nun versuche ich mich als User1 auf den Server zu connecten. Sowit geht das ja auch noch. Ich gebe als Benutzernamen User1, drücke enter und Putty sagt mir, dass der Zugriff verweigert wurde. Hmm schön und gut, der Private-Key fehlt ja auch.
Wie erstelle ich denn nun für diesen Benutzer den public und private Key?

Kann ich evtl schon beim erstellen der Keys sagen für welche Benutzer die Keys gültig sind und in welche Verzeichnisse muss ich diese dann kopieren?
Oder ist das zu unsicher und ich sollte für jeden Benutzer lieber einen eigenen Key anlegen?
Wenn ja, wie muss ich dann da vorgehen, ich kann mich derzeit nur als root einloggen. Kann ich da die entsprechenden Keys erstellen oder muss ich das mit den Benutzern selbst machen?

Zum Schluss noch meine Quellen, von denen ich die Anleitungen benutzt habe um das ganze einzurichten:
ssh; Hostkey; Publickey [Archiv] - linuxforen.de -- User helfen Usern
Installation Debian Linux SSH Server - Verbindung mittel SSh Schlüssel von Windows und Linux

Danke, hibbert
 
Wie erstelle ich denn nun für diesen Benutzer den public und private Key?
ssh-keygen, puttygen.exe

Oder ist das zu unsicher und ich sollte für jeden Benutzer lieber einen eigenen Key anlegen?
JA! Ansonsten könnte sich jeder(!) Benutzer mit einem beliebigen Benutzernamen auf dem Server einloggen. Das willst du unter keinen Umständen.

Kann ich da die entsprechenden Keys erstellen oder muss ich das mit den Benutzern selbst machen?
Du kannst alle Schlüsselpaare auch als root erstellen. Du musst sie dann nur in das richtige Verzeichnis kopieren (Private Key auf den Client, Public Key in ~/.ssh/authorized_keys des Benutzers).
 
Hi,
danke erstmal für deine schnelle Antwort. Allerdings habe ich noch ein kleines Problem, ich schilder einfach mal genau was ich gemacht habe, vllt habe ich mich ja nur irgendwo vertan oder etwas vergessen:
  • Ich habe den Putty Key generator geladen
  • Ich habe die Option SSH-2 RSA gewählt (Bits in Generator 2048)
  • Dann habe ich den Passphrase Key angegeben
  • Das ding generiert und den private - und public-key gespeichert.
  • Dann habe ich mich als root auf den Server connected (mit Putty)
  • Dann hab ich die Datei "id_rsh.pub" in das Verzeichnis /home/User1/.ssh gepackt
  • Anschlißeend habe ich folgenden Befehl ausgeführt: "cat /home/User1/.ssh/id_rsa.pub >> /home/User1/.ssh/authorized_keys"
  • Danach wurde die Datei "authorized_keys" angelegt.
  • Ich starte Putty ein zweitesmal, gebe meine Verbindungsdaten, den private Key etc ein bzw an, und connecte mich auf den Server.
  • Ich werde nach dem Usernamen gefragt -> User1, drücke Enter
  • Putty sagt mir: Server refused our key
Wenn ich jetzt die Dateien in den .ssh verzeichnissen vergleiche, jhabe ich folgendes festgestellt:
/root/.ssh
authorized_keys
id_rsa.pub
id_rsh.pub.client
known_hosts​
/home/User1/.ssh
authorized_keys
id_rsa.pub​

Irgendwie fehlt da ja mindestens eine Datei, denn ich kann mir nicht vorstellen, dass die "known_hosts" unwichtig ist.

Danke nochmals, hibbert
 
Putty sagt mir: Server refused our key
Ein Blick in die Logdatei von ssh könnte mehr verraten...
Hast du die Dateirechte richtig gesetzt? ~/.ssh braucht 700 und ~/.ssh/authorized_keys 600. Beide müssen dem jeweiligen User gehören
denn ich kann mir nicht vorstellen, dass die "known_hosts" unwichtig ist.
Dann erweitere deine Vorstellung...
 
Dann erweitere deine Vorstellung...
Hmm... ok, Wissern erweitert ;)

Das die Dateien dem Benutzer gehören sollten hab ich mir schon gedacht und hatte es auch schon geändert, aber die Dateirechte hatte ich dementsprechen nicht gesetzt.

Peinlicherweise habe ich die .log - Dateien noch nicht gefunden, habe aber dafür etwas anderes probiert:

Ich habe mich bei Putty als root auf meinem Server angemeldet und habe da eingegeben:
und anschließend hab ich dann folgende Meldunge bekommen:
Permission denied (publickey,keyboard-interactive)

Ich denke etwas großartig anderes würde auch nicht in der Log-Datei stehn.

hibbert
 
Du kannst für jeden User, als der du dich auf dem System einloggen willst, den selben Key benutzen. Der private-Key ist ja für dich als Person, nicht für die User-Accounts auf dem Zielsystem (die bekommen ja nur den public-Key in authorized_keys).

Für das "Weiterspringen" per SSH aus deiner SSH-Session auf dem Zielsystem musst du Agent-Forwarding für die SSH-Sessions aktivieren.
 
Hi,
ich habe jetzt das .ssh Verzeichnis jeweils in das Homeverzeichnis des jeweiligen Benutzers kopiert, den richtigen owner gesetzt. Das einzige was ich dann noch geändert habe war, dass ich die Datei "authorized_keys" gelöscht habe und die "id_rsa.pub" neu in die "authorized_keys" hinzugefügt habe.

Das Ergebnis ist, dass ich nun alle Benutzer mit dem gleichen Private-Key einloggen können, und ohne Key geht garnichts. So hab ich mir das vorgestellt.

Ist die Methode die ich da jetzt angewendet habe sicher? Da ich ja die entsprechenden dateien immer nur kopiert habe und nicht neu erstellt habe.

Danke hibbert
 
Normal legst du nur das .ssh an und fügst id_dsa.pub zu authorized_keys hinzu. Kopieren musst du da nichts. Wichtig ist nur, dass die nicht world-readable und nicht group/world-writeable sind.

Und vorallem solltest du den privaten Key id_dsa nicht mitkopieren. Der private Key sollte ausschließlich auf Maschinen in Accounts liegen, an denen du dich lokal anmeldest.
 
Ist die Methode die ich da jetzt angewendet habe sicher? Da ich ja die entsprechenden dateien immer nur kopiert habe und nicht neu erstellt habe.
Wenn du der einzige physische Benutzer bist, geht das in Ordnung. Ansonsten solltest du für jeden phys. Benutzer ein eigenes Schlüsselpaar erstellen.
 
Back
Top