FluffBuzz on Azure Linux VM
This guide sets up an Azure Linux VM with the Azure CLI, applies Network Security Group (NSG) hardening, configures Azure Bastion for SSH access, and installs FluffBuzz.What you will do
- Create Azure networking (VNet, subnets, NSG) and compute resources with the Azure CLI
- Apply Network Security Group rules so VM SSH is allowed only from Azure Bastion
- Use Azure Bastion for SSH access (no public IP on the VM)
- Install FluffBuzz with the installer script
- Verify the Gateway
What you need
- An Azure subscription with permission to create compute and network resources
- Azure CLI installed (see Azure CLI install steps if needed)
- An SSH key pair (the guide covers generating one if needed)
- ~20-30 minutes
Configure deployment
Register required resource providers (one-time)
Registered.Set deployment variables
/26.Select SSH key
Use your existing public key if you have one:If you don’t have an SSH key yet, generate one:
Select VM size and OS disk size
- Start smaller for light usage and scale up later
- Use more vCPU/RAM/disk for heavier automation, more channels, or larger model/tool workloads
- If a VM size is unavailable in your region or subscription quota, pick the closest available SKU
Deploy Azure resources
Create the network security group
Create the NSG and add rules so only the Bastion subnet can SSH into the VM.The rules are evaluated by priority (lowest number first): Bastion traffic is allowed at 100, then all other SSH is blocked at 110 and 120.
Create the virtual network and subnets
Create the VNet with the VM subnet (NSG attached), then add the Bastion subnet.
Create the VM
The VM has no public IP. SSH access is exclusively through Azure Bastion.
--public-ip-address "" prevents a public IP from being assigned. --nsg "" skips creating a per-NIC NSG (the subnet-level NSG handles security).Reproducibility: The command above uses latest for the Ubuntu image. To pin a specific version, list available versions and replace latest:Install FluffBuzz
Install FluffBuzz (in the VM shell)
Verify the Gateway
After onboarding completes:Most enterprise Azure teams already have GitHub Copilot licenses. If that is your case, we recommend choosing the GitHub Copilot provider in the FluffBuzz onboarding wizard. See GitHub Copilot provider.
Cost considerations
Azure Bastion Standard SKU runs approximately $140/month and the VM (Standard_B2as_v2) runs approximately $55/month. To reduce costs:-
Deallocate the VM when not in use (stops compute billing; disk charges remain). The FluffBuzz Gateway will not be reachable while the VM is deallocated — restart it when you need it live again:
- Delete Bastion when not needed and recreate it when you need SSH access. Bastion is the largest cost component and takes only a few minutes to provision.
-
Use the Basic Bastion SKU (~$38/month) if you only need Portal-based SSH and don’t require CLI tunneling (
az network bastion ssh).
Cleanup
To delete all resources created by this guide:Next steps
- Set up messaging channels: Channels
- Pair local devices as nodes: Nodes
- Configure the Gateway: Gateway configuration
- For more details on FluffBuzz Azure deployment with the GitHub Copilot model provider: FluffBuzz on Azure with GitHub Copilot