Suppose you want to run Amazon Linux 2023 on your on-premises virtualization environment such as KVM, VMware, or Hyper-V.
First, download the disk image from: 👉 https://cdn.amazonlinux.com/al2023/os-images/latest/
Once you've launched a VM using the disk image, you’ll notice it boots successfully. But then you might wonder: "What's the default username and password to log in?"
Good question! In fact, the image doesn't come with a default user or password.
Let me explain why.
When launching an Amazon EC2 instance in the cloud, you’re required to select a key pair. During boot, the instance retrieves metadata like the key pair and user-data from the Instance Metadata Service (IMDS), and uses cloud-init to process that data. This includes setting up the default user (ec2-user) and enabling SSH access using the provided .pem key.
Now, let’s go back to your on-premises VM. Since there’s no IMDS available, you need to provide this initialization data manually using a custom seed.iso file. When you first boot the VM, make sure to attach the seed.iso as a secondary drive. Amazon Linux 2023 will read it via cloud-init and perform tasks such as creating a user, configuring networking, and more.
You can follow the official guide to create the seed.iso: 👉 https://docs.aws.amazon.com/linux/al2023/ug/seed-iso.html
However, the official instructions can be a bit verbose. That’s why I created this script to simplify the process.
Just download and run the seed-iso-maker.sh.
chmod +x seed-iso-maker.sh
./seed-iso-maker.sh