Skip to main content

Installation

Pentora supports multiple installation methods across macOS, Linux, and Windows platforms.

System Requirements​

Minimum Requirements​

  • CPU: 2 cores
  • RAM: 2 GB
  • Disk: 100 MB for binaries, additional space for workspace
  • OS: macOS 10.15+, Linux (kernel 3.10+), Windows 10+
  • CPU: 4+ cores
  • RAM: 8+ GB
  • Disk: 10 GB+ for workspace and scan results
  • Network: Low-latency connection for optimal scanning

Linux / macOS​

Use the official install script:

curl -sSL https://pentora.io/install.sh | bash

This script will:

  1. Detect your platform and architecture
  2. Download the latest release binary
  3. Install to /usr/local/bin/pentora
  4. Set appropriate permissions

Verify installation:

pentora version

Manual Install Script​

If you prefer to review the script first:

curl -sSL https://pentora.io/install.sh -o install.sh
chmod +x install.sh
./install.sh

Platform-Specific Installation​

macOS​

Homebrew (Coming Soon)​

brew tap pentora/tap
brew install pentora

Download Binary​

# Download latest release
curl -LO https://github.com/pentora-ai/pentora/releases/latest/download/pentora-darwin-amd64.tar.gz

# Extract
tar -xzf pentora-darwin-amd64.tar.gz

# Move to PATH
sudo mv pentora /usr/local/bin/

# Verify
pentora version

DMG Installer​

  1. Download pentora-installer.dmg from releases page
  2. Open the DMG file
  3. Drag Pentora to Applications folder
  4. Run from Terminal or add to PATH

Linux​

Debian / Ubuntu (APT)​

# Add Pentora repository
curl -fsSL https://pentora.io/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/pentora-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/pentora-archive-keyring.gpg] https://apt.pentora.io stable main" | \
sudo tee /etc/apt/sources.list.d/pentora.list

# Install
sudo apt update
sudo apt install pentora

RHEL / CentOS / Fedora (YUM/DNF)​

# Add Pentora repository
sudo tee /etc/yum.repos.d/pentora.repo <<EOF
[pentora]
name=Pentora Repository
baseurl=https://yum.pentora.io/stable
enabled=1
gpgcheck=1
gpgkey=https://pentora.io/gpg.key
EOF

# Install
sudo yum install pentora
# or
sudo dnf install pentora

Arch Linux (AUR)​

yay -S pentora-bin
# or
paru -S pentora-bin

Generic Linux Binary​

# Download
curl -LO https://github.com/pentora-ai/pentora/releases/latest/download/pentora-linux-amd64.tar.gz

# Extract
tar -xzf pentora-linux-amd64.tar.gz

# Install
sudo mv pentora /usr/local/bin/

# Verify
pentora version

Windows​

Installer (MSI)​

  1. Download pentora-installer-x64.msi from releases page
  2. Run the installer
  3. Follow the installation wizard
  4. Pentora will be added to PATH automatically

Chocolatey (Coming Soon)​

choco install pentora

Scoop​

scoop bucket add pentora https://github.com/pentora/scoop-bucket
scoop install pentora

Manual Binary​

# Download latest release
Invoke-WebRequest -Uri https://github.com/pentora-ai/pentora/releases/latest/download/pentora-windows-amd64.zip -OutFile pentora.zip

# Extract
Expand-Archive pentora.zip -DestinationPath C:\Program Files\Pentora

# Add to PATH (run as Administrator)
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\Program Files\Pentora", "Machine")

# Verify
pentora version

Build from Source​

Prerequisites​

  • Go 1.21 or higher
  • Make (optional, for convenience)
  • Git

Clone and Build​

# Clone repository
git clone https://github.com/pentora-ai/pentora.git
cd pentora

# Build
go build -o pentora ./cmd/pentora

# Install
sudo mv pentora /usr/local/bin/

# Verify
pentora version

Build with Make​

# Build for current platform
make build

# Build for all platforms
make build-all

# Build and run tests
make test

# Build packages (DMG, DEB, RPM, etc.)
make pkg

Development Build​

# Build with debug symbols
go build -tags debug -o pentora ./cmd/pentora

# Run tests
make test

# Run linters
make lint

Docker​

Pull Official Image​

docker pull pentora/pentora:latest

Run Container​

# Basic scan
docker run --rm pentora/pentora scan 192.168.1.0/24

# With workspace persistence
docker run --rm -v $(pwd)/workspace:/workspace pentora/pentora scan 192.168.1.0/24

# Interactive mode
docker run -it --rm pentora/pentora

Docker Compose​

Create docker-compose.yml:

version: '3.8'
services:
pentora:
image: pentora/pentora:latest
volumes:
- ./workspace:/workspace
- ./config:/config
environment:
- PENTORA_WORKSPACE_DIR=/workspace
command: ['server', 'start']
ports:
- '8080:8080'

Run:

docker-compose up -d

Verification​

After installation, verify Pentora is working:

# Check version
pentora version

# Run help
pentora --help

# Test with a simple scan (local interface)
pentora scan 127.0.0.1 --ports 22,80,443

Configuration​

Pentora looks for configuration in the following locations (in order):

  1. ./pentora.yaml (current directory)
  2. ~/.config/pentora/config.yaml (Linux/macOS)
  3. %AppData%\Pentora\config.yaml (Windows)
  4. /etc/pentora/config.yaml (system-wide, Linux)

Create a basic config file:

# Create config directory
mkdir -p ~/.config/pentora

# Generate default config
pentora config init > ~/.config/pentora/config.yaml

See the Configuration Guide for detailed options.

Workspace Setup​

Pentora uses a workspace directory to store scan results:

# Default workspace locations:
# Linux: ~/.local/share/pentora or $XDG_DATA_HOME/pentora
# macOS: ~/Library/Application Support/Pentora
# Windows: %AppData%\Pentora

# Initialize workspace
pentora workspace init

# Set custom workspace
export PENTORA_WORKSPACE_DIR=/path/to/workspace
pentora workspace init

Updating Pentora​

Via Package Manager​

# APT
sudo apt update && sudo apt upgrade pentora

# YUM/DNF
sudo yum update pentora

# Homebrew
brew upgrade pentora

Manual Update​

# Download latest release
curl -sSL https://pentora.io/install.sh | bash

# Verify new version
pentora version

Check for Updates​

# Check if newer version is available
pentora version --check-updates

Uninstallation​

Package Manager​

# APT
sudo apt remove pentora

# YUM/DNF
sudo yum remove pentora

# Homebrew
brew uninstall pentora

Manual Removal​

# Remove binary
sudo rm /usr/local/bin/pentora

# Remove configuration
rm -rf ~/.config/pentora

# Remove workspace (optional)
rm -rf ~/.local/share/pentora # Linux
rm -rf ~/Library/Application\ Support/Pentora # macOS

Troubleshooting​

Permission Denied​

If you encounter permission errors:

# Ensure binary is executable
chmod +x /usr/local/bin/pentora

# Or run with sudo for privileged operations
sudo pentora scan 192.168.1.0/24

Command Not Found​

If pentora command is not found after installation:

# Check if binary exists
ls -l /usr/local/bin/pentora

# Add to PATH manually (add to ~/.bashrc or ~/.zshrc)
export PATH=$PATH:/usr/local/bin

# Reload shell
source ~/.bashrc # or ~/.zshrc

Network Scanning Requires Root​

Raw socket operations require elevated privileges:

# Run with sudo
sudo pentora scan 192.168.1.0/24

# Or set capabilities (Linux only)
sudo setcap cap_net_raw,cap_net_admin+eip /usr/local/bin/pentora

Next Steps​