-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathschema.sql
More file actions
80 lines (73 loc) · 3.13 KB
/
Copy pathschema.sql
File metadata and controls
80 lines (73 loc) · 3.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
-- Sentinel IRC Bot - Base de données MySQL
-- Création des tables dans la base existante
-- Note: Utiliser la base existante, ne pas créer de nouvelle base
-- USE sentinel_db;
-- Table des connexions utilisateurs
CREATE TABLE IF NOT EXISTS users_connections (
id INT AUTO_INCREMENT PRIMARY KEY,
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
uniqueIdBaboon VARCHAR(255) NOT NULL,
hardware VARCHAR(255) NOT NULL,
Iddevice VARCHAR(255) DEFAULT NULL,
publicIPAddressHardware VARCHAR(45) NOT NULL,
publicHostnameHardware VARCHAR(255) DEFAULT NULL,
model VARCHAR(100) DEFAULT NULL,
version VARCHAR(50) DEFAULT NULL,
kernel VARCHAR(100) DEFAULT NULL,
pseudopardefaut VARCHAR(100) DEFAULT NULL,
nickactuel VARCHAR(100) NOT NULL,
ville VARCHAR(100) DEFAULT NULL,
INDEX idx_ip (publicIPAddressHardware),
INDEX idx_uniqueid (uniqueIdBaboon),
INDEX idx_hardware (hardware),
INDEX idx_nick (nickactuel),
INDEX idx_timestamp (timestamp)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- Table des bannissements
CREATE TABLE IF NOT EXISTS bannissements (
id INT AUTO_INCREMENT PRIMARY KEY,
mask VARCHAR(255) NOT NULL UNIQUE,
raison TEXT NOT NULL,
date_ban DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
duree INT NOT NULL COMMENT 'Durée en secondes',
expire_at DATETIME NOT NULL,
banni_par VARCHAR(100) NOT NULL,
INDEX idx_mask (mask),
INDEX idx_expire (expire_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- Table des G-Lines synchronisées
CREATE TABLE IF NOT EXISTS glines (
id INT AUTO_INCREMENT PRIMARY KEY,
mask VARCHAR(255) NOT NULL,
raison TEXT NOT NULL,
date_creation DATETIME NOT NULL,
duree INT NOT NULL COMMENT 'Durée en secondes',
serveur_source VARCHAR(255) DEFAULT NULL,
last_sync DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
INDEX idx_mask (mask),
INDEX idx_last_sync (last_sync)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- Table des critères de bannissement automatique
CREATE TABLE IF NOT EXISTS ban_criteria (
id INT AUTO_INCREMENT PRIMARY KEY,
type ENUM('ip_pattern', 'hostname_pattern', 'hardware_id', 'unique_id', 'ville') NOT NULL,
pattern VARCHAR(255) NOT NULL,
actif BOOLEAN DEFAULT TRUE,
raison TEXT NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
INDEX idx_type (type),
INDEX idx_actif (actif)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- Table des logs d'actions
CREATE TABLE IF NOT EXISTS logs (
id INT AUTO_INCREMENT PRIMARY KEY,
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
action VARCHAR(255) NOT NULL,
details TEXT,
INDEX idx_timestamp (timestamp),
INDEX idx_action (action)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- Création d'un utilisateur dédié (optionnel, à adapter selon vos besoins)
-- CREATE USER IF NOT EXISTS 'sentinel_user'@'localhost' IDENTIFIED BY 'votre_mot_de_passe_mysql';
-- GRANT SELECT, INSERT, UPDATE, DELETE ON sentinel_db.* TO 'sentinel_user'@'localhost';
-- FLUSH PRIVILEGES;