The MOST ADVANCED, modular, scalable, and secure SFTP backup engine ever created.
Developed & Watermarked by Basil Saji Mathew (BSM)
The BSM Automatic SFTP Backup System is a next-generation, high-performance, and fully configurable automated backup suite designed for multi-server enterprise environments. Engineered with zero compromises on security and efficiency, it powers dynamic file retention, deep compression, military-grade encryption, and real-time Discord notifications.
- 🌐 Multi-Server Multi-Destination: Unlimited remote nodes. Pull/Push data across VPS clusters.
- 🗄️ Smart Database Archiver: Auto-detects and dumps MySQL, PostgreSQL, and MongoDB bases.
- 📦 Dynamic Compression: Zlib integration supporting
.zip,.tar, and.tar.gz. - 🔐 AES-256 Encryption: Rest easy knowing your archives are mathematically uncrackable natively.
- 🧹 Auto-Cleanup / Retention Engine: Self-managing file retention policies (Date, Count, or Size-based).
- 🕒 Granular Schedulers: Supports internal CRON patterns and real-time syncing.
- 🤖 Discord Webhook AI Integration: Detailed alerts natively to your admin Discord channels (Success, Failure, Warnings).
(Placeholders for future UI / Console logs)
> [SUCCESS] [vps-01-web] Archive created: /backups/archives/vps-01-web-1682910.tar.gz
> [SUCCESS] BSM Webhook sent to #alerts channel.
# 1. Clone the repository
git clone https://github.com/YourUsername/BSM-Automatic-SFTP-Backup.git
cd BSM-Automatic-SFTP-Backup
# 2. Install Dependencies
npm install
# 3. Setup Configurations
cp .env.example .env
cp config/backup.yml config/backup-production.yml
# 4. Build TypeScript
npm run buildCheck ./config/backup.yml to define your target servers, scheduling, and cleanup logic. Check .env for your Database Credentials, Secrets, and Discord hook keys.
Note: The configuration system accepts recursive directories. Glob matching is active!
# Run manual full-backup immediately
npm run start -- --mode full
# Start scheduled daemon via CRON
npm run start -- --daemon
# Validate configurations
npm run validate- Keys and
.envfiles are in.gitignore. Never commit these! - Ensure SSH Key pairs are minimum RSA-4096 or Ed25519.
See CONTRIBUTING.md for our enterprise contribution ladder.
MIT License - Copyright (c) 2026 Basil Saji Mathew (BSM)