feat: Add comprehensive Plex recovery validation script

- Introduced `validate-plex-recovery.sh` for validating Plex database recovery.
- Implemented checks for service status, database integrity, web interface accessibility, API functionality, and recent logs.
- Added detailed recovery summary and next steps for users.

fix: Improve Debian patching script for compatibility

- Enhanced `debian-patches.sh` to securely download and execute bootstrap scripts.
- Updated package mapping logic and ensured proper permissions for patched files.

fix: Update Docker test scripts for better permission handling

- Modified `run-docker-tests.sh` to set appropriate permissions on logs directory.
- Ensured log files have correct permissions after test runs.

fix: Enhance setup scripts for secure installations

- Updated `setup.sh` to securely download and execute installation scripts for zoxide and nvm.
- Improved error handling for failed downloads.

fix: Refine startup script for log directory permissions

- Adjusted `startup.sh` to set proper permissions for log directories and files.

chore: Revamp update-containers.sh for better error handling and logging

- Rewrote `update-containers.sh` to include detailed logging and error handling.
- Added validation for Docker image names and improved overall script robustness.
This commit is contained in:
Peter Wood
2025-06-05 07:22:28 -04:00
parent 8b514ac0b2
commit 0123fc6007
25 changed files with 4407 additions and 608 deletions

View File

@@ -6,6 +6,7 @@ This repository contains various shell scripts for managing media-related tasks
- **[Backup Scripts](#backup-scripts)** - Enterprise-grade backup solutions
- **[Management Scripts](#management-scripts)** - System and service management
- **[Security](#security)** - Comprehensive security framework and standards
- **[AI Integration](#ai-integration)** - Ollama and Fabric setup for AI-assisted development
- **[Tab Completion](#tab-completion)** - Intelligent command-line completion
- **[Documentation](#comprehensive-documentation)** - Complete guides and references
@@ -29,6 +30,48 @@ This repository contains various shell scripts for managing media-related tasks
- **`plex.sh`**: Script to manage the Plex Media Server (start, stop, restart, status).
- **`folder-metrics.sh`**: Script to calculate disk usage and file count for a directory and its subdirectories.
## Security
This repository implements comprehensive security standards and practices for all shell scripts.
### Security Framework
- **[Security Review Summary](./SECURITY-REVIEW-SUMMARY.md)**: Comprehensive security assessment results and risk analysis
- **[Security Checklist](./SECURITY-CHECKLIST.md)**: Complete security validation checklist for development
- **[Security Remediation Plan](./SECURITY-REMEDIATION-PLAN.md)**: Prioritized security improvement roadmap
- **[Security Implementation Report](./SECURITY-IMPLEMENTATION-REPORT.md)**: Detailed report of completed security enhancements
### Security Standards
**✅ Implemented Security Controls:**
- All variables properly quoted to prevent injection attacks
- No direct remote code execution (curl | bash patterns eliminated)
- Appropriate file permissions (no 777 usage)
- Comprehensive input validation for user-provided data
- Secure temporary file handling with proper cleanup
- Robust error handling and logging
**Security Rating:** A- (Excellent - Industry standard security practices)
### Key Security Features
- **Command Injection Protection**: All variables properly quoted in command contexts
- **Remote Code Safety**: Secure download and validation before script execution
- **Privilege Management**: Minimal privilege usage with appropriate permissions
- **Input Validation**: Comprehensive validation of paths, image names, and user inputs
- **Error Handling**: Secure error handling with proper cleanup procedures
### Security Testing
All scripts undergo comprehensive security validation:
- Syntax validation with `bash -n`
- Variable quoting verification
- Privilege requirement analysis
- Input validation testing
- Security pattern compliance checking
For security-related changes, refer to the security documentation and follow the established security checklist.
## AI Integration
This repository includes a complete AI development environment with Ollama and Fabric integration for AI-assisted development tasks.