Security Tools
Suite of security tools for system hardening, vulnerability scanning, and security monitoring.
Security Management Tool
Overview
The Security Management Tool is a comprehensive system security solution designed to analyze, harden, and monitor system security across different operating systems. It provides advanced security features including vulnerability scanning, system hardening, security auditing, and detailed reporting capabilities.
Features
Security Analysis
- Comprehensive system security assessment
- User account and permission analysis
- Password policy verification
- SSH configuration review
- Firewall rule inspection
- Open port detection
- Package security audit
System Hardening
- Automated security hardening
- Firewall configuration
- SSH security enhancement
- File permission management
- Service optimization
- System update management
- Security policy enforcement
Vulnerability Scanning
- Port scanning and analysis
- File integrity checking
- Package vulnerability assessment
- Security patch verification
- Configuration validation
- Service security review
Security Reporting
- HTML reports with detailed analysis
- JSON format for programmatic analysis
- Security audit reports
- Vulnerability assessment reports
- Compliance reporting
- Historical trend analysis
Installation
- Download the scripts from the Lambda Softworks Customer Portal:
- Log in to your Lambda Softworks Customer Portal account
- Navigate to the Files section
- Download the security-tools package
Prerequisites
- Bash shell
- Basic system utilities
- yq (optional, for YAML configuration)
- nmap (for port scanning)
- lynis (for security auditing)
Installation Steps
Clone the repository:
git clone <repository-url> cd admin-tools
Make the script executable:
chmod +x security.sh
Install dependencies:
- For Linux:
sudo apt-get install nmap lynis # For Debian/Ubuntu sudo yum install nmap lynis # For RHEL/CentOS
- For macOS:
brew install nmap lynis
- For Linux:
Create configuration directory:
mkdir -p ~/.config/security
Usage
Basic Commands
Analyze system security:
./security.sh --analyze
Harden system security:
./security.sh --harden
Scan for vulnerabilities:
./security.sh --scan ports ./security.sh --scan files ./security.sh --scan packages
Generate security report:
./security.sh --report html ./security.sh --report json
Perform security audit:
./security.sh --audit
Command Line Options
--analyze
: Analyze system security--harden
: Harden system security--scan [ports|files|packages]
: Scan for vulnerabilities--report [html|json]
: Generate security report--audit
: Perform security audit--config FILE
: Use custom configuration file--help
: Show help message
Configuration
Configuration File
The tool uses a YAML configuration file located at ~/.config/security/config.yml
. Example configuration:
# Security thresholds security_thresholds: cpu_warning: 80 cpu_critical: 90 memory_warning: 85 memory_critical: 95 disk_warning: 85 disk_critical: 95 # Scanning settings scan_settings: port_scan_interval: 3600 file_check_interval: 86400 package_check_interval: 86400 # Security policies security_policies: ssh: port: 2222 root_login: false password_auth: false firewall: default_policy: drop allowed_ports: [22, 80, 443]
Log Files
- Main log:
~/.local/log/security.log
- Reports:
~/.local/share/security/reports/
- Scans:
~/.local/share/security/scans/
- Policies:
~/.config/security/policies/
Cross-Platform Compatibility
Linux Support
- RHEL/CentOS
- Ubuntu/Debian
- Other Linux distributions with systemd
macOS Support
- macOS 10.15 and later
- Homebrew package management
- Native system monitoring
Examples
Basic Usage
# Analyze system security ./security.sh --analyze # Harden system security ./security.sh --harden # Generate security report ./security.sh --report html
Advanced Usage
# Scan for vulnerabilities ./security.sh --scan ports ./security.sh --scan files ./security.sh --scan packages # Perform security audit ./security.sh --audit # Generate JSON report ./security.sh --report json
Troubleshooting
Common Issues
Permission Errors
- Ensure the script is run with sudo
- Check directory permissions
- Verify user has necessary privileges
Security Issues
- Verify security configurations
- Check firewall rules
- Review security logs
Report Generation Issues
- Check log directory permissions
- Verify HTML template access
- Check disk space
Debug Mode
To enable debug logging:
sudo DEBUG=1 ./security.sh [OPTIONS]