

Open source projects from skynx.com.
skynx-cli

This repository contains skynxctl, a tool for managing the skynx SASE platform from the command line.
skynxctl is available for a variety of Linux platforms, macOS and Windows.
Minimun Requirements
skynxctl has the same minimum requirements as Go:
- Linux kernel version 2.6.23 or later
- Windows 7 or later
- FreeBSD 11.2 or later
- MacOS 10.11 El Capitan or later
Getting Started
See Quick Start to learn how to start building your skynx cloud-agnostic architecture.
Documentation
For the complete skynx platform documentation visit skynx.com/docs.
Installation
Binary Downloads
Linux, macOS and Windows binary downloads are available from the Releases page.
You can download the pre-compiled binaries and install them with the appropriate tools.
Linux Installation
Linux binary installation with curl
-
Download the latest release.
curl -LO "https://dl.skynx.com/binaries/stable/latest/linux/amd64/skynxctl"
-
Validate the binary (optional).
Download the skynxctl checksum file:
curl -LO "https://dl.skynx.com/binaries/stable/latest/linux/amd64/skynxctl_checksum.sha256"
Validate the skynxctl binary against the checksum file:
sha256sum --check < skynxctl_checksum.sha256
If valid, the output must be:
skynxctl: OK
If the check fails, sha256 exits with nonzero status and prints output similar to:
skynxctl: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
-
Install skynxctl.
sudo install -o root -g root -m 0755 skynxctl /usr/local/bin/skynxctl
Note:
If you do not have root access on the target system, you can still install skynxctl to the ~/.local/bin directory:
chmod +x skynxctl
mkdir -p ~/.local/bin
mv ./skynxctl ~/.local/bin/skynxctl
# and then append (or prepend) ~/.local/bin to $PATH
Package Repository
skynx provides a package repository that contains both DEB and RPM downloads.
For DEB-based platforms (e.g. Ubuntu and Debian) run the following to set up a new APT sources.list entry and install skynx-cli:
echo 'deb [trusted=yes] https://repo.skynx.com/apt/ /' | sudo tee /etc/apt/sources.list.d/skynx.list
sudo apt update
sudo apt install skynx-cli
For RPM-based platforms (e.g. RHEL, CentOS) use the following to create a repo file and install skynx-cli:
cat <<EOF | sudo tee /etc/yum.repos.d/skynx.repo
[skynx]
name=skynx Repository - Stable
baseurl=https://repo.skynx.com/yum
enabled=1
gpgcheck=0
EOF
sudo yum install skynx-cli
Homebrew installation on Linux
If you are on Linux and using Homebrew package manager, you can install the skynx CLI with Homebrew.
-
Run the installation command:
brew install skynx-io/tap/skynx-cli
-
Test to ensure the version you installed is up-to-date:
skynxctl version show
macOS Installation
macOS binary installation with curl
-
Download the latest release.
Intel:
curl -LO "https://dl.skynx.com/binaries/stable/latest/darwin/amd64/skynxctl"
Apple Silicon:
curl -LO "https://dl.skynx.com/binaries/stable/latest/darwin/arm64/skynxctl"
-
Validate the binary (optional).
Download the skynxctl checksum file:
Intel:
curl -LO "https://dl.skynx.com/binaries/stable/latest/darwin/amd64/skynxctl_checksum.sha256"
Apple Silicon:
curl -LO "https://dl.skynx.com/binaries/stable/latest/darwin/arm64/skynxctl_checksum.sha256"
Validate the skynxctl binary against the checksum file:
shasum --algorithm 256 --check skynxctl_checksum.sha256
If valid, the output must be:
skynxctl: OK
If the check fails, sha256 exits with nonzero status and prints output similar to:
skynxctl: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
-
Make the skynxctl binary executable.
chmod +x skynxctl
-
Move the skynxctl binary to a file location on your system PATH.
sudo mkdir -p /usr/local/bin
sudo mv skynxctl /usr/local/bin/skynxctl
sudo chown root: /usr/local/bin/skynxctl
Note: Make sure /usr/local/bin is in your PATH environment variable.
Homebrew installation on macOS
If you are on macOS and using Homebrew package manager, you can install the skynx CLI with Homebrew.
-
Run the installation command:
brew install skynx-io/tap/skynx-cli
-
Test to ensure the version you installed is up-to-date:
skynxctl version show
Windows Installation
Windows binary installation with curl
-
Open the Command Prompt as Administrator and create a folder for skynx.
mkdir 'C:\Program Files\skynx'
-
Download the latest release into the skynx folder.
curl -LO "https://dl.skynx.com/binaries/stable/latest/windows/amd64/skynxctl.exe"
-
Validate the binary (optional).
Download the skynxctl.exe checksum file:
curl -LO "https://dl.skynx.com/binaries/stable/latest/windows/amd64/skynxctl.exe_checksum.sha256"
Validate the skynxctl.exe binary against the checksum file:
-
Using Command Prompt to manually compare CertUtil's output to the checksum file downloaded:
CertUtil -hashfile skynxctl.exe SHA256
type skynxctl.exe_checksum.sha256
-
Using PowerShell to automate the verification using the -eq operator to get a True or False result:
$($(CertUtil -hashfile skynxctl.exe SHA256)[1] -replace " ", "") -eq $(type skynxctl.exe_checksum.sha256).split(" ")[0]
-
Append or prepend the folder C:\Program Files\skynx to your PATH environment variable.
-
Test to ensure the version of skynxctl is the same as downloaded.
skynxctl version show
Artifacts Verification
Binaries
All artifacts are checksummed and the checksum file is signed with cosign.
-
Download the files you want and the checksums.txt, checksum.txt.pem and checksums.txt.sig files from the Releases page:
-
Verify the signature:
cosign verify-blob \
--cert checksums.txt.pem \
--signature checksums.txt.sig \
checksums.txt
-
If the signature is valid, you can then verify the SHA256 sums match the downloaded binary:
sha256sum --ignore-missing -c checksums.txt
Docker Images
Our Docker images are signed with cosign.
Verify the signatures:
COSIGN_EXPERIMENTAL=1 cosign verify skynx/skynxctl
Configuration
The first time you run skynxctl, you will be assisted to generate your skynxctl.yml. This config file will be located by default at the $HOME/.skynx directory.
See the skynxctl configuration reference to find all the configuration options.
Usage
See usage with:
skynxctl help
Running with Docker
You can also run skynxctl as a Docker container. See the example below.
Registries:
skynx/skynxctl
ghcr.io/skynx-io/skynxctl
Example usage:
docker run --rm -ti -v $HOME/.skynx:/root/.skynx:ro skynx/skynxctl help
Have questions, need support and or just want to talk?
Get in touch with the skynx community!

Code of Conduct
Participation in the skynx community is governed by the Contributor Covenant Code of Conduct. Please make sure to read and observe this document.
Please make sure to read and observe this document. By participating, you are expected to uphold this code.
License
The skynx open source projects are licensed under the Apache 2.0 License.
