Estoy ejecutando una nube OpenStack con una configuración de red muy particular, que hace imposible que una instancia se comunique con cualquier cosa en el mundo exterior hasta que inicie sesión y configure varios archivos de configuración.
Como resultado de esto, yono puedoinicie sesión en instancias utilizando claves SSH. ¿Hay alguna manera de establecer una contraseña predeterminada en una imagen de nube de Ubuntu 12.04 (tiene que ser 12.04) para poder iniciar sesión directamente desde la consola Horizon? Intenté utilizar el procedimiento descrito enhttps://ask.openstack.org/en/question/5531/defining-default-user-password-for-ubuntu-cloud-image/pero no funcionó en Ubuntu 12.04... aunque sí funcionó en 14.04.
Respuesta1
Configuración 18.04 paso a paso
En resumen necesitas:
sudo apt-get install cloud-image-utils
cat >user-data <<EOF
#cloud-config
password: asdfqwer
chpasswd: { expire: False }
ssh_pwauth: True
EOF
cloud-localds user-data.img user-data
# user-data.img MUST come after the rootfs.
qemu-system-x86_64 \
-drive file=ubuntu-18.04-server-cloudimg-amd64.img,format=qcow2 \
-drive file=user-data.img,format=raw
...
y ahora puedes iniciar sesión con:
- nombre de usuario:
ubuntu
- contraseña:
asdfqwer
Aquí describo un ejemplo completo de QEMU de trabajo mínimo y detallado:¿Hay alguna imagen QEMU Ubuntu prediseñada (32 bits) en línea?
Respuesta2
Primero puede crear una imagen de máquina virtual (VM) desde virtualbox o vmware que ya tiene un par de claves. Como puede controlar su virtualbox o vmware libremente, puede obtener el par de claves del host virtual.
luego importe el par de claves a su openstack.
sube esta imagen de máquina virtual
crear una instancia (A) a partir de esta imagen
cree una instancia (B) a partir de la imagen de la nube con el par de claves (cargado desde el paso 1) inyectado
Abra la consola (en el horizonte) de la instancia A, ahora puede conectar la instancia B desde A, porque B ha inyectado la clave pública de A.
Después de iniciar sesión, puede configurar el entorno, por ejemplo B, y cambiar la configuración.
Respuesta3
su imagen es: focal-server-cloudimg-amd64.img
rm -f vm_0001-focal-server-cloudimg-amd64.qcow2
qemu-img create -f qcow2 -F qcow2 -b focal-server-cloudimg-amd64.img vm_0001-focal-server-cloudimg-amd64.qcow2 20G
qemu-img info vm_0001-focal-server-cloudimg-amd64.qcow2
VM_NAME="ubuntu-20-cloud-image"
USERNAME="programster"
PASSWORD="thisok"
echo "#cloud-config
system_info:
default_user:
name: $USERNAME
home: /home/$USERNAME
password: $PASSWORD
chpasswd: { expire: False }
hostname: $VM_NAME
# configure sshd to allow users logging in using password
# rather than just keys
ssh_pwauth: True
" | sudo tee user-data
cloud-localds ./cidata.iso user-data
qemu-system-x86_64 -m 2048 -smp 4 -hda ./vm_0001-focal-server-cloudimg-amd64.qcow2 \
-cdrom ./cidata.iso -device e1000,netdev=net0 -netdev user,id=net0,hostfwd=tcp::5555-:22 -nographic