Documentation

Everything you need to protect your Laravel applications with Sentinel Shield.

1 Quick Start

Get Sentinel Shield running in under 5 minutes.

Install the Agent

composer require sentinelshield/agent

Publish Configuration

php artisan vendor:publish --tag=sentinel-shield-config

Set Your API Key

Add your Sentinel Shield API key to your .env file:

SENTINEL_SHIELD_API_KEY=your-api-key-here
SENTINEL_SHIELD_DASHBOARD_URL=https://sentinelshield.io

Create Your Baseline

Generate a hash baseline of all your application files:

php artisan sentinel:baseline

Run Your First Scan

php artisan sentinel:scan

That's it! Your scan results will appear in your dashboard.

2 Detection Engine

Sentinel Shield includes 5 specialized security detectors that work together to identify threats.

File Integrity Monitor

SHA-256 hash comparison against your baseline. Detects any unauthorized file modifications.

Code Pattern Detector

25+ regex patterns for eval(), base64_decode(), gzinflate(), webshells, and obfuscated malware.

New File Detector

Flags files not present in the baseline, especially in public/ and storage/ directories.

.htaccess Auditor

Monitors .htaccess files for malicious redirects, rewrite rules, and PHP handler changes.

Crypto Miner Detector

Detects high-CPU processes and connections to known mining pools that indicate cryptocurrency mining malware.

3 Configuration

The configuration file is located at config/sentinel-shield.php

return [
    // Paths to scan (relative to base_path)
    'scan_paths' => ['app', 'config', 'routes', 'public'],

    // Paths to exclude from scanning
    'exclude_paths' => ['vendor', 'node_modules', 'storage'],

    // Scan interval in minutes (used by scheduler)
    'scan_interval' => 60,

    // Auto-quarantine malicious files
    'auto_quarantine' => true,

    // Enable maintenance mode on critical threats
    'maintenance_mode' => false,

    // Alert channels
    'alerts' => [
        'email' => [
            'enabled' => true,
            'recipients' => ['[email protected]'],
        ],
        'webhook' => [
            'enabled' => false,
            'url' => '',
        ],
    ],
];

4 Artisan Commands

Command Description
sentinel:scan Run a full security scan
sentinel:baseline Generate or update the file hash baseline
sentinel:status Show current protection status and last scan results
sentinel:quarantine-list List all quarantined files
sentinel:quarantine-restore Restore a quarantined file to its original location

5 Auto-Response System

Auto-Quarantine

When a malicious file is detected, Sentinel Shield automatically moves it to a secure quarantine directory (.sentinel-shield/quarantine/) using a copy-verify-delete workflow. A manifest file is kept so you can restore files if needed.

Available on Guardian and Fortress plans.

Maintenance Mode

On critical threats, Sentinel Shield can automatically replace your index.php with a static 503 maintenance page to protect your users while you investigate. The original file is safely backed up.

Available on Guardian and Fortress plans.

6 Plan Features

Feature Scout Guardian Fortress
Sites 1 5 Unlimited
Scan Frequency Daily Hourly Every 5 min
Pattern Library Basic (5) Full (25+) Full + Early Access
Alert Channels Email Email, Webhook, Slack All Channels
History 7 days 30 days 90 days
Auto-Quarantine -
Maintenance Mode -
Priority Support - -

View pricing →

7 Support