Rocky Linux 10 on Azure User Guide
Overview
This guide covers deploying and operating Rocky Linux 10 on Microsoft Azure using cloudimg's pre configured virtual machine image from the Azure Marketplace.
Rocky Linux 10 is the current major release of the community enterprise Linux distribution, binary compatible with Red Hat Enterprise Linux 10. This image ships fully patched to the latest Rocky 10 package set at build time and, unlike a minor version pinned image, keeps its standard BaseOS and AppStream repositories enabled so you roll forward within the Rocky 10 stream on your own schedule. No application is preinstalled: the operating system itself is the product, ready for you to build your own services on.
What's included:
- Rocky Linux 10, fully binary compatible with Red Hat Enterprise Linux 10
- Brought fully up to date at build time (no pending security updates at capture)
- Secure by default: SELinux in enforcing mode, key only SSH (password authentication disabled), root login locked
- No baked in credentials: access is by the SSH key you choose at launch, so no two instances share a secret
- Azure Linux Agent (waagent) for cloud integration, Chronyd for time synchronisation
- Gen2 Hyper V virtual machine support
- 24/7 cloudimg support
Platform: Microsoft Azure (Gen2 Hyper V)
Default user: azureuser (created from the SSH key you supply at deploy time)
Prerequisites
Before deploying this image, ensure you have:
- An active Microsoft Azure subscription
- Access to the Azure Portal or Azure CLI
- An SSH key pair for Linux VM access
- Familiarity with Azure VM management
Recommended VM Size: Standard_B2s (2 vCPU, 4 GB RAM) or larger. Rocky Linux 10 runs comfortably on the whole B, D and E series; scale to suit your workload.
Step 1: Deploy the Virtual Machine
Option A: Azure Portal
- In the Azure Marketplace, search for "Rocky Linux 10 cloudimg"
- Select the image and click Create
- Configure the basics:
- Subscription: your Azure subscription
- Resource Group: create new or select existing
- Virtual Machine Name: a name for your VM
- Region: your preferred Azure region
- Size:
Standard_B2srecommended - Under Administrator Account, select SSH public key and paste your public key. This key becomes the
azureuserlogin; the image ships no password and no pre installed key. - Under Inbound Port Rules, allow SSH (port 22)
- Click Review + Create, then Create
Option B: Azure CLI
az vm create \
--resource-group myResourceGroup \
--name my-rocky10-vm \
--image cloudimg:rocky-linux:rocky10:latest \
--size Standard_B2s \
--admin-username azureuser \
--generate-ssh-keys \
--public-ip-sku Standard
Step 2: Connect via SSH
Find your VM's public IP, then connect:
az vm show --resource-group myResourceGroup --name my-rocky10-vm --show-details --query publicIps -o tsv
ssh azureuser@<public-ip-address>
Only the SSH key you supplied at deploy time is accepted. Password authentication is disabled on the image.
Step 3: Verify the Release
After connecting, confirm you are on Rocky Linux 10:
cat /etc/rocky-release
grep -E 'PRETTY_NAME|VERSION_ID' /etc/os-release
uname -r
Expected output:
Rocky Linux release 10.2 (Red Quartz)
VERSION_ID="10.2"
PRETTY_NAME="Rocky Linux 10.2 (Red Quartz)"
6.12.0-211.34.1.el10_2.x86_64

Check available disk and memory:
df -h /
free -h
Step 4: Confirm the Image is Fully Patched
The image is shipped fully patched. You can confirm no security updates were outstanding at capture:
sudo dnf -q check-update ; echo "exit=$? (100 = updates available, 0 = fully patched)"
A clean image returns exit=0.

Step 5: Review the Security Posture
This image is secure by default. Verify the key hardening properties:
getenforce
sudo sshd -T | grep -E '^passwordauthentication'
sudo passwd -S root | awk '{print $1, $2}'
Expected: SELinux Enforcing, passwordauthentication no, and root reported as L / LK (locked). Access is by your SSH key only.

Confirm the Azure Linux Agent is healthy:
systemctl is-active waagent
systemctl is-active chronyd

Step 6: Keeping the Image Up to Date
Because Rocky Linux 10 is the current major stream, the standard BaseOS and AppStream repositories are enabled so you can move forward at any time:
- Apply the latest security errata and package updates within the Rocky 10 stream:
bash
sudo dnf update -y
- Reboot if a new kernel was installed:
bash
sudo needs-restarting -r || sudo systemctl reboot
- To review only security advisories before applying them:
bash
sudo dnf updateinfo list security
sudo dnf update --advisory=<RLSA-ID>
Step 7: Configure the Firewall (Optional)
The Azure Network Security Group (NSG) is the first line of network control. Rocky Linux also ships firewalld for host level rules:
sudo systemctl enable --now firewalld
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload
Common Use Cases
- A modern RHEL 10 compatible foundation for your own applications and stacks
- Cloud native and container node images built on a known good enterprise OS
- Migrating RHEL compatible workloads to a freely available enterprise Linux without licence cost
- A long lifecycle enterprise base for regulated or production environments
Troubleshooting
Cannot Connect via SSH
- Verify the VM is in Running state in the Azure Portal
- Check that port 22 is allowed in the Network Security Group
- Ensure you are using the correct username:
azureuser - Verify your SSH private key matches the public key configured at deployment. Password login is disabled by design.
Azure Agent Not Running
sudo systemctl start waagent
sudo systemctl enable waagent
Package Manager Issues
If repositories are unreachable, check DNS resolution, then retry:
nslookup download.rockylinux.org
sudo dnf clean all && sudo dnf update -y
Important Notes
Rocky Linux is free and open source, released under the GPL and compatible permissive licences (BSD-3-Clause). It is a community driven, binary compatible rebuild of Red Hat Enterprise Linux 10 produced by the Rocky Enterprise Software Foundation. No licence fee or subscription is required.
Support
For assistance with this image, contact cloudimg support:
- Website: www.cloudimg.co.uk
- Product Catalogue: www.cloudimg.co.uk/products
- User Guides: www.cloudimg.co.uk/guides
- SLA: 24 hour response guaranteed