Installation Guide
System Requirements
Minimum Requirements
- Python: 3.8 or higher
- Operating System: Windows 10+, macOS 10.15+, Linux (modern distributions)
- Memory: 2GB RAM minimum, 4GB recommended for large scans
- Network: Internet connection for cloud API access
Optional Requirements
- Terraform: For validation and import operations
- Cloud CLIs: AWS CLI, Azure CLI, or gcloud for authentication
Installation Methods
pip (Recommended)
The simplest way to install Terraback:
# Install from PyPI
pip install terraback
# Verify installation
terraback scan auth-check
pip with Virtual Environment
For isolated installation:
# Create virtual environment
python -m venv terraback-env
# Activate virtual environment
# On Windows:
terraback-env\Scripts\activate
# On macOS/Linux:
source terraback-env/bin/activate
# Install Terraback
pip install terraback
# Verify
terraback scan auth-check
Standalone Binaries
Download pre-built binaries for your platform — no Python required:
Linux:
curl -L -o terraback https://download.terraback.io/releases/latest/terraback-linux
chmod +x terraback
sudo mv terraback /usr/local/bin/
terraback --help
macOS:
curl -L -o terraback https://download.terraback.io/releases/latest/terraback-macos
chmod +x terraback
sudo mv terraback /usr/local/bin/
terraback --help
Windows:
Download terraback-windows.exe and add it to your PATH.
# Or via PowerShell
Invoke-WebRequest -Uri "https://download.terraback.io/releases/latest/terraback-windows.exe" -OutFile "terraback.exe"
.\terraback.exe --version
Cloud Provider Setup
AWS
Terraback uses standard AWS credential chain:
# Option 1: AWS CLI configuration
aws configure
# Option 2: Environment variables
export AWS_ACCESS_KEY_ID="your-access-key"
export AWS_SECRET_ACCESS_KEY="your-secret-key"
export AWS_DEFAULT_REGION="us-east-1"
# Option 3: AWS profile
aws configure --profile myprofile
terraback scan all aws --profile myprofile -r us-east-1 -o ./output
Required Permissions: ReadOnlyAccess policy or equivalent read permissions for services you want to scan.
Azure
# Option 1: Azure CLI login
az login
# Option 2: Service principal
export AZURE_CLIENT_ID="your-client-id"
export AZURE_CLIENT_SECRET="your-client-secret"
export AZURE_TENANT_ID="your-tenant-id"
export AZURE_SUBSCRIPTION_ID="your-subscription-id"
Required Permissions: Reader role on the subscription or resource group.
GCP
# Option 1: gcloud authentication
gcloud auth application-default login
# Option 2: Service account
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
Required Permissions: Viewer role on the project.
Verifying Installation
Check Authentication
# Check all providers
terraback scan auth-check
Test Scan
# Quick test with S3 (usually has resources)
terraback aws s3 scan --region us-east-1 --output-dir ./test-output
Upgrading
# Upgrade to latest version
pip install --upgrade terraback
Uninstalling
pip uninstall terraback
Troubleshooting Installation
Python Version Error
Error: Python 3.8 or higher required
Solution: Install Python 3.8+ from python.org or use pyenv.
Permission Error (Linux/macOS)
Error: Permission denied
Solution: Use a virtual environment or pip install --user terraback.
AWS Credentials Not Found
Error: Unable to locate credentials
Solution: Run aws configure or set environment variables.
Next Steps
- Getting Started: Run your first scan
- CLI Reference: Complete command documentation