Advanced Express middleware for encryption, performance, DDoS protection and anti-scraping.
npm install securexpressSecureXpress adalah middleware all-in-one untuk Express.js yang menggabungkan keamanan, performa, dan kemudahan konfigurasi dalam satu paket. Fitur utama meliputi:
- Enkripsi request dan response dengan AES-256
- Proteksi terhadap DDoS dan scraping
- Optimasi performa dengan kompresi dan caching
- Deteksi bot dan anomali
- Manajemen antrean saat lonjakan trafik
- Dukungan CDN dengan header-aware
- Konfigurasi mudah hanya dengan satu baris kode
> Ideal untuk API modern yang membutuhkan keamanan tinggi dan performa optimal.
``bash`
npm install securexpress
`javascript
const express = require('express');
const securexpress = require('securexpress');
const app = express();
app.use(express.text()); // Wajib jika enableEncryption: true
app.use(securexpress({
secretKey: '12345678901234567890123456789012' // Kunci AES-256 (32 karakter)
}));
app.post('/api', (req, res) => {
res.send({ message: 'Halo dunia terenkripsi!' });
});
app.listen(3000, () => console.log('Server berjalan di port 3000'));
`
| Opsi | Tipe | Default | Deskripsi |
|-----------------------|---------|---------|-------------------------------------------------------|
| secretKey | string | - | Kunci AES-256 (wajib, 32 karakter) |enableEncryption
| | boolean | true | Aktifkan enkripsi/dekripsi otomatis |enableDDoS
| | boolean | true | Proteksi rate-limiting terhadap DDoS |enableScrapingGuard
| | boolean | true | Deteksi bot, scraping, dan header mencurigakan |enablePerformanceBoost
| | boolean | true | Aktifkan kompresi dan header caching |enableTrafficQueue
| | boolean | true | Antrekan request saat lonjakan trafik |enableCDNAwareness
| | boolean | true | Tambahkan header X-Cache-Key untuk CDN |enablePromoHeader
| | boolean | true | Tambahkan header X-Powered-By dan promosi package |
- Menggunakan AES-256-GCM untuk enkripsi request dan response.
- Request dari client akan didekripsi, response dari server akan dienkripsi otomatis.
- Jika enableEncryption: false:express.json()
- Gunakan alih-alih express.text().
- Request/response dalam format JSON tanpa enkripsi.
- Berbasis express-rate-limit.
- Batas default: 100 requests/menit/IP.
- Dapat dikustomisasi pada versi lanjutan.
- Deteksi berdasarkan:
- User-Agent (contoh: curl, wget, bot).
- Header tidak lengkap atau abnormal.
- Mengembalikan status 403 Forbidden jika terdeteksi.
- Kompresi dengan gzip atau brotli.
- Menambahkan header Cache-Control: public, max-age=300.
- Ideal untuk integrasi dengan CDN atau cache layer.
- Menghasilkan header X-Cache-Key berbasis cookie, User-Agent, dan language.
- Membantu CDN meng-cache response secara granular.
- Mengantrekan request saat server overload.
- Default delay: 10ms/request (non-blocking).
- Cocok untuk lonjakan kecil hingga menengah.
- Integrasi Redis untuk lonjakan besar (akan datang).
Default header:
``
X-Powered-By: securexpress
X-SecureXpress-Promo: Protect your API with https://www.npmjs.com/package/securexpress2enablePromoHeader: false
Nonaktifkan dengan .
`javascript``
app.use(securexpress({
secretKey: '12345678901234567890123456789012',
enableEncryption: true,
enableDDoS: true,
enableScrapingGuard: true,
enablePerformanceBoost: true,
enableTrafficQueue: true,
enableCDNAwareness: true,
enablePromoHeader: true
}));
Dikembangkan oleh [KANGWIFI]
GitHub: @Yz776
Website: kangwifi
MIT © 2025
Jika menyukai proyek ini, silakan:
- 🌟 Beri bintang di GitHub.
- 🗣️ Bagikan ke komunitas developer.
- 📦 Install dari NPM dan beri feedback.