Skip to main content

Install zrok in Linux

Linux Binary

Linux logo

Linux

Download the binary distribution for your Linux distribution's architecture or run the install script below to pick the correct CPU architecture automatically. For Intel and AMD 64-bit machines use the amd64 distribution. For Raspberry Pi use the arm64 distribution.

Manually install in ~/bin/zrok
  1. Unarchive the distribution in a temporary directory.

    mkdir /tmp/zrok && tar -xf ./zrok*linux*.tar.gz -C /tmp/zrok
  2. Install the zrok executable.

    mkdir -p ~/bin && install /tmp/zrok/zrok ~/bin/
  3. Add ~/bin to your shell's executable search path. Optionally add this to your ~/.zshenv to persist the change.

    PATH=~/bin:$PATH
  4. With the zrok executable in your path, you can then execute the zrok command from your shell:

    zrok version
    Output
                   _    
    _____ __ ___ | | __
    |_ / '__/ _ \| |/ /
    / /| | | (_) | <
    /___|_| \___/|_|\_\

    v0.4.0 [c889005]
Auto install binary in /usr/local/bin/zrok

This script auto-selects the correct architecture, and may be helpful for Raspberry Pi users.

(set -euo pipefail;

cd $(mktemp -d);

ZROK_VERSION=$(
curl -sSf https://api.github.com/repos/openziti/zrok/releases/latest \
| jq -r '.tag_name'
);

case $(uname -m) in
x86_64) GOXARCH=amd64 ;;
aarch64|arm64) GOXARCH=arm64 ;;
armv7|armhf|arm) GOXARCH=arm ;;
*) echo "ERROR: unknown arch '$(uname -m)'" >&2
exit 1 ;;
esac;

curl -sSfL \
"https://github.com/openziti/zrok/releases/download/${ZROK_VERSION}/zrok_${ZROK_VERSION#v}_linux_${GOXARCH}.tar.gz" \
| tar -xz -f -;

sudo install -o root -g root ./zrok /usr/local/bin/;
zrok version;
)

Install zrok from the Repository

We recommend that you install zrok from the Linux package repository with the manual steps or the setup script. DEB and RPM packages are available for amd64, arm64, and armv7 architectures.

info

Check out zrok frontdoor for running zrok as an always-on service.

Manually set up DEB repository
(set -euo pipefail;

curl -sSLf https://get.openziti.io/tun/package-repos.gpg \
| sudo gpg --dearmor --output /usr/share/keyrings/openziti.gpg;
sudo chmod a+r /usr/share/keyrings/openziti.gpg;

sudo tee /etc/apt/sources.list.d/openziti-release.list >/dev/null <<EOF;
deb [signed-by=/usr/share/keyrings/openziti.gpg] https://packages.openziti.org/zitipax-openziti-deb-stable debian main
EOF

sudo apt update;
sudo apt install zrok;
zrok version;
)
Manually set up RPM repository
(set -euo pipefail;

sudo tee /etc/yum.repos.d/openziti-release.repo >/dev/null <<\EOF;
[OpenZitiRelease]
name=OpenZiti Release
baseurl=https://packages.openziti.org/zitipax-openziti-rpm-stable/redhat/$basearch
enabled=1
gpgcheck=0
gpgkey=https://packages.openziti.org/zitipax-openziti-rpm-stable/redhat/$basearch/repodata/repomd.xml.key
repo_gpgcheck=1
EOF

sudo dnf update;
sudo dnf install zrok;
zrok version;
)
Auto set up DEB or RPM repository
  1. Download the zrok install script.

    curl -sSLfo ./zrok-install.bash https://get.openziti.io/install.bash
  2. Inspect the script to ensure it is suitable to run as root on your system.

    less ./zrok-install.bash
  3. Run the script as root to add the package repo and install the zrok package.

    sudo bash ./zrok-install.bash zrok