[SOLVED] Can't get cloud-init ssh_authorized_keys to work

Dec 13, 2021
24
6
8
I'm trying to use cloud init to add my ssh key, I have generated one on my desktop PC using id_ed25519 after that I added the following to my cloud-init.yml users:
YAML:
  - name: peter
    passwd: "..." # to enable auth using password until I get my key to work
    ssh_authorized_keys:
      - ssh-ed25519: ..... peter@....something
If I run /var/log/cloud-init-output.log it has a line with the text ci-info: no authorized SSH keys fingerprints found for user peter also there is no ~/.ssh directory.

When I try to connect using ssh I get the following
Code:
debug1: Offering public key: D:\\Users\\Peter/.ssh/id_ed25519 ED25519 SHA256:.....
debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: D:\\Users\\Peter/.ssh/id_xmss
debug3: no such identity: D:\\Users\\Peter/.ssh/id_xmss: No such file or directory

I attach the cloud init using qm set $VMID --cicustom "user=snippets:snippets/$SNIPPETNAME" and it works as other settings take effect.

What am I missing?
 
You, should not be seeing "ci-info: no authorized SSH keys fingerprints found for user peter". I suggest you re-examine either the terminal log, or the cloud-init.log that you should have access to via password authentication.

This is probably wrong:
- ssh-ed25519: ..... peter@....something

the line should contain the key as present in id_ed25519.pub:
Code:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICuFH3UQzBPpWt5WiS1HYZ1JotIcR7C7opc/c+EWeDEQ john@example.com

note no :



Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
Last edited:
I checked the /var/log/cloud-init-output.log file it still says ci-info: no authorized SSH keys fingerprints found for user peter. and ssh-ed25519: ..... peter@....something is just replaced content.
And yes I copied the content from my id_ed25519.pub but I added a - in front and a : after ssh-ed25519 to make it valid yml.