🏗️ Architecture Globale WEVAL
WEVAL - Email Marketing Platform
Serveur: 95.216.167.89:5821
▼
▼
▼
📱 Interfaces Web
Pages PHP
- office-workflow.php
- domains-management.php
- freedns-config.php
- system-tools.php
- office-accounts-edit.php
🗄️ Base de Données
PostgreSQL
- admin.office_accounts
- admin.domains_pool
- admin.office_backdoors
- admin.cloudflare_zones
⚙️ Scripts & Tools
Python / PowerShell
- setup_domain_full.py
- freedns.py
- add_domain_o365.py
- *.ps1 scripts
▼
▼
▼
☁️ Cloudflare
DNS Provider
- Create DNS records
- MX, SPF, TXT
- Autodiscover
🔷 Microsoft APIs
Graph / Azure / O365
- Add/Verify Domains
- Exchange Config
- Anti-Spam Rules
- Connectors
🖥️ Serveur FreeDNS
151.80.235.110
- Fichiers .well-known
- HTTP Verification
- Tracking /op /cl
Interfaces PHP
Base de données
Scripts
Cloudflare
Microsoft
🗄️ Structure Base de Données
Database: adx_system | Schema: admin | Host: localhost:5432 | User: admin
📋 admin.office_accounts
| Colonne | Type | Description | Utilisé par |
| id | SERIAL PK | Identifiant unique | Tous les écrans |
| name | VARCHAR | Nom du compte | Affichage listes |
| admin_email | VARCHAR | Email admin O365 | Auth, Scripts |
| admin_password | VARCHAR | Mot de passe actuel | Auth, Step 4 |
| old_passwords | JSONB | Historique (5 derniers) | Step 4, Edit |
| app_id | VARCHAR | Azure App Client ID | Steps 6,7,9 API |
| app_secret | VARCHAR | Azure App Secret | Steps 6,7,9 API |
| tenant_id | VARCHAR | Azure Tenant ID | Steps 6,7,9 API |
| status | VARCHAR | Active/Blocked/MFA/Ready | Filtres, Workflow |
| current_step | INTEGER | Dernière étape exécutée | Workflow progress |
| domains_list | JSONB | Liste domaines assignés | Edit, Workflow |
📋 admin.domains_pool
| Colonne | Type | Description | Utilisé par |
| id | SERIAL PK | Identifiant unique | Tous |
| domain | VARCHAR UNIQUE | Nom de domaine complet | Affichage, API |
| provider | VARCHAR | cloudflare/office365/freedns | Filtres, Logique |
| zone_id | VARCHAR | ID zone Cloudflare | Step 7 CF API |
| status | VARCHAR | FREE/ASSIGNED/PENDING | Filtres, Stats |
| office_account_id | INTEGER FK | Lien vers office_accounts | Assignation |
| verification_status | VARCHAR | VERIFIED/PENDING/FAILED | Stats, Workflow |
| dns_records | JSONB | {mx:bool, spf:bool, auto:bool} | Affichage badges |
📋 admin.office_backdoors & admin.cloudflare_zones
office_backdoors
- id SERIAL PK
- account_id FK → office_accounts
- email VARCHAR
- password VARCHAR
- status Active/Blocked
cloudflare_zones
- id SERIAL PK
- zone_id VARCHAR
- zone_name VARCHAR
- api_key VARCHAR
- email VARCHAR
⚙️ Workflow Office 365 - Steps 2-13
📋 PHASE 1: Préparation du Compte
Step 2
Check MFA
PowerShell
→
Step 3
Remove MFA
MANUEL
→
Step 4
Change Password
PowerShell
→
Step 5
Azure App
PowerShell
🌐 PHASE 2: Gestion des Domaines
Step 6
Check Domains
PowerShell
→
Step 7
CF Domains
Python
→
Step 8
FreeDNS
Python
→
Step 9
Add to O365
Python
📧 PHASE 3: Configuration Exchange
Step 10
Config Exchange
PowerShell
→
Step 11
Anti-Spam
PowerShell
→
Step 12
Connector
PowerShell
→
Step 13
Finalisation
READY
💻 PowerShell - Steps 2,4,5,6,10,11,12
🐍 Python - Steps 7,8,9
🖐️ Manuel VNC - Step 3