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, Webhook, Slack | All Channels | |
| History | 7 days | 30 days | 90 days |
| Auto-Quarantine | - | ✓ | ✓ |
| Maintenance Mode | - | ✓ | ✓ |
| Priority Support | - | - | ✓ |