SERVERDASH

Self-contained "God Mode" server management dashboard. Set up a fresh Linux machine with a single binary. Web-based GUI for system tools, dotfiles, services, and monitoring.

DOWNLOAD FOR LINUX

Requires sudo/root privileges

[ FEATURES ]

SYSTEM INSTALL

One-click package installation with categorized tools. Supports presets (Development/Production) and checks for existing packages. Installs user tools (pnpm, deno, gemini) to your home directory.

NGINX MANAGER

Full CRUD for site configurations. Auto-generate self-signed SSL certs or upload custom ones. Integrated Monaco Editor for config editing with real-time reload.

MYSQL MANAGER

Interactive SQL console with database tree view. Backup databases, analyze slow queries, edit my.cnf with presets. Full service control included.

FILE MANAGER

Browse, edit, upload, download files. Change permissions (chmod/chown). Safety-validated paths for home directories and /var/log.

PHP & FIREWALL

Manage PHP-FPM services, edit php.ini. Full UFW integration for firewall rules with numbered rule management.

SERVICE MANAGER

Complete systemd integration. List, start, stop, restart, enable, disable any service. Real-time status monitoring.

CRON EDITOR

Visual crontab management with quick presets (Hourly, Daily, Weekly). Full schedule control with enable/disable toggle.

SCRIPTS MANAGER

Run custom scripts with parameters. Discovers scripts from ~/.serverdash/scripts/, /opt/serverdash/scripts/, and ./scripts

SYSTEM UPDATES

Check for APT package updates with security highlighting. One-click upgrade with detailed version information.

AUTHENTICATION

System auth via /etc/shadow, OTP mode for zero-config access, or config password override. Session-based with 24-hour expiry.

[ INSTALLATION ]

// 1. Download & Extract

# Download the latest release wget https://data.serverdash.org/serverdash-1b4f707-linux-amd64.tar.gz # Extract the archive tar -xzf serverdash-1b4f707-linux-amd64.tar.gz # Enter the directory cd serverdash-1b4f707-linux-amd64

// 2. Install & Start

# Run the installer (sets up systemd service) sudo ./install.sh # Start the service sudo systemctl start serverdash # Check status sudo systemctl status serverdash

// 3. Access the Dashboard

# Default port is 6432 # Access via: http://your-server-ip:6432 # Generate OTP for login sudo serverdash --otp # Or use custom port sudo serverdash --port 8080 --otp

// Configuration (Optional)

# Edit config.json nano /opt/serverdash/config.json # Available options: { "repo_url": "git@github.com:user/dotfiles.git", "web_password": "optional-override", "port": "6432", "run_as_user": "$SESSION" }

[ FAQ ]

What is the $SESSION token?

+

When run_as_user is set to $SESSION, each logged-in user runs commands as themselves. Bob installs pnpm to Bob's home, Alice installs to Alice's home. This enables multi-user server environments.

Why does it need sudo/root?

+

ServerDash manages system-level services (nginx, mysql, php-fpm, firewall), edits system configs, and installs packages. These operations require root privileges. User-level tools are installed via sudo to the appropriate user's home directory.

Is it safe to expose to the internet?

+

For production use, put it behind a reverse proxy (nginx) with HTTPS and basic auth. Use firewall rules to restrict access. The built-in auth uses secure cookies but wasn't designed for direct internet exposure.

What Linux distros are supported?

+

Debian-based systems (Ubuntu, Debian, Mint) are fully supported. The package management uses APT. systemd is required for service management. Other distros may work with modifications.

Can I customize the package list?

+

Yes! Edit config.json and modify the packages array. Each package has name, description, group, tags, and default flag. Add your own tools or remove unwanted ones.

How do dotfiles work?

+

Set your dotfiles repo URL in config.json. ServerDash will clone it to the user's home directory and run stow to symlink files. Supports both fresh installs and updates (git pull).