# Cloudflare packages

- Cloudflared packages
- Gokeyless Packages

## Cloudflared

- Any Debian Based Distribution (Recommended)
- Debian Bookworm
- Ubuntu 20.04 (Focal Fossa)
- Ubuntu 22.04 (Jammy Jellyfish)
- Ubuntu 24.04 (Noble Numbat)
- Amazon Linux
- RHEL Generic
- Centos 7
- Centos 8
- Centos Stream

### Warning: Public Key Rollover (30 October 2025)

We have rolled our public key for package signing. If you are using RPM-based distributions (RHEL, CentOS, Amazon Linux, etc.) or Debian Trixie and have the old key installed, RPM/Deb packages will no longer work with the old key. Please update your repository configuration using the instructions below to ensure you can continue receiving package updates. The previous keys will still work for other distributions for the time being, but it is now DEPRECATED and will be removed on 30 April 2026

### Any Debian Based Distribution (Recommended)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    # Stable
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main' | sudo tee /etc/apt/sources.list.d/cloudflared.list
    # Nightly
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://next.pkg.cloudflare.com/cloudflared any main' | sudo tee /etc/apt/sources.list.d/cloudflared.list

    # install cloudflared
    sudo apt-get update && sudo apt-get install cloudflared

### Debian Bookworm

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    # Stable
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared bookworm main' | sudo tee /etc/apt/sources.list.d/cloudflared.list
    # Nightly
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://next.pkg.cloudflare.com/cloudflared bookworm main' | sudo tee /etc/apt/sources.list.d/cloudflared.list

    # install cloudflared
    sudo apt-get update && sudo apt-get install cloudflared

### Ubuntu 20.04 (Focal Fossa)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    # Stable
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared focal main' | sudo tee /etc/apt/sources.list.d/cloudflared.list
    # Nightly
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://next.pkg.cloudflare.com/cloudflared focal main' | sudo tee /etc/apt/sources.list.d/cloudflared.list

    # install cloudflared
    sudo apt-get update && sudo apt-get install cloudflared

### Ubuntu 22.04 (Jammy Jellyfish)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    # Stable
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared jammy main' | sudo tee /etc/apt/sources.list.d/cloudflared.list
    # Nightly
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://next.pkg.cloudflare.com/cloudflared jammy main' | sudo tee /etc/apt/sources.list.d/cloudflared.list

    # install cloudflared
    sudo apt-get update && sudo apt-get install cloudflared

### Ubuntu 24.04 (Noble Numbat)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    # Stable
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared noble main' | sudo tee /etc/apt/sources.list.d/cloudflared.list
    # Nightly
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://next.pkg.cloudflare.com/cloudflared noble main' | sudo tee /etc/apt/sources.list.d/cloudflared.list

    # install cloudflared
    sudo apt-get update && sudo apt-get install cloudflared

### Amazon Linux

    # Add cloudflared.repo to /etc/yum.repos.d/
    # Stable
    curl -fsSl https://pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo
    # Nightly
    curl -fsSl https://next.pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo

    #update repo
    sudo yum update

    # install cloudflared
    sudo yum install cloudflared

### RHEL Generic

    # Add cloudflared.repo to /etc/yum.repos.d/
    # Stable
    curl -fsSl https://pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo
    # Nightly
    curl -fsSl https://next.pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo

    #update repo
    sudo yum update

    # install cloudflared
    sudo yum install cloudflared

### Centos 7

    # This requires yum config-manager
    sudo yum install yum-utils

    # Add cloudflared.repo to config-manager
    # Stable
    sudo yum-config-manager --add-repo https://pkg.cloudflare.com/cloudflared.repo
    # Nightly
    sudo yum-config-manager --add-repo https://next.pkg.cloudflare.com/cloudflared.repo

    # install cloudflared
    yum install cloudflared

### Centos 8

    # This requires dnf config-manager
    # Add cloudflared.repo to config-manager
    # Stable
    sudo dnf config-manager --add-repo https://pkg.cloudflare.com/cloudflared.repo
    # Nightly
    sudo dnf config-manager --add-repo https://next.pkg.cloudflare.com/cloudflared.repo

    # install cloudflared
    sudo dnf install cloudflared

### Centos Stream

    # This requires dnf config-manager
    # Add cloudflared.repo to config-manager
    # Stable
    sudo dnf config-manager --add-repo https://pkg.cloudflare.com/cloudflared.repo
    # Nightly
    sudo dnf config-manager --add-repo https://next.pkg.cloudflare.com/cloudflared.repo

    # install cloudflared
    sudo dnf install cloudflared

## Gokeyless

- Debian / Ubuntu (apt)
  - Debian 13 (Trixie)
  - Debian 12 (Bookworm)
  - Debian 11 (Bullseye)
  - Ubuntu 24.04 (Noble Numbat)
  - Ubuntu 22.04 (Jammy Jellyfish)
  - Ubuntu 20.04 (Focal Fossa)
- RHEL / CentOS / Amazon Linux (yum/dnf)
  - Amazon Linux 2023
  - Amazon Linux 2
  - RHEL 9 / CentOS Stream 9
  - RHEL 8 / CentOS 8

### Warning: Public Key Rollover (30 October 2025)

We have rolled our public key for package signing. If you are using RPM-based distributions (RHEL, CentOS, Amazon Linux, etc.) or Debian Trixie and have the old key installed, RPM/Deb packages will no longer work with the old key. Please update your repository configuration using the instructions below to ensure you can continue receiving package updates. The previous keys will still work for other distributions for the time being, but it is now DEPRECATED and will be removed on 30 April 2026

### Debian 13 (Trixie)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/gokeyless trixie main' | sudo tee /etc/apt/sources.list.d/cloudflare.list

    # install gokeyless
    sudo apt-get update && sudo apt-get install gokeyless

### Debian 12 (Bookworm)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/gokeyless bookworm main' | sudo tee /etc/apt/sources.list.d/cloudflare.list

    # install gokeyless
    sudo apt-get update && sudo apt-get install gokeyless

### Debian 11 (Bullseye)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/gokeyless bullseye main' | sudo tee /etc/apt/sources.list.d/cloudflare.list

    # install gokeyless
    sudo apt-get update && sudo apt-get install gokeyless

### Ubuntu 24.04 (Noble Numbat)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/gokeyless noble main' | sudo tee /etc/apt/sources.list.d/cloudflare.list

    # install gokeyless
    sudo apt-get update && sudo apt-get install gokeyless

### Ubuntu 22.04 (Jammy Jellyfish)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/gokeyless jammy main' | sudo tee /etc/apt/sources.list.d/cloudflare.list

    # install gokeyless
    sudo apt-get update && sudo apt-get install gokeyless

### Ubuntu 20.04 (Focal Fossa)

    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null

    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/gokeyless focal main' | sudo tee /etc/apt/sources.list.d/cloudflare.list

    # install gokeyless
    sudo apt-get update && sudo apt-get install gokeyless

### Important: RPM Repository Selection for Gokeyless

Gokeyless uses CGO for PKCS#11/HSM support, which creates glibc dependencies. We provide two RPM repositories:

- `rpm/` - For RHEL 9+, CentOS Stream 9, Amazon Linux 2023 (glibc 2.34+)
- `rpm-el8/` - For RHEL 8, CentOS 8, Amazon Linux 2 (glibc 2.28)

Use the appropriate repository for your distribution to avoid glibc version errors.

### Amazon Linux 2023

    # Add gokeyless.repo to /etc/yum.repos.d/
    curl -fsSl https://pkg.cloudflare.com/gokeyless/rpm/gokeyless.repo | sudo tee /etc/yum.repos.d/gokeyless.repo

    #update repo
    sudo yum update

    # install gokeyless
    sudo yum install gokeyless

### Amazon Linux 2

    # Add gokeyless.repo to /etc/yum.repos.d/ (EL8 repository for glibc 2.28 compatibility)
    curl -fsSl https://pkg.cloudflare.com/gokeyless/rpm-el8/gokeyless.repo | sudo tee /etc/yum.repos.d/gokeyless.repo

    #update repo
    sudo yum update

    # install gokeyless
    sudo yum install gokeyless

### RHEL 9 / CentOS Stream 9

    # This requires dnf config-manager
    # Add gokeyless.repo to config-manager
    sudo dnf config-manager --add-repo https://pkg.cloudflare.com/gokeyless/rpm/gokeyless.repo

    # install gokeyless
    sudo dnf install gokeyless

### RHEL 8 / CentOS 8

    # This requires dnf config-manager
    # Add gokeyless.repo to config-manager (EL8 repository for glibc 2.28 compatibility)
    sudo dnf config-manager --add-repo https://pkg.cloudflare.com/gokeyless/rpm-el8/gokeyless.repo

    # install gokeyless
    sudo dnf install gokeyless