Developer d25e45babc Fix mail-log-analyzer.sh: Critical bugs and best practices
CRITICAL FIXES:
1. Add mktemp temp directory - replaced all hardcoded /tmp/ paths with secure $TEMP_DIR
2. Add cleanup trap (EXIT/INT/TERM) - automatically cleans up temp files on exit/interrupt
3. Replace all /tmp/*.* references - prevents accumulation of temp files
4. Add error handling on critical operations - cp, awk, tail, wc operations now fail-safe
5. Fix division by zero - max_vol now defaults to 1 to prevent arithmetic errors
6. Fix grep regex injection - domain variable now escaped for safe use in patterns

BEST PRACTICES:
7. Quote all $TEMP_DIR variable references - prevents word splitting issues
8. Quote unquoted variables in echo - properly quote $issue in loop
9. Add file existence checks - verify temp files exist before reading
10. Replace inline read with press_enter() - follows toolkit standards

ERROR HANDLING IMPROVEMENTS:
- cp operation: now exits with error message on failure
- awk filtering: now exits with error message on failure
- tail fallback: now exits with error message on failure
- Final log verification: confirms $TEMP_LOG has content before analysis

SECURITY:
- Removed dangerous /tmp/*.* cleanup pattern
- Escaped domain strings in grep patterns to prevent regex injection
- All temporary files now isolated in secure mktemp directory
- Trap handler ensures cleanup even on interrupt

VERIFIED:
 Syntax validation: PASS
 All critical errors fixed
 Properly quoted all variables
 Error handling on file operations
 Cleanup trap configured
 Escape sequences safe
2026-03-20 04:26:54 -04:00
2025-11-03 18:14:51 -05:00

🧪 Linux Server Toolkit - DEV Branch

STATUS: 🚀 Development & Testing Branch (Separate from Production)

This is the dev branch for testing, development, and experimentation. Changes here are isolated from production and can be safely tested before merging to main.


🚀 Quick Start

One command - pulls dev branch with YELLOW ⚠️ BETA banner:

curl -sL https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit/archive/dev.tar.gz | tar xz && source linux-server-management-toolkit/run.sh

When exiting (option 0), answer "yes" and cleanup happens automatically - no extra steps.


📍 Key Differences (Dev vs Production)

Feature Dev Branch Production
Cache .sysref.beta .sysref
Version 2.1.0-BETA 2.1.0
Banner 🟨 Yellow (⚠️) 🔵 Cyan
Git Branch dev main
Purpose Testing & Development Stable/Production

📦 Features

Comprehensive multi-panel server management suite supporting cPanel, InterWorx, Plesk, and standalone Apache with:

  • 🛡️ Security & Monitoring: Live attack monitor, bot blocker, malware scanner, IP reputation
  • 💾 Backup & Recovery: Acronis management, MySQL database restore
  • 🌐 Website Diagnostics: Error analysis, WordPress tools, Cloudflare detection
  • 📧 Email Diagnostics: Mail queue, blacklist checker, SPF/DKIM/DMARC validation
  • 📊 Performance Analysis: MySQL optimization, PHP tuning, hardware health, Varnish cache
  • 🔍 System Diagnostics: Health checks, loadwatch analysis, bandwidth monitoring

📖 Documentation

For detailed documentation, see the main repository: https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit


Version: 2.1.0-BETA Repository: https://git.mull.lol/cschantz/Linux-Server-Management-Toolkit Branch: dev

S
Description
No description provided
Readme MIT 18 MiB
Languages
Shell 100%