3.3 KiB
3.3 KiB
Quick Start Guide
TL;DR - Get Started in 30 Seconds
# 1. Create .env file with your AWS credentials path
cat > .env << EOF
AWS_CONFIG_PATH=$HOME/.aws
PUID=$(id -u)
PGID=$(id -g)
EOF
# 2. Start the container
docker-compose up --build
# or with Podman:
podman-compose up --build
# 3. Open browser to http://localhost:5000
# 4. Select AWS profiles, enter MFA codes, and import!
Container Setup (Recommended)
The easiest way to run SGO is using Docker or Podman. Works on Linux, macOS, and Windows.
Prerequisites
Install either:
Setup Steps
- Create environment configuration:
# Copy the example file
cp .env.example .env
# Edit with your settings
nano .env # or your preferred editor
Or create it manually:
cat > .env << EOF
AWS_CONFIG_PATH=$HOME/.aws
PUID=$(id -u)
PGID=$(id -g)
EOF
- Start the application:
# Docker
docker-compose up --build
# Podman
podman-compose up --build
- Access the application:
Open your browser to http://localhost:5000
Import Data via GUI
- Open your browser to
http://localhost:5000 - You'll see the Import Page with all your AWS profiles
- Select profiles: Check the AWS accounts you want to import
- Enter MFA codes: Paste your MFA/OTP codes for profiles that require authentication
- Click "Start Import": Watch real-time progress as data is fetched in parallel
- Auto-redirect: When complete, you're taken to the Explorer
Parallel Import: All selected profiles are imported simultaneously in separate threads, so total time is the max of any single import, not the sum. This prevents MFA timeout issues.
Explore Your Data
- Search for EC2 instances and Security Groups
- View detailed information
- Inspect security group rules
- Filter and search using regex
- Export data to CSV
Refresh Data
- Click the Refresh Data button to refresh data using cached AWS sessions (valid for 55 minutes)
- Click the Change Profiles button to switch to different AWS accounts
Local Python Setup
If you prefer to run without containers:
1. Install Dependencies
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
2. Start the Application
python app.py
3. Open Browser
Navigate to http://localhost:5000
Stopping the Application
# Stop with Ctrl+C, or:
docker-compose down # Docker
podman-compose down # Podman
# To also remove the data volume:
docker-compose down -v
Important Notes
- ⚠️ LOCAL USE ONLY: Never expose this application to the internet. It has no authentication and provides access to sensitive AWS data.
- Database Persistence: When using containers, the database persists in a Docker volume or
./datadirectory - Session Caching: AWS sessions are cached for 55 minutes, allowing multiple refreshes without re-authentication
- Parallel Import: All selected AWS accounts are imported simultaneously for maximum speed
Next Steps
- Configuration Options - Customize your setup
- AWS Configuration - Set up MFA and AWS profiles
- Usage Guide - Learn how to use SGO features