Comment 0 for bug 1940233

Revision history for this message
Christian Ehrhardt  (paelzer) wrote : cloud-init in impish makes /home/ubuntu/.ssh root.root breaking its use

Hi,
I got to this by my systems complaining to be unable to do ssh-keygen
after deployment. Example:
$ uvt-kvm ssh --insecure impish-kvm 'ssh-keygen -b 2048 -t rsa -f ~/.ssh/id_rsa -q -N '\'''\'''
Saving key "/home/ubuntu/.ssh/id_rsa" failed: Permission denied

I found that is due to permissions after guest spawning:

Old:
drwx------ 2 ubuntu ubuntu 4096 Aug 17 08:20 .ssh/

New:
drwxr-xr-x 2 root root 4096 Aug 17 08:17 .ssh/

That beaks later things like ssh-keygen.

uvt-kvm only does instruct cloud-init to place a key.
This uses ssh_authorized_keys from
https://cloudinit.readthedocs.io/en/latest/topics/modules.html?highlight=ssh_authorized_keys#authorized-keys

Checked a few guests:
I've seen this on
- impish x86
- impish s390x

I've not seen this on
- bionic
- focal
- impish

You might say - wait a minute impish in both lists.
But it is the date:

Bad
com.ubuntu.cloud.daily:server:21.10:amd64 20210815
cloud-init 21.2-69-g65607405-0ubuntu1

Good
com.ubuntu.cloud.daily:server:21.10:amd64 20210706
cloud-init 21.2-3-g899bfaa9-0ubuntu2

And either this cloud-init version is broken or the underlying new impish image.
I mounted the underlying cloud-image (without customization by cloud-init)
and found that /home is empty (true for all those images).

So to me that seems to be an issue in the new cloud-init that now is in
those images.