APHIDS CLI Prerequisites¶
Before installing the APHIDS CLI, ensure your system meets the following requirements.
System Requirements¶
Operating System¶
APHIDS CLI is supported on the following operating systems:
| OS | Minimum Version | Recommended |
|---|---|---|
| Linux | Ubuntu 20.04, Debian 10, CentOS 8 | Ubuntu 22.04 LTS |
| macOS | macOS 11 (Big Sur) | macOS 13 (Ventura) or later |
| Windows | Windows 10 with WSL2 | Windows 11 with WSL2 |
Windows Users
APHIDS CLI requires WSL2 (Windows Subsystem for Linux 2) on Windows. Native Windows support is not available. Follow our WSL2 setup guide below.
Hardware Requirements¶
| Component | Minimum | Recommended |
|---|---|---|
| CPU | 2 cores | 4+ cores |
| RAM | 4 GB | 8 GB or more |
| Disk Space | 10 GB free | 20 GB+ free |
| Network | Broadband internet | High-speed connection |
Performance Considerations
- More CPU cores = faster parallel scanning
- More RAM = ability to run more modules simultaneously
- SSD storage significantly improves Docker performance
Required Software¶
1. Docker¶
Docker is required to run APHIDS CLI. The CLI uses Docker containers to provide an isolated, reproducible testing environment.
Supported Docker Versions¶
- Minimum: Docker Engine 20.10
- Recommended: Docker Engine 24.0 or later
Why Docker?¶
- Isolation: Scans run in isolated containers, protecting your host system
- Reproducibility: Same environment every time, regardless of host OS
- Portability: Run anywhere Docker runs
- Security: Contained execution limits potential damage
- Dependency Management: All tools pre-installed and configured
Docker Alternatives (Coming Soon)
We're working on support for:
- Podman: Drop-in Docker replacement
- Containerd: Lightweight container runtime
- Native execution: Run without containers (advanced users)
Stay tuned for updates!
2. Python¶
Python is required to run the APHIDS CLI interface.
Supported Python Versions¶
- Minimum: Python 3.8
- Recommended: Python 3.10 or later
Check Your Python Version¶
Expected output:
Python 2 Not Supported
APHIDS CLI requires Python 3.8 or later. Python 2 is not supported and will not work.
3. pip (Python Package Manager)¶
pip is used to install the APHIDS CLI package.
Check pip Installation¶
Expected output:
Install pip (if missing)¶
4. Git (Optional but Recommended)¶
Git is used for installing APHIDS CLI from the repository and for updates.
Check Git Installation¶
Install Git¶
Platform-Specific Setup¶
Linux Setup¶
Most Linux distributions come ready for APHIDS CLI with minimal setup.
Ubuntu/Debian¶
# Update package lists
sudo apt update
# Install prerequisites
sudo apt install -y \
python3 \
python3-pip \
git \
curl
# Verify installations
python3 --version
pip3 --version
git --version
CentOS/RHEL¶
# Update package lists
sudo yum update
# Install prerequisites
sudo yum install -y \
python3 \
python3-pip \
git \
curl
# Verify installations
python3 --version
pip3 --version
git --version
macOS Setup¶
macOS requires some additional setup for optimal performance.
Using Homebrew (Recommended)¶
# Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install prerequisites
brew install python3 git
# Verify installations
python3 --version
pip3 --version
git --version
Xcode Command Line Tools¶
Some dependencies require Xcode Command Line Tools:
Windows (WSL2) Setup¶
Windows users must use WSL2 to run APHIDS CLI.
Step 1: Enable WSL2¶
Open PowerShell as Administrator and run:
Step 2: Install Ubuntu¶
After restart, install Ubuntu from the Microsoft Store:
- Open Microsoft Store
- Search for "Ubuntu 22.04 LTS"
- Click "Install"
- Launch Ubuntu and complete initial setup
Step 3: Install Prerequisites in WSL2¶
Open your Ubuntu terminal and run:
# Update package lists
sudo apt update
# Install prerequisites
sudo apt install -y \
python3 \
python3-pip \
git \
curl
# Verify installations
python3 --version
pip3 --version
git --version
WSL2 Performance
For best performance:
- Store your projects in the Linux filesystem (
/home/username/) - Don't store projects in
/mnt/c/(Windows filesystem) - Allocate sufficient resources to WSL2 in
.wslconfig
Network Requirements¶
Firewall Configuration¶
APHIDS CLI needs to communicate with:
- Docker Hub: To pull container images
- Hive API: For online mode (if using Hive platform)
- Target Systems: The systems you're testing
Required Outbound Connections¶
| Destination | Port | Protocol | Purpose |
|---|---|---|---|
ghcr.io |
443 | HTTPS | Pull APHIDS container |
api.hive.darksidesecurity.io |
443 | HTTPS | Hive API (online mode) |
| Target systems | Various | Various | Security testing |
Proxy Configuration¶
If you're behind a corporate proxy, configure Docker and pip:
Docker Proxy¶
Create or edit /etc/systemd/system/docker.service.d/http-proxy.conf:
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:8080"
Environment="HTTPS_PROXY=http://proxy.example.com:8080"
Environment="NO_PROXY=localhost,127.0.0.1"
Reload and restart Docker:
pip Proxy¶
Or set environment variables:
Verification Checklist¶
Before proceeding to installation, verify all prerequisites:
- Operating system is supported
- System meets minimum hardware requirements
- Docker is installed (or ready to install)
- Python 3.8+ is installed
- pip is installed
- Git is installed (optional)
- Network connectivity is configured
- Sufficient disk space is available
Troubleshooting Prerequisites¶
Docker Not Found¶
See: Installing Docker
Python Version Too Old¶
Permission Denied Errors¶
If you get permission errors with Docker:
# Add your user to the docker group
sudo usermod -aG docker $USER
# Log out and log back in for changes to take effect
Disk Space Issues¶
Check available disk space:
Clean up Docker to free space:
# Remove unused images
docker image prune -a
# Remove unused containers
docker container prune
# Remove unused volumes
docker volume prune
Next Steps¶
Once all prerequisites are met, proceed to:
- Installing Docker - Set up Docker on your system
- Installing APHIDS CLI - Install the CLI tool
- Pulling the Container - Download the APHIDS container
- Verification - Verify your installation
Prerequisites met?