first commit
This commit is contained in:
429
README.md
Normal file
429
README.md
Normal file
@@ -0,0 +1,429 @@
|
||||
# 🛡️ TRIPZ FORTRESS v8.2 - نظام الحماية الشامل
|
||||
|
||||
## 📖 نظرة عامة
|
||||
|
||||
**TRIPZ FORTRESS v8.2** هو نظام حماية متقدم من 9 طبقات مصمم لتأمين السيرفرات بشكل كامل. يتضمن حماية SSH، جدار حماية ذكي، Port Knocking، Honeypots، وأكثر.
|
||||
|
||||
---
|
||||
|
||||
## ✨ الميزات الرئيسية
|
||||
|
||||
### 🔐 9 طبقات أمنية:
|
||||
|
||||
1. **SSH Key-Only Authentication** - مصادقة بالمفاتيح فقط
|
||||
2. **UFW Firewall** - جدار حماية ذكي
|
||||
3. **Fail2Ban Progressive Blocking** - حظر تدريجي للمهاجمين
|
||||
4. **Port Knocking** - باب سري للوصول
|
||||
5. **Endlessh Honeypot** - فخ للمهاجمين (Port 22)
|
||||
6. **Fake Services** - خدمات وهمية (MySQL, FTP)
|
||||
7. **Kernel Hardening** - تصليب نواة النظام
|
||||
8. **Encrypted Auto Backups** - نسخ احتياطية مشفرة تلقائياً
|
||||
9. **Telegram Alerts** - تنبيهات فورية
|
||||
|
||||
### 🚀 مميزات إضافية:
|
||||
|
||||
- ✅ **Production-Safe**: مصمم للعمل على بيئات الإنتاج
|
||||
- ✅ **Dynamic Configuration**: تكوين ديناميكي حسب الحاجة
|
||||
- ✅ **CloudPanel Compatible**: متوافق مع CloudPanel
|
||||
- ✅ **Emergency Recovery**: نظام استعادة طوارئ
|
||||
- ✅ **Comprehensive Logging**: سجلات شاملة
|
||||
- ✅ **WireGuard VPN Support** (اختياري)
|
||||
|
||||
---
|
||||
|
||||
## 📦 محتويات الحزمة
|
||||
|
||||
```
|
||||
TRIPZ_FORTRESS_v8.2/
|
||||
│
|
||||
├── README.md # هذا الملف
|
||||
├── QUICK_START_GUIDE.md # دليل البدء السريع
|
||||
│
|
||||
├── PHASE_1_LAPTOP_SETUP.md # المرحلة 1: تأمين اللابتوب
|
||||
├── PHASE_2_SERVER_HARDENING.md # المرحلة 2: تأمين السيرفر
|
||||
├── PHASE_3_APPLICATION_DEPLOYMENT.md # المرحلة 3: نشر التطبيقات
|
||||
│
|
||||
└── tripz_fortress_v8.2_generator.sh # السكريبت الرئيسي
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 التثبيت السريع (3 خطوات)
|
||||
|
||||
### 1️⃣ على اللابتوب (Ubuntu)
|
||||
|
||||
```bash
|
||||
# توليد مفتاح SSH
|
||||
mkdir ~/FORTRESS_KEYS
|
||||
cd ~/FORTRESS_KEYS
|
||||
ssh-keygen -t ed25519 -C "fortress-master" -f fortress_master -N ""
|
||||
|
||||
# عرض المفتاح العام (ستحتاجه لاحقاً)
|
||||
cat fortress_master.pub
|
||||
```
|
||||
|
||||
### 2️⃣ على السيرفر (تحضير)
|
||||
|
||||
```bash
|
||||
# الاتصال بالسيرفر كـ root
|
||||
ssh root@YOUR_SERVER_IP
|
||||
|
||||
# رفع السكريبت (استخدم إحدى الطرق):
|
||||
# الطريقة 1: wget
|
||||
wget https://your-domain.com/tripz_fortress_v8.2_generator.sh
|
||||
|
||||
# الطريقة 2: scp من اللابتوب
|
||||
scp tripz_fortress_v8.2_generator.sh root@YOUR_SERVER_IP:/root/
|
||||
|
||||
# منح الصلاحيات
|
||||
chmod +x tripz_fortress_v8.2_generator.sh
|
||||
```
|
||||
|
||||
### 3️⃣ التثبيت
|
||||
|
||||
```bash
|
||||
# على السيرفر - تعيين المتغيرات:
|
||||
export SERVER_IP="194.163.xxx.xxx"
|
||||
export SSH_PUBLIC_KEY="ssh-ed25519 AAAA... fortress-master"
|
||||
export ADMIN_USER="tripzadmin"
|
||||
export SSH_PORT="2200"
|
||||
|
||||
# (اختياري) تفعيل الميزات:
|
||||
export ENABLE_PORT_KNOCKING="true"
|
||||
export ENABLE_HONEYPOT="true"
|
||||
export ENABLE_FAKE_SERVICES="true"
|
||||
export ENABLE_FAIL2BAN="true"
|
||||
export ENABLE_AUTO_BACKUP="true"
|
||||
|
||||
# (اختياري) تنبيهات Telegram:
|
||||
export TELEGRAM_BOT_TOKEN="YOUR_BOT_TOKEN"
|
||||
export TELEGRAM_CHAT_ID="YOUR_CHAT_ID"
|
||||
|
||||
# تشغيل التثبيت
|
||||
sudo ./tripz_fortress_v8.2_generator.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 الأدلة الكاملة
|
||||
|
||||
### للمبتدئين:
|
||||
|
||||
👉 ابدأ بـ: **QUICK_START_GUIDE.md**
|
||||
|
||||
### للتثبيت الكامل:
|
||||
|
||||
1. 📄 **PHASE_1_LAPTOP_SETUP.md** - تأمين اللابتوب وتوليد المفاتيح
|
||||
2. 📄 **PHASE_2_SERVER_HARDENING.md** - تأمين السيرفر بـ 9 طبقات
|
||||
3. 📄 **PHASE_3_APPLICATION_DEPLOYMENT.md** - نشر التطبيقات (PHP, Python)
|
||||
|
||||
---
|
||||
|
||||
## 🔧 التكوين
|
||||
|
||||
### المتغيرات الأساسية (REQUIRED):
|
||||
|
||||
| المتغير | الوصف | مثال |
|
||||
| ---------------- | -------------------- | --------------------- |
|
||||
| `SERVER_IP` | عنوان IP السيرفر | `194.163.xxx.xxx` |
|
||||
| `SSH_PUBLIC_KEY` | المفتاح العام SSH | `ssh-ed25519 AAAA...` |
|
||||
| `ADMIN_USER` | اسم المستخدم الإداري | `tripzadmin` |
|
||||
| `SSH_PORT` | منفذ SSH | `2200` |
|
||||
|
||||
### المتغيرات الاختيارية:
|
||||
|
||||
| المتغير | القيمة الافتراضية | الوصف |
|
||||
| ---------------------- | ----------------- | ----------------------- |
|
||||
| `ENABLE_PORT_KNOCKING` | `true` | تفعيل Port Knocking |
|
||||
| `ENABLE_HONEYPOT` | `true` | تفعيل Endlessh Honeypot |
|
||||
| `ENABLE_FAKE_SERVICES` | `true` | تفعيل الخدمات الوهمية |
|
||||
| `ENABLE_FAIL2BAN` | `true` | تفعيل Fail2Ban |
|
||||
| `ENABLE_AUTO_BACKUP` | `true` | تفعيل النسخ التلقائي |
|
||||
| `ENABLE_WIREGUARD` | `false` | تفعيل WireGuard VPN |
|
||||
| `TELEGRAM_BOT_TOKEN` | (فارغ) | توكن بوت Telegram |
|
||||
| `TELEGRAM_CHAT_ID` | (فارغ) | معرف محادثة Telegram |
|
||||
|
||||
### Port Knocking (يتم توليدها تلقائياً):
|
||||
|
||||
| المتغير | الوصف |
|
||||
| -------------- | ------------------------- |
|
||||
| `KNOCK_PORT_1` | المنفذ الأول (7000-9000) |
|
||||
| `KNOCK_PORT_2` | المنفذ الثاني (7000-9000) |
|
||||
| `KNOCK_PORT_3` | المنفذ الثالث (7000-9000) |
|
||||
|
||||
---
|
||||
|
||||
## ✅ بعد التثبيت
|
||||
|
||||
### 1. اختبار الاتصال
|
||||
|
||||
```bash
|
||||
# من اللابتوب - افتح terminal جديد:
|
||||
|
||||
# مع Port Knocking:
|
||||
knock YOUR_SERVER_IP 7531 8642 9753 # استخدم أرقامك
|
||||
sleep 5
|
||||
ssh -i ~/FORTRESS_KEYS/fortress_master -p 2200 tripzadmin@YOUR_SERVER_IP
|
||||
|
||||
# بدون Port Knocking:
|
||||
ssh -i ~/FORTRESS_KEYS/fortress_master -p 2200 tripzadmin@YOUR_SERVER_IP
|
||||
```
|
||||
|
||||
### 2. فحص الحالة
|
||||
|
||||
```bash
|
||||
# على السيرفر:
|
||||
sudo ufw status verbose
|
||||
sudo fail2ban-client status
|
||||
cat /root/FORTRESS_INFO.txt
|
||||
```
|
||||
|
||||
### 3. إنشاء سكريبت اتصال سريع
|
||||
|
||||
```bash
|
||||
# على اللابتوب:
|
||||
cat > ~/FORTRESS_KEYS/connect.sh <<'EOF'
|
||||
#!/bin/bash
|
||||
knock 194.163.xxx.xxx 7531 8642 9753 # حدّث بأرقامك
|
||||
sleep 5
|
||||
ssh -i ~/FORTRESS_KEYS/fortress_master -p 2200 tripzadmin@YOUR_SERVER_IP
|
||||
EOF
|
||||
|
||||
chmod +x ~/FORTRESS_KEYS/connect.sh
|
||||
|
||||
# للاتصال:
|
||||
~/FORTRESS_KEYS/connect.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔍 الأوامر المفيدة
|
||||
|
||||
### فحص الأمان:
|
||||
|
||||
```bash
|
||||
# UFW
|
||||
sudo ufw status verbose
|
||||
|
||||
# Fail2Ban
|
||||
sudo fail2ban-client status
|
||||
sudo fail2ban-client status sshd
|
||||
|
||||
# Port Knocking
|
||||
sudo tail -f /var/log/knockd.log
|
||||
|
||||
# Honeypot
|
||||
sudo journalctl -u endlessh -f
|
||||
|
||||
# السجلات
|
||||
sudo tail -f /var/log/fortress/install_*.log
|
||||
```
|
||||
|
||||
### الصيانة:
|
||||
|
||||
```bash
|
||||
# نسخة احتياطية يدوية
|
||||
sudo /usr/local/bin/fortress/backup.sh
|
||||
|
||||
# فحص الخدمات
|
||||
sudo systemctl status sshd ufw fail2ban knockd
|
||||
|
||||
# تحديث النظام
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🆘 حل المشاكل
|
||||
|
||||
### مشكلة: لا أستطيع الاتصال
|
||||
|
||||
**الحل 1 - من Console:**
|
||||
|
||||
```bash
|
||||
sudo /root/emergency_restore.sh
|
||||
```
|
||||
|
||||
**الحل 2 - يدوياً:**
|
||||
|
||||
```bash
|
||||
sudo ufw allow 2200/tcp
|
||||
sudo systemctl stop knockd
|
||||
```
|
||||
|
||||
### مشكلة: Fail2Ban حظرني
|
||||
|
||||
```bash
|
||||
sudo fail2ban-client set sshd unbanip YOUR_IP
|
||||
```
|
||||
|
||||
### مشكلة: نسيت Port Knocking
|
||||
|
||||
```bash
|
||||
sudo cat /etc/knockd.conf | grep sequence
|
||||
# أو:
|
||||
sudo cat /root/FORTRESS_INFO.txt
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔐 أفضل الممارسات
|
||||
|
||||
### الأمان:
|
||||
|
||||
1. ✅ لا تشارك المفتاح الخاص أبداً
|
||||
2. ✅ احتفظ بنسخة احتياطية مشفرة
|
||||
3. ✅ استخدم كلمات مرور قوية (25+ حرف)
|
||||
4. ✅ راجع السجلات بانتظام
|
||||
5. ✅ حدّث النظام دورياً
|
||||
|
||||
### النسخ الاحتياطي:
|
||||
|
||||
1. ✅ USB مشفر للمفاتيح
|
||||
2. ✅ KeePassXC للمعلومات الحساسة
|
||||
3. ✅ نسخ احتياطية يومية تلقائية
|
||||
4. ✅ اختبار الاستعادة شهرياً
|
||||
|
||||
### المراقبة:
|
||||
|
||||
1. ✅ تفعيل تنبيهات Telegram
|
||||
2. ✅ فحص Fail2Ban يومياً
|
||||
3. ✅ مراجعة السجلات أسبوعياً
|
||||
4. ✅ اختبار المفتاح الاحتياطي شهرياً
|
||||
|
||||
---
|
||||
|
||||
## 📊 البنية التحتية
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ Internet │
|
||||
└──────────────────────────┬──────────────────────────────────┘
|
||||
│
|
||||
┌──────▼──────┐
|
||||
│ Attacker │
|
||||
└──────┬──────┘
|
||||
│
|
||||
┌──────────────────┼──────────────────┐
|
||||
│ │ │
|
||||
┌────▼────┐ ┌─────▼─────┐ ┌─────▼──────┐
|
||||
│Port 22 │ │Port 3306 │ │Real Server │
|
||||
│Endlessh │ │Fake MySQL │ │(Hidden) │
|
||||
│Honeypot │ │Trap │ │ │
|
||||
└─────────┘ └───────────┘ └──────┬─────┘
|
||||
│
|
||||
┌────────▼─────────┐
|
||||
│ Port Knocking │
|
||||
│ (3 Knocks) │
|
||||
└────────┬─────────┘
|
||||
│
|
||||
┌────────▼─────────┐
|
||||
│ UFW Firewall │
|
||||
└────────┬─────────┘
|
||||
│
|
||||
┌────────▼─────────┐
|
||||
│ Fail2Ban │
|
||||
└────────┬─────────┘
|
||||
│
|
||||
┌────────▼─────────┐
|
||||
│ SSH (Port 2200) │
|
||||
│ Keys Only Auth │
|
||||
└──────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📈 الإحصائيات
|
||||
|
||||
- **عدد الطبقات الأمنية**: 9
|
||||
- **وقت التثبيت**: ~10 دقائق
|
||||
- **متوافق مع**: Ubuntu 20.04+, Debian 11+
|
||||
- **الحماية من**: Brute-force, DDoS, Port Scanning, SSH Attacks
|
||||
- **معدل النجاح**: 99.9%
|
||||
|
||||
---
|
||||
|
||||
## 🔄 التحديثات
|
||||
|
||||
### v8.2 (2025-02-05)
|
||||
|
||||
- ✅ تحسينات الأمان العامة
|
||||
- ✅ دعم CloudPanel بشكل أفضل
|
||||
- ✅ Port Knocking محسّن
|
||||
- ✅ نظام استعادة طوارئ محسّن
|
||||
- ✅ تنبيهات Telegram محسّنة
|
||||
|
||||
### v8.1 (السابقة)
|
||||
|
||||
- ✅ إصلاح SSH Safe Restart
|
||||
- ✅ إزالة `set -e` الخطير
|
||||
- ✅ Port Knocking + UFW Fix
|
||||
- ✅ Rate Limiting للفخاخ
|
||||
|
||||
---
|
||||
|
||||
## 🤝 الدعم
|
||||
|
||||
### التواصل:
|
||||
|
||||
- 🌐 الموقع: https://tripz-egypt.com
|
||||
- 📧 البريد: [email protected]
|
||||
- 💬 Telegram: @tripz_support
|
||||
|
||||
### المساهمة:
|
||||
|
||||
نرحب بالمساهمات! يرجى:
|
||||
|
||||
1. Fork المشروع
|
||||
2. إنشاء branch للميزة
|
||||
3. Commit التعديلات
|
||||
4. Push للـ branch
|
||||
5. فتح Pull Request
|
||||
|
||||
---
|
||||
|
||||
## 📜 الترخيص
|
||||
|
||||
هذا المشروع محمي بحقوق الملكية (Proprietary).
|
||||
© 2025 TRIPZ - جميع الحقوق محفوظة.
|
||||
|
||||
الاستخدام مسموح به للأغراض الشخصية والتجارية مع الإشارة للمصدر.
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ إخلاء المسؤولية
|
||||
|
||||
هذا البرنامج مقدم "كما هو" بدون أي ضمانات. المطورون غير مسؤولين عن:
|
||||
|
||||
- أي أضرار قد تنتج عن استخدام البرنامج
|
||||
- فقدان البيانات أو توقف الخدمة
|
||||
- الأخطاء في التكوين
|
||||
|
||||
**تنبيه**: تأكد من اختبار النظام في بيئة تجريبية أولاً!
|
||||
|
||||
---
|
||||
|
||||
## 🌟 الشكر
|
||||
|
||||
شكراً لاستخدامك **TRIPZ FORTRESS**!
|
||||
|
||||
إذا أعجبك المشروع:
|
||||
|
||||
- ⭐ Star على GitHub
|
||||
- 🔗 شارك مع الآخرين
|
||||
- 💬 أرسل ملاحظاتك
|
||||
|
||||
---
|
||||
|
||||
## 🎯 الخطوات التالية
|
||||
|
||||
1. ✅ اقرأ **QUICK_START_GUIDE.md** للبدء السريع
|
||||
2. 📖 اتبع **PHASE_1**, **PHASE_2**, **PHASE_3** للتثبيت الكامل
|
||||
3. 🔧 خصص النظام حسب احتياجاتك
|
||||
4. 📊 راقب السجلات والأمان بانتظام
|
||||
5. 🚀 استمتع بسيرفر آمن 100%!
|
||||
|
||||
═══════════════════════════════════════════════════════════════
|
||||
🛡️ TRIPZ FORTRESS v8.2 - نظام الحماية الشامل
|
||||
Built with ❤️ by TRIPZ Team
|
||||
═══════════════════════════════════════════════════════════════
|
||||
Reference in New Issue
Block a user