N-Docs LogoN-Docs

Essential Tools & Utilities

Essential third-party tools and utilities for enhanced Proxmox VE management and automation

Essential Tools & Utilities

Enhance your Proxmox VE experience with these essential third-party tools and utilities that provide automation, optimization, and simplified management capabilities.

Proxmox Helper Scripts (tteck)

The most popular and comprehensive collection of automated installation scripts for Proxmox VE, maintained by the community.

Overview

The Proxmox Helper Scripts (formerly Proxmox VE Helper Scripts) by tteck is an invaluable collection that automates the installation of various applications and services in LXC containers and VMs.

Installation

# Proxmox VE Post Install Script (run in Proxmox shell)
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/misc/post-pve-install.sh)"

Features:

  • Corrects Proxmox VE repository sources
  • Disables subscription nag dialog
  • Updates system packages
  • Installs useful utilities
  • Optimizes system settings
# Example: Home Assistant installation
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/ct/homeassistant.sh)"

# Example: Pi-hole installation
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/ct/pihole.sh)"

# Example: Docker installation
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/ct/docker.sh)"

Website: helper-scripts.com GitHub: github.com/tteck/Proxmox

Browse available scripts and copy installation commands directly from the website.

Available Applications

Home Automation
Media Servers
Network Services
Development
Monitoring
File Management

Key Features

  • One-click installations: Simple script execution
  • Optimized containers: Pre-configured for Proxmox
  • Regular updates: Community-maintained and updated
  • Resource efficient: Minimal resource usage
  • Easy management: Built-in update and management features

ProxMenu - Enhanced Management Tool

ProxMenu provides a text-based menu system that simplifies common Proxmox management tasks through an intuitive interface.

GitHub Repository: MacRimi/ProxMenux

Installation

# Install ProxMenu
wget https://raw.githubusercontent.com/extremeshok/xshok-proxmox/master/install-post.sh
bash install-post.sh

# Alternative direct installation
curl -sSL https://raw.githubusercontent.com/extremeshok/xshok-proxmox/master/install-post.sh | bash

Features

  • System Information: Hardware and software details
  • Package Management: Update and upgrade system packages
  • Service Management: Start, stop, and restart services
  • Log Viewing: Easy access to system logs
  • Network Configuration: Network interface management
  • Storage Management: Disk and storage configuration
  • Firewall Configuration: Simplified firewall setup
  • SSH Hardening: Secure SSH configuration
  • User Management: Create and manage users
  • SSL Certificate Management: Certificate installation and renewal
  • Security Auditing: System security checks
  • Performance Tuning: System optimization settings
  • Memory Management: RAM and swap optimization
  • CPU Configuration: CPU governor and scaling settings
  • I/O Optimization: Disk I/O scheduler configuration
  • Network Tuning: Network performance optimization

Usage

# Launch ProxMenu
proxmenu

# Or if installed globally
/usr/local/bin/proxmenu

PECU - Proxmox Enhanced Configuration Utility

PECU (Proxmox Enhanced Configuration Utility) by Danilop95 provides additional configuration options and automation capabilities.

GitHub Repository: Danilop95/Proxmox-Enhanced-Configuration-Utility

Installation

# Clone the repository
git clone https://github.com/Danilop95/Proxmox-Enhanced-Configuration-Utility.git
cd Proxmox-Enhanced-Configuration-Utility

# Make executable
chmod +x proxmox-config.sh

# Run the utility
./proxmox-config.sh

Features

Post-Installation Setup
Performance Tuning
Security Enhancements
Backup Automation

Configuration Options

# Example configuration options
./proxmox-config.sh --optimize-cpu
./proxmox-config.sh --tune-memory
./proxmox-config.sh --configure-storage
./proxmox-config.sh --network-optimization

Available Optimizations:

  • CPU frequency scaling
  • Memory swappiness tuning
  • Disk I/O scheduler selection
  • Network buffer optimization
  • Kernel parameter tuning
# Security configuration
./proxmox-config.sh --harden-ssh
./proxmox-config.sh --configure-firewall
./proxmox-config.sh --setup-fail2ban
./proxmox-config.sh --ssl-certificates

Security Features:

  • SSH key-only authentication
  • Firewall rule automation
  • Intrusion detection setup
  • SSL/TLS certificate management
  • User privilege management
# Monitoring configuration
./proxmox-config.sh --setup-monitoring
./proxmox-config.sh --configure-alerts
./proxmox-config.sh --install-grafana

Monitoring Components:

  • System metrics collection
  • Performance monitoring
  • Alert configuration
  • Dashboard setup
  • Log aggregation

Additional Useful Tools

pve-zsync - ZFS Replication

Built-in tool for ZFS-based replication between Proxmox nodes, also configurable via web interface.

# Install pve-zsync (usually pre-installed)
apt install pve-zsync

# Configure replication
pve-zsync create --source 100 --dest 192.168.1.201:101 --interval 15

# List replication jobs
pve-zsync list

# Manual sync
pve-zsync sync --source 100 --dest 192.168.1.201:101

Web GUI Access: Datacenter → Replication → Add

Proxmox Backup Server Integration

# Add PBS storage
pvesm add pbs backup-pbs \
  --server 192.168.1.250 \
  --datastore backup \
  --username admin@pam \
  --password secret \
  --fingerprint <fingerprint>

# Test PBS connection
pvesm status backup-pbs

Web GUI Access: Datacenter → Storage → Add → Proxmox Backup Server

Monitoring and Metrics Tools

# Install Prometheus node exporter
apt install prometheus-node-exporter

# Configure Proxmox metrics export
# Add to /etc/pve/status.cfg
prometheus:
    server 192.168.1.100
    port 9090

Web GUI Access: Datacenter → Metric Server → Add

# Install InfluxDB
apt install influxdb

# Configure Proxmox InfluxDB integration
# Add to /etc/pve/status.cfg
influxdb:
    server 192.168.1.100
    port 8086
    protocol https
# Install Grafana
apt install grafana

# Import Proxmox dashboard
# Dashboard ID: 10347 (Proxmox VE Stats)
# Dashboard ID: 10048 (Proxmox Summary)

Popular Grafana Dashboards:

  • Proxmox VE Stats (ID: 10347)
  • Proxmox Summary (ID: 10048)
  • Node Exporter Full (ID: 1860)

Automation Scripts

System Maintenance Script

#!/bin/bash
# proxmox-maintenance.sh

LOG_FILE="/var/log/proxmox-maintenance.log"
DATE=$(date '+%Y-%m-%d %H:%M:%S')

log_message() {
    echo "$DATE - $1" >> $LOG_FILE
}

# Update system packages
log_message "Starting system maintenance"
apt update && apt upgrade -y

# Clean up old kernels
apt autoremove --purge -y

# Check storage usage
pvesm status >> $LOG_FILE

# Verify cluster health (if clustered)
if command -v pvecm &> /dev/null; then
    pvecm status >> $LOG_FILE
fi

# Check VM/Container status
qm list >> $LOG_FILE
pct list >> $LOG_FILE

log_message "Maintenance completed"

Backup Verification Script

#!/bin/bash
# backup-verify.sh

BACKUP_DIR="/var/lib/vz/dump"
LOG_FILE="/var/log/backup-verification.log"

# Check recent backups
find $BACKUP_DIR -name "*.vma*" -mtime -1 | while read backup; do
    echo "Verifying: $backup" >> $LOG_FILE
    
    # Test backup integrity
    if qmrestore "$backup" 999 --dryrun &>/dev/null; then
        echo "✓ Backup valid: $backup" >> $LOG_FILE
    else
        echo "✗ Backup corrupted: $backup" >> $LOG_FILE
        # Send alert
        echo "Corrupted backup detected: $backup" | mail -s "Backup Alert" [email protected]
    fi
done

Tool Comparison and Selection

When to Use Each Tool

tteck Helper Scripts
ProxMenu
PECU

Installation Priority

  1. First Priority: tteck Post-Install Script (essential system setup)
  2. Second Priority: ProxMenu (ongoing management)
  3. Third Priority: PECU (advanced configuration)
  4. Fourth Priority: Monitoring tools (operational visibility)

Security Considerations

Always review scripts before execution and ensure they come from trusted sources. Consider running in test environments first.

Best Practices

  • Source Verification: Only use scripts from official repositories
  • Code Review: Examine scripts before execution when possible
  • Test Environment: Test tools in non-production environments first
  • Backup First: Create backups before running system modification tools
  • Regular Updates: Keep tools updated to latest versions
  • Access Control: Limit tool access to authorized administrators

Security Checklist

# Verify script authenticity
wget -O script.sh https://example.com/script.sh
sha256sum script.sh  # Compare with published hash

# Review script content
less script.sh

# Run with limited privileges when possible
sudo -u limited-user ./script.sh

# Monitor system changes
journalctl -f &
./script.sh

Troubleshooting Common Issues

Tool Installation Problems

# Check internet connectivity
ping -c 4 8.8.8.8

# Test HTTPS access
curl -I https://github.com

# Check DNS resolution
nslookup github.com

# Verify proxy settings (if applicable)
echo $http_proxy
echo $https_proxy
# Check current user permissions
whoami
id

# Verify sudo access
sudo -l

# Fix script permissions
chmod +x script.sh

# Check file ownership
ls -la script.sh
# Update package lists
apt update

# Check for broken packages
apt --fix-broken install

# Resolve dependency issues
apt autoremove
apt autoclean

# Check available disk space
df -h

Performance Impact

Monitor system resources when running tools:

# Monitor CPU and memory usage
htop

# Check I/O usage
iotop

# Monitor network usage
nethogs

# Check system load
uptime

Conclusion

These essential tools significantly enhance the Proxmox VE experience by providing:

  • Automation: Reduced manual configuration effort
  • Optimization: Improved system performance
  • Security: Enhanced security posture
  • Monitoring: Better operational visibility
  • Simplification: User-friendly management interfaces

Regular use of these tools, combined with proper maintenance practices, ensures optimal Proxmox VE performance and reliability.