Deployment guide

openSUSE Leap 16

Overview

openSUSE Leap 16.0 is a stable, community-supported Linux distribution that shares its core codebase with SUSE Linux Enterprise 16. This SecureAnyCloud image gives you a preconfigured, hardened openSUSE Leap 16.0 virtual machine on Microsoft Azure, ready to deploy from the Azure Marketplace.

This guide covers deploying and configuring the image.

What you get:

  • openSUSE Leap 16.0, sharing its core codebase with SUSE Linux Enterprise 16
  • Linux 6.12 LTS kernel
  • Btrfs root filesystem
  • SELinux mandatory access control, enforcing by default
  • Azure Linux Agent (waagent) and cloud-init for cloud integration
  • Automated security patching through a systemd timer that runs zypper patch
  • Gen2 (UEFI) Hyper-V virtual machine support
  • Key-only SSH, root login locked, and only port 22 exposed
  • 24/7 SecureAnyCloud support

Platform: Microsoft Azure (Gen2 Hyper-V) Default user: azureuser

Prerequisites

Before you deploy this image, make sure you have:

  • An active Microsoft Azure subscription
  • Access to the Azure Portal or the 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. openSUSE Leap 16 requires an x86-64-v2 capable CPU, which is standard on all current Azure VM sizes.

1

Deploy the virtual machine

Option A: Azure Portal

  • Open the Azure Marketplace and search for "openSUSE Leap 16 on Azure SecureAnyCloud".
  • Select the image and click Create.
  • Configure the basics: Subscription, Resource group, VM name, Region and Size (Standard_B2s).
  • Under Administrator account, select SSH public key and enter your key.
  • Under Inbound port rules, allow SSH (port 22).
  • Click Review + create, then Create.

Option B: Azure CLI

az vm image terms accept --urn sac1647283583153:opensuse-leap-16:default:latest
az vm create \
  --resource-group myResourceGroup \
  --name my-opensuse-leap-16-vm \
  --image sac1647283583153:opensuse-leap-16:default:latest \
  --size Standard_B2s \
  --admin-username azureuser \
  --generate-ssh-keys \
  --public-ip-sku Standard
2

Connect over SSH

Find the VM's public IP address, then connect:

az vm show --resource-group myResourceGroup --name my-opensuse-leap-16-vm --show-details --query publicIps -o tsv ssh azureuser@<vm-ip>

The image ships key-only SSH: password authentication is disabled and the root account is locked. Azure injects your public key at provisioning time.

3

Verify the installation

Confirm the operating system, kernel and root filesystem:

grep -E '^(NAME|VERSION|ID|VERSION_ID|PRETTY_NAME)=' /etc/os-release uname -srm findmnt -no FSTYPE /

Check disk space and memory:

df -h / free -h

Confirm that SELinux is enforcing and that the Azure agents are healthy:

sudo getenforce systemctl is-active waagent cloud-init status
4

Keep the system updated

The image is patched at build time and ships with a systemd timer that applies security patches automatically. Patches released after the build are applied on your VM within its first day, or straight away if you run sudo zypper patch as shown below.

Confirm that the timer is armed:

systemctl is-enabled sac-zypper-patch.timer
systemctl list-timers --no-pager sac-zypper-patch.timer

To patch manually at any time, apply all pending security patches:

sudo zypper refresh
sudo zypper patch

To apply all available package updates, not only security patches:

sudo zypper update
5

Manage software repositories

openSUSE Leap 16 uses zypper for package management. List the configured, GPG-checked repositories:

zypper lr

Install, search for or remove packages, substituting your own package name:

sudo zypper install <package-name>
sudo zypper search <search-term>
sudo zypper remove <package-name>

The non-OSS repository is present but disabled. Enable it if you need packages such as additional firmware or codecs:

sudo zypper modifyrepo --enable openSUSE:repo-non-oss
6

Configure the firewall (optional)

The Azure network security group (NSG) controls inbound traffic, and the image opens only port 22. To run a host firewall inside the VM, install and enable firewalld, then open the ports you need and mirror them in the Azure NSG:

sudo zypper install firewalld
sudo systemctl enable --now firewalld
sudo firewall-cmd --permanent --add-port=443/tcp sudo firewall-cmd --reload

Common use cases

  • Development and testing for SUSE Linux Enterprise 16-based production environments
  • Web server and application hosting
  • Database deployments (PostgreSQL, MariaDB, MySQL)
  • Container workloads (Docker, Podman)
  • Education and training environments

Troubleshooting

Cannot connect over SSH

  • Verify that the VM is in the Running state in the Azure Portal.
  • Check that port 22 is allowed in the NSG.
  • Confirm that you are using the correct username, azureuser.
  • Verify that your SSH key matches the one configured during deployment.

Azure agent health

systemctl is-active waagent

Verify repository connectivity

getent hosts download.opensuse.org

SELinux denials

openSUSE Leap 16 enforces SELinux by default. If an application is denied access, inspect today's denials in the system journal. Do not disable SELinux. Adjust the policy or file labels instead:

sudo journalctl --since today --no-pager | grep -E 'avc: +denied' || echo "no AVC denials today"

The audit package, which provides ausearch and audit2why, is not installed by default. To get those tools, run sudo zypper install audit.

Recovering from a bad update

The root filesystem is Btrfs. If you install snapper (sudo zypper install snapper) and configure it for the root subvolume, you can take filesystem snapshots and roll back to them. Alternatively, restore from your own backups, or redeploy the image and reapply your configuration.

Important notes

openSUSE Leap is free and open-source software, and no license is required. It is not governed by a single license. Instead, it is a collection of thousands of independently packaged components (GPL, LGPL, MIT, BSD, Apache-2.0, MPL and more). Read each package's terms with rpm -qi <package>.

openSUSE Leap 16 shares its core codebase with SUSE Linux Enterprise 16, providing enterprise-grade stability without subscription fees, with 24 months of community support and annual minor releases.

Support

For assistance with this image, contact SecureAnyCloud support:

  • Website: secureanycloud.com
  • Product catalog: secureanycloud.com/products

Deploy on Azure

Launch openSUSE Leap 16.0 on Azure with 24/7 support from SecureAnyCloud.

View this image

Need Help?

Our support team is available 24/7.

sales@secureanycloud.com

Deploy on Azure