99e1fe5c7488fc0d200e7934adc7ddd5c6e5763a
ENHANCEMENT: Expanded from 11 to 20 bug/security checks for comprehensive monitoring NEW CHECKS ADDED: CHECK 12: Dangerous rm commands (CRITICAL) - Detects rm -rf with potentially empty variables - Prevents catastrophic data loss scenarios - Found: 6 dangerous rm -rf instances CHECK 13: Unquoted variable expansions (HIGH) - Detects unquoted $var in rm/cp/mv/chmod/chown - Prevents word splitting and globbing issues - Critical for file operation safety CHECK 14: Command injection via eval (CRITICAL) - Detects eval command usage - Prevents arbitrary code execution risks - Found: 1 eval instance in malware-scanner.sh CHECK 15: Temp file security (MEDIUM) - Detects predictable /tmp file names - Recommends mktemp for security - Prevents race condition attacks CHECK 16: TODO/FIXME/HACK markers (LOW) - Tracks technical debt markers - Helps identify incomplete features - Found: 2 instances CHECK 17: Duplicate function definitions (MEDIUM) - Detects same function in multiple files - Prevents unpredictable behavior - Found: 27 duplicates (mostly 'main' functions) CHECK 18: Missing input validation (HIGH) - Detects functions using $1/$2 without validation - Critical security and reliability issue - Found: 10 unvalidated parameter usages CHECK 19: Long functions (MEDIUM) - Detects functions >100 lines - Maintainability and testability concern - Helps identify refactoring candidates CHECK 20: ShellCheck integration (VARIES) - Integrates shellcheck if available - Finds common bash pitfalls - Optional but highly recommended IMPACT: ✓ 20 bug/security checks (was 11) ✓ 5 performance checks (unchanged) ✓ Found 52 new issues on first run: - 7 CRITICAL (dangerous rm, eval) - 10 HIGH (missing validation) - 33 MEDIUM (duplicates) - 2 LOW (tech debt) BENEFITS: + Comprehensive security scanning + Catches dangerous patterns before production + Tracks code quality metrics + Optional ShellCheck integration + Better technical debt visibility The QA script is now a powerful development tool that can catch security vulnerabilities, code quality issues, and maintainability problems automatically.
⚡ Linux Server Management Toolkit
Comprehensive multi-panel server management suite supporting cPanel, InterWorx, Plesk, and standalone Apache with modular architecture and intelligent security features.
📦 Directory Structure
server-toolkit/
├── launcher.sh # Main menu system
├── README.md # This file
│
├── modules/ # Modular scripts organized by category
│ │
│ ├── diagnostics/ # 🔍 System Diagnostics
│ │ ├── system-health-check.sh # Comprehensive health analysis
│ │ └── loadwatch-analyzer.sh # System health from loadwatch monitoring logs
│ │
│ ├── security/ # 🛡️ Security & Threat Analysis
│ │ ├── bot-analyzer.sh # Full bot/threat analysis
│ │ ├── live-attack-monitor.sh # Real-time attack monitoring dashboard
│ │ ├── ssh-attack-monitor.sh # SSH brute force detection
│ │ ├── web-traffic-monitor.sh # Web traffic monitoring
│ │ ├── firewall-activity-monitor.sh # CSF/iptables monitoring
│ │ ├── enable-cphulk.sh # cPHulk enablement with CSF whitelist import
│ │ ├── ip-reputation-manager.sh # Centralized IP reputation tracking
│ │ └── tail-*.sh # Various log monitoring scripts
│ │
│ ├── backup/ # 💾 Backup & Recovery (Acronis Cyber Protect)
│ │ ├── acronis-backup-manager.sh # Main backup management menu
│ │ ├── acronis-install.sh # Install Acronis agent
│ │ ├── acronis-update.sh # Update Acronis agent
│ │ ├── acronis-uninstall.sh # Uninstall Acronis agent
│ │ ├── acronis-register.sh # Register agent with cloud
│ │ ├── acronis-configure.sh # Configure agent settings
│ │ ├── acronis-agent-status.sh # Comprehensive agent status check
│ │ ├── acronis-trigger-backup.sh # Trigger manual backups with optimizations
│ │ ├── acronis-backup-status.sh # Check backup job status
│ │ ├── acronis-list-backups.sh # List all backups
│ │ ├── acronis-plan-manager.sh # Manage protection plans
│ │ ├── acronis-schedule-viewer.sh # View backup schedules
│ │ ├── acronis-restore.sh # Restore from backup
│ │ ├── acronis-logs.sh # View Acronis logs
│ │ └── acronis-troubleshoot.sh # Troubleshoot common issues
│ │
│ ├── website/ # 🌐 Website Diagnostics & Troubleshooting
│ │ ├── website-error-analyzer.sh # Comprehensive website error analysis
│ │ └── 500-error-tracker.sh # Track and analyze 500 errors
│ │
│ ├── diagnostics/ # 🔍 System Diagnostics & Log Analysis
│ │ ├── system-health-check.sh # Comprehensive health analysis
│ │ └── loadwatch-analyzer.sh # System health monitoring from loadwatch logs
│ │
│ ├── performance/ # 📊 Performance Analysis
│ │ ├── hardware-health-check.sh # Hardware diagnostics
│ │ ├── mysql-query-analyzer.sh # MySQL performance analysis
│ │ ├── network-bandwidth-analyzer.sh # Network analysis
│ │ ├── php-optimizer.sh # PHP Configuration Optimizer (NEW!)
│ │ └── (other performance modules)
│ │
│ └── maintenance/ # 🧹 System Maintenance
│ └── cleanup-toolkit-data.sh # Clean temporary toolkit data
│
├── lib/ # Shared libraries
│ ├── common-functions.sh # Reusable functions
│ ├── system-detect.sh # System type detection
│ ├── user-manager.sh # User account management
│ ├── mysql-analyzer.sh # MySQL utilities
│ ├── reference-db.sh # Cross-module intelligence sharing
│ ├── php-detector.sh # PHP configuration detection (NEW!)
│ ├── php-analyzer.sh # PHP performance analysis engine (NEW!)
│ └── php-config-manager.sh # PHP config backup/restore/modification (NEW!)
│
├── config/ # Configuration files
│ ├── settings.conf # Main configuration
│ ├── whitelist-ips.txt # IP whitelist
│ └── whitelist-user-agents.txt # User-Agent whitelist
│
└── tools/ # Utility scripts
├── diagnostic-report.sh # Generate system reports
└── test-*.sh # Testing utilities
🚀 Quick Start
Installation & Running
One command - automatic cleanup:
curl -sL https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit/archive/main.tar.gz | tar xz && source linux-server-management-toolkit/run.sh
When exiting (option 0), answer "yes" and cleanup happens automatically - no extra steps.
Or if already downloaded:
source /root/server-toolkit/run.sh
✨ Key Features
🛡️ Security & Threat Analysis
- 3-Mode Security Menu: Analysis / Actions / Live Monitoring
- Live Attack Monitor: Real-time SOC dashboard with threat classification
- Intelligent cPHulk Setup: Auto-imports CSF whitelists from all sources
- IP Reputation Tracking: Centralized cross-module IP intelligence
- Multi-Source Monitoring: SSH, Web, Firewall, cPHulk integration
💾 Backup & Recovery (Acronis Cyber Protect)
- Complete Agent Management: Install, update, uninstall, register
- Comprehensive Status Monitoring: Agent health, registration, cloud connectivity
- Manual Backup Triggering: CLI-managed plans with performance optimizations
- Backup Type Selection: Full, Incremental, Differential backups
- Plan Management: View, enable/disable, delete protection plans
- Restore Operations: Full restore capabilities from backups
- Troubleshooting Tools: Log viewing and automated diagnostics
🌐 Website Diagnostics
- Error Analysis: Comprehensive website error detection and troubleshooting
- 500 Error Tracking: Detailed analysis of application errors
- Log Integration: Apache, PHP-FPM, cPanel error log analysis
- Smart Recommendations: Context-aware suggestions for fixing issues
🔍 System Diagnostics & Performance Monitoring
- Comprehensive Health Checks: Hardware, services, security posture
- Loadwatch Health Analyzer: Historical system health analysis from monitoring logs
- Time-range analysis: 1h, 6h, 24h, 7d, 30d
- Memory pressure detection and swap usage trending
- CPU saturation analysis (idle, iowait, steal time)
- Process issue detection (zombies, high CPU/MEM consumers)
- MySQL performance monitoring
- Actionable recommendations based on findings
- PHP Configuration Optimizer (NEW!): Per-domain PHP optimization
- Analyzes PHP-FPM pool configurations across all domains
- Detects max_children issues from 7-day error log history
- OPcache hit rate analysis and tuning recommendations
- Memory limit optimization based on actual usage
- Auto-backup before changes with rollback capability
- Graceful PHP-FPM reload for zero downtime
- Supports cPanel, InterWorx, Plesk, standalone Apache
- Smart Recommendations: Context-aware suggestions based on findings
- Multi-Panel Support: cPanel, InterWorx, Plesk, standalone Apache
📊 Session Intelligence
- Reference Database: Cross-module data sharing (.sysref)
- No Historical Tracking: Session-based intelligence only
- "Download, Run, Fix, Delete": Designed for one-time troubleshooting
🎯 Usage Examples
Security Analysis with Live Monitoring
bash launcher.sh
# Select: Security & Threat Analysis
# Select: Live Monitoring & Alerts
# Select: Live Network Security Monitor
Enable cPHulk with CSF Whitelist
bash launcher.sh
# Select: Security & Threat Analysis
# Select: Security Actions & Fixes
# Select: Authentication Security
# Select: Enable cPHulk Protection
Acronis Backup Management
bash launcher.sh
# Select: Backup & Recovery
# Select: Check Agent Status (view health, registration, connectivity)
# Select: Trigger Manual Backup (with type selection and optimizations)
# Select: Manage Protection Plans
Website Error Analysis
bash launcher.sh
# Select: Website Diagnostics & Troubleshooting
# Select: Website Error Analyzer
# Choose a cPanel user account to analyze
System Health Check
bash launcher.sh
# Select: System Diagnostics
# Select: System Health Check
Loadwatch System Health Analysis
bash launcher.sh
# Select: Performance & Diagnostics
# Select: Loadwatch Health Analyzer
# Choose time range: 1h, 6h, 24h, 7d, or 30d
🔧 Configuration
Edit the configuration file:
nano /root/server-toolkit/config/settings.conf
🔒 Security Considerations
- Run as root: Most modules require root access
- Credentials stored safely: Git credentials in ~/.git-credentials (outside project)
- No sensitive data in repo: .gitignore excludes keys, tokens, credentials
- Test first: Try on non-production environments first
📊 Recent Updates (v2.2)
Multi-Control Panel Support (NEW!)
- ✅ Full cPanel support (primary platform - production ready)
- ✅ InterWorx support (validated on real servers - production ready)
- ✅ Plesk support (validated on real servers - production ready)
- ✅ Standalone Apache support (basic functionality)
- ✅ 38/38 modules refactored for multi-panel architecture (100% complete)
- ✅ Automated validation scripts for InterWorx and Plesk (13 and 15 tests)
- ✅ All critical paths verified on production systems
System Detection & Abstraction
- ✅ Automatic control panel detection (system-detect.sh)
- ✅ Multi-panel user/domain management abstraction (user-manager.sh)
- ✅ Dynamic log discovery for all panel types
- ✅ Panel-specific path handling (docroots, logs, configs)
- ✅ Zero hardcoded paths - all detection-based
Backup & Recovery
- ✅ Complete Acronis Cyber Protect integration (16 management scripts)
- ✅ Agent installation, registration, and update automation
- ✅ Comprehensive status monitoring (health, registration, connectivity)
- ✅ Manual backup triggering with performance optimizations
- ✅ Protection plan management and scheduling
Website Diagnostics
- ✅ Comprehensive website error analyzer (multi-panel)
- ✅ 500 error tracking and troubleshooting (multi-panel)
- ✅ Multi-log integration (Apache, PHP-FPM, all panels)
- ✅ Smart error detection and recommendations
Security Enhancements
- ✅ Bot analyzer with multi-panel log discovery
- ✅ Live attack monitor supporting all control panels
- ✅ Malware scanner with panel-aware docroot detection
- ✅ Centralized IP reputation tracking
- ✅ Real-time threat detection and classification
Core Infrastructure
- ✅ Modular architecture with organized category structure
- ✅ Reference database for cross-module intelligence
- ✅ Comprehensive developer documentation (REFDB_FORMAT.txt)
- ✅ Production validation complete for all major panels
🙏 Credits
Built for comprehensive cPanel/Linux server management with a focus on security and intelligent automation.
Version: 2.1.0 Repository: https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit
Languages
Shell
100%