putty inloggen met SSH key

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • tgroeneveld1981
  • Registratie: Mei 2015
  • Laatst online: 25-08 18:34
Ik heb een vraag over Public Key Authentication. Ik heb een VPS afgenomen en daar werd bij de installatie van het OS gezegd je kan alleen met een key inloggen en dat moet een zijn van format OpenSSH.

Volgens hun howto heb ik dit zo aangemaakt (ik werk trouwens op linux dus heb niet de GUI versie van puttygen)

code:
1
puttygen -t rsa -b 2048 -C "root@<ipadres>" -o keyfile.ppk


Vervolgens heb ik de public key geextract en op de server geplaatst:

code:
1
puttygen -L keyfile.ppk


En een private key geextract:
code:
1
puttygen keyfile.ppk -O private-openssh -o keyfile_privatekey


Nu wil ik deze server vanaf meerdere plekken benaderen:
  • mijn werkstation
  • mijn nas (voor rsync)
NAS - werkt
Nu kan ik op mijn nas perfect verbinding maken door gebruik te maken van de keyfile_privatekey: ik heb een ~/.ssh/config aangemaakt met:

host mijnserver
HostName <ipadres>
User root
IdentityFile ~/.ssh/keyfile_privatekey

en ik kan verbinden met:
code:
1
ssh root@mijnserver

Hij pakt dan de key uit de IdentityFile die voor die hostname in ~/.ssh/config staat.

Werkstation met Putty - werkt niet
Althans niet opde juiste manier denk ik.

Als ik in Putty het ip-adres van de server invoer en via onder Connection - SSH - Auth - Credentials mijn keyfile_privatekey selecteer, geeft Putty een pop-up bij verbinden:
No supported authentication methods available (server sent: publickey) (popup)
en in het putty-venster achter de pop-up zie ik nog staan:
Unable to use key file /home/<mijnusername>/vpskey/keyfile_privatekey (Open SSH SSH-2 private key (old PEM format)
Als ik echter niet die keyfile_privatekey selecteer in putty maar mijn keyfile.ppk, werkt het wel.
Maar volgens mij is dit niet de bedoeling, in die ppk zit immers de hele keypair.
Of zit ik verkeerd te denken?

Acties:
  • 0 Henk 'm!

  • nelizmastr
  • Registratie: Maart 2010
  • Laatst online: 21:40

nelizmastr

Goed wies kapot

Correctie: ik dacht zelf achterstevoren. Excuus!

[ Voor 100% gewijzigd door nelizmastr op 09-10-2024 21:40 ]

I reject your reality and substitute my own


Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
nelizmastr schreef op woensdag 9 oktober 2024 @ 17:37:
Je doet het volgens mij sowieso verkeerd om. De private key moet op de server staan, de public key op je clients. Het heet dan ook public key authentication en niet private key authentication.
Draai de keys dus even om en kijk of dat lukt.
Dit is absoluut niet waar. Het heet niet voor niets een private key. Deze is privé, van jou. De server waarop je probeert in te loggen geef je de public key (in ~/.ssh/authorized_keys).
Vanuit PKI wil je sowieso niet zelf de private key over het internet sturen, dat is een no go.
Dat doe je ook niet, je stuurt de public key. Daarna komt er een heel proces op gang. ;)
tgroeneveld1981 schreef op woensdag 9 oktober 2024 @ 12:02:
[...]

Als ik echter niet die keyfile_privatekey selecteer in putty maar mijn keyfile.ppk, werkt het wel.
Maar volgens mij is dit niet de bedoeling, in die ppk zit immers de hele keypair.
Of zit ik verkeerd te denken?
Ja, hier zit je verkeerd te denken. Net als bovenstaande opmerking; Die ppk is jouw private key. Die moet je met hand en tand verdedigen (lees: Een sterk wachtwoord op zetten). Maar dat is wel waarmee je authentiseert. PuTTY werkt niet met OpenSSH private key's maar met hun eigen PPK-formaat. :)

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • 0 Henk 'm!

  • RudolfR
  • Registratie: Maart 2011
  • Laatst online: 19:55
Volgens mij is er in openssh 8 (?) iets veranderd waardoor het standaardtype key van putty niet meer wordt geaccepteerd.

Dit idee: https://medium.com/@bongu...d-pem-format-ded3fc5c9299

[ Voor 33% gewijzigd door RudolfR op 09-10-2024 18:57 ]


Acties:
  • +1 Henk 'm!

  • pennywiser
  • Registratie: November 2002
  • Laatst online: 22:11
Ingewikkeld. Je werkt met Linux. Werk dan native zonder Putty dingen. Handiger was met ssh-keygen een keyset aan te maken en de .pub direct op je VPS te zetten in authorized_keys. Misschien kan dat alsnog.

Acties:
  • +2 Henk 'm!

  • ufear
  • Registratie: December 2002
  • Laatst online: 01-10 12:02
Handiger als je gewoon de native tools gebruikt ipv PuTTygen. PuTTy is het enige programma wat niet met generieke formats om kan gaan, maar graag zijn eigen formaat wil. Dat is dus altijd een conversie, die je handigst doet waar je ook PuTTy draait.

RSA wordt op steeds meer plekken afgeraden; dus beter vast nu naar ed25519.

Dus op je server:

code:
1
2
3
ssh-keygen -t ed25519
cat ~/id_ed25519.pub 
De output daarvan -> plakken naar ~/.authorized_keys op je server


Kopieer je private key in id_ed25519 naar je windows-machine; open daar PuTTyGen; converteer daarmee je key naar .PPK; gebruik die in PuTTy, klaar is kees.

Acties:
  • 0 Henk 'm!

  • jurroen
  • Registratie: Mei 2012
  • Laatst online: 30-09 10:06

jurroen

Security en privacy geek

ufear schreef op woensdag 9 oktober 2024 @ 19:06:
Handiger als je gewoon de native tools gebruikt ipv PuTTygen. PuTTy is het enige programma wat niet met generieke formats om kan gaan, maar graag zijn eigen formaat wil. Dat is dus altijd een conversie, die je handigst doet waar je ook PuTTy draait.

RSA wordt op steeds meer plekken afgeraden; dus beter vast nu naar ed25519.

Dus op je server:

code:
1
2
3
ssh-keygen -t ed25519
cat ~/id_ed25519.pub 
De output daarvan -> plakken naar ~/.authorized_keys op je server


Kopieer je private key in id_ed25519 naar je windows-machine; open daar PuTTyGen; converteer daarmee je key naar .PPK; gebruik die in PuTTy, klaar is kees.
Uhm OpenSSH zit tegenwoordig gewoon in Windows ingebakken >:) Dus die commando's kun je ook prima vanaf je Windows machine uitvoeren.

Ongevraagde verzoeken per DM beantwoord ik niet, sorry


Acties:
  • 0 Henk 'm!

  • lexuzu
  • Registratie: Juli 2004
  • Laatst online: 01-10 10:27
nelizmastr schreef op woensdag 9 oktober 2024 @ 17:37:
Je doet het volgens mij sowieso verkeerd om. De private key moet op de server staan, de public key op je clients. Het heet dan ook public key authentication en niet private key authentication.
Draai de keys dus even om en kijk of dat lukt.

Vanuit PKI wil je sowieso niet zelf de private key over het internet sturen, dat is een no go.
Deze uitleg kun je beter negeren want hier klopt niets van. Je private key moet je ten alle tijden bij je houden en zeker niet gaan kopiëren naar de hosts waar je mee wilt verbinden.

Vanuit PKI wordt een private key ook niet over het internet gestuurd. Het mechanisme is gebaseerd op dat je iets wat door een private key is ondertekend, met behulp van de public key kunt verifiëren.

Acties:
  • 0 Henk 'm!

  • tgroeneveld1981
  • Registratie: Mei 2015
  • Laatst online: 25-08 18:34
Oke, dus zoals ik begrijp:
  • op zich is het niet per se verkeerd zoals ik nu doe: die ppk die keyfile.ppk kan ik prima gebruiken om met putty te verbinden met mn server, de public key hiervan staat idd op de server in ~/.authorized_keys.
  • Wellicht beter om ed25519 keypair aan te maken, en de public key daarvan in plaats van de huidige in ~/.authorized_keys te zetten op de server en de private key gelijk op de nas gebruiken (of met native openssh-client), en voor gebruik met PuTTY even met puttygen converteren naar een ppk.
Ik ga dit proberen, thanks voor de antwoorden!

Acties:
  • 0 Henk 'm!

  • fastedje
  • Registratie: Oktober 2016
  • Laatst online: 26-09 13:33
tgroeneveld1981 schreef op woensdag 9 oktober 2024 @ 12:02:
Ik heb een vraag over Public Key Authentication. Ik heb een VPS afgenomen en daar werd bij de installatie van het OS gezegd je kan alleen met een key inloggen en dat moet een zijn van format OpenSSH.

...
Als ik echter niet die keyfile_privatekey selecteer in putty maar mijn keyfile.ppk, werkt het wel.
Maar volgens mij is dit niet de bedoeling, in die ppk zit immers de hele keypair.
Of zit ik verkeerd te denken?
Ik zie dat je een RSA.key hebt gegenereerd. Dat formaat kan je meestal nog wel gebruiken maar geeft wel regelmatig problemen, als.bin een Mac.im zou echt een key van het typ ed25519 aanraden:
code:
1
ssh-keygen -t ed25519


Verder is er nog een keypair wat.belangrijk is: de ssh host key. Ook hier geldt het ed25519 formaat is aan te bevelen. Een server kan trouwens verschillende key formaten aanbieden, net als dat je zelf verschillende private keys kan gebruiken/hebben.

Een private key bevat ook altijd het publieke. Een public key bevat alleen de public key

De private key zegt het eigenlijk al: die verlaat nooit het systeem.waarvoor deze is gegenereerd,.de public key .af je aan iedereen laten zien.

Om te debuggen kan je deze ssh optie gebruiken:
code:
1
ssh -vvv user@host


Aan de ssh server kan je de Debug vlag zetten in /etc/ssh/sshd.config om meer info te.zien in /var/log/secure
Let wel dat die log info van ssh en sshd niet altijd veelzeggend is.

Acties:
  • 0 Henk 'm!

  • Oliekoets
  • Registratie: September 2016
  • Laatst online: 26-09 19:39
Voor degenene die een broekzak vergelijking willen over ssh files en hoe het werkt:

Server waar je in wil loggen = Deur
SSh - private key = Sleutel
Ssh - public key = Sleutelgat
ssh - known hosts = Naam bordje op deur
ssh - agent = sleutelbos

[ Voor 5% gewijzigd door Oliekoets op 11-10-2024 10:55 ]


Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
Oliekoets schreef op vrijdag 11 oktober 2024 @ 10:54:
Voor degenene die een broekzak vergelijking willen over ssh files en hoe het werkt:

Server waar je in wil loggen = Deur
Iets specifieker: Het account op de server waarop je wilt inloggen.
SSh - private key = Sleutel
Ssh - public key = Sleutelgat
Nee, zo werkt dat niet. Je gebruikt de public key om iets te versleutelen dat dan weer met de sleutel open te maken is. Dus dan zou je het eerder met een hangslot kunnen vergelijken. Je doet iets op slot met de public key (hangslot) en met de private key krijg je het weer open. Dus het hangslot op de deur (account op de server).
ssh - known hosts = Naam bordje op deur
Die snap ik ook niet helemaal. Dat zou ik eerder de gastenlijst noemen, of zo. Iedereen (alle keys) op de lijst mogen naar binnen.
ssh - agent = sleutelbos

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • 0 Henk 'm!

  • Oliekoets
  • Registratie: September 2016
  • Laatst online: 26-09 19:39
Room42 schreef op vrijdag 11 oktober 2024 @ 11:39:
Die snap ik ook niet helemaal. Dat zou ik eerder de gastenlijst noemen, of zo. Iedereen (alle keys) op de lijst mogen naar binnen.

[...]
Je bent in de war met authorized_keys, dat is een gastenlijst o.i.d. known-hosts is eerder een lijst met huizen waar je eerder geweest bent.

Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
Oliekoets schreef op vrijdag 11 oktober 2024 @ 13:49:
[...]


Je bent in de war met authorized_keys, dat is een gastenlijst o.i.d. known-hosts is eerder een lijst met huizen waar je eerder geweest bent.
Oeps, je hebt gelijk :)

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron

Pagina: 1