Install Device Protection for Linux
On Linux, Aikido Device Protection ships as a .deb package for Debian-family distributions and an .rpm package for Red Hat-family ones.
Most rollouts use the automated install, where the Aikido dashboard gives you a command that downloads, installs, and registers the agent in one step. Use the manual install when you want the package file itself, for example to push it through your own configuration management, to stage it on an internal mirror, or to install on a host that can't reach the download URL directly.
Install with one command
Get the install command
Go to Device Protection and open the Devices tab.
Click Connect Device in the top right.
Choose Manual install.
Select the user group the device should join, then copy the Linux install command.
Run it on the device
Run the command as root on the device. It picks the right package for the distribution and architecture, installs it, and registers the device against the token in the command.
Choose the install flavor
The command the dashboard shows installs the desktop flavor, which is what a developer's laptop or workstation needs. A machine without a desktop takes an extra flag, and the rest of the command stays the same.
A laptop or workstation somebody works on. No flag.
curl -fsSL https://github.com/AikidoSec/safe-chain/raw/refs/heads/main/install-scripts/install-endpoint-linux.sh | sudo sh -s -- --token "$AIKIDO_TOKEN"A machine with no desktop session: a build server, a CI runner, a Docker or Kubernetes host, a cloud VM developers SSH into.
curl -fsSL https://github.com/AikidoSec/safe-chain/raw/refs/heads/main/install-scripts/install-endpoint-linux.sh | sudo sh -s -- --token "$AIKIDO_TOKEN" --headlessThe agent running inside a container, installed while the image is built.
curl -fsSL https://github.com/AikidoSec/safe-chain/raw/refs/heads/main/install-scripts/install-endpoint-linux.sh | sudo sh -s -- --token "$AIKIDO_TOKEN" --containerContainer images need a few more pieces, such as the entrypoint that starts the agent. See Device Protection in Containers.
What each flavor changes:
Desktop
none
Tray icon and the local dashboard, GTK and WebKit pulled in as recommended packages, transparent eBPF datapath. Complete after a new login shell or reboot
Server or VM
--headless
No tray icon, and GTK, WebKit, and the tray extensions are left out. Same transparent eBPF datapath. Still needs a reboot
Container image
--container
No tray icon or desktop packages, explicit proxy on 127.0.0.1:7654 instead of the eBPF datapath, CA held in memory instead of the OS keyring, no reboot
Manual install
The manual install uses the same packages. The difference is that you download the file and supply the token yourself, through the AIKIDO_TOKEN environment variable that the package reads while it installs.
Before you start, collect:
Your user group token. It's part of the install command shown under Connect Device.
The device architecture. Run
uname -m.x86_64means amd64,aarch64means arm64.The flavor, if the machine is not a desktop. There is no flag to pass here, so set it in the environment of the package manager:
AIKIDO_HEADLESS=1for a server or VM,AIKIDO_CONTAINER=1together withAIKIDO_CI_CD=1for a container image, because packages up to 1.8.2 read only the older name. Also tell the package manager to skip recommended packages,--no-install-recommendson the Debian family and--setopt=install_weak_deps=Falseon the Red Hat family, which is what keeps the tray and the desktop libraries off the machine.
Download the package for your architecture:
amd64 (x86_64)
arm64 (aarch64)
Then install it:
Download the package that matches your major version and architecture. Use the el9 build on version 9 and the el10 build on version 10.
Then install it:
The package enables and starts the aikido-endpoint-protection service during installation, so there's no separate start step.
Verify the install
Check that the service is running and the agent reports a healthy state:
The device then appears in your device list with an Active status. To confirm that blocking actually works, follow How to test if Device Protection is working.
Upgrading
Install the newer package over the existing one with the same command. The package restarts the service against the new binaries and keeps the device's registration and configuration, so you don't need to pass AIKIDO_TOKEN again.
Last updated
Was this helpful?