feat: enhance user account management during VM creation with automatic user creation and metadata preservation
This commit is contained in:
@@ -351,13 +351,20 @@ The installed kernel and rootfs are templates. `create` copies the rootfs to
|
||||
the VM runtime directory before Firecracker opens it read-write, so VMs do not
|
||||
share a mutable root disk.
|
||||
|
||||
During creation, UVM updates the private ext4 disk with a password for an
|
||||
existing guest account and enables OpenSSH password authentication. The
|
||||
During creation, UVM updates the private ext4 disk with a password for the
|
||||
requested guest account and enables OpenSSH password authentication. Missing
|
||||
custom usernames are created with an unused regular-user UID, a primary group,
|
||||
a private `/home/USERNAME` directory, and `/bin/sh` as their login shell. The
|
||||
defaults are username `root` and password `root`. A custom image must provide:
|
||||
|
||||
- `sshd`
|
||||
- `/etc/passwd`, `/etc/shadow`, and `/etc/ssh/sshd_config`
|
||||
- The requested user account; UVM does not create missing users
|
||||
- `/etc/group` and `/bin/sh` when creating a new user
|
||||
|
||||
Existing accounts retain their UID, groups, home directory, and shell. A new
|
||||
user reuses a same-named group if present; otherwise UVM creates one with an
|
||||
unused GID. `/etc/gshadow` is updated when present. The default `root` account
|
||||
must already exist in the image.
|
||||
|
||||
The known public demo key bundled in Firecracker's default bionic image is
|
||||
removed from each private disk. UVM also replaces the conventional RSA, ECDSA,
|
||||
|
||||
Reference in New Issue
Block a user