{"id":1159,"date":"2025-08-28T17:04:25","date_gmt":"2025-08-28T15:04:25","guid":{"rendered":"https:\/\/bots.lobobrothers.com\/documentation\/"},"modified":"2025-12-02T15:44:50","modified_gmt":"2025-12-02T14:44:50","slug":"documentation","status":"publish","type":"page","link":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/","title":{"rendered":"Documentation"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1159\" class=\"elementor elementor-1159 elementor-653\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c85f64f e-flex e-con-boxed e-con e-parent\" data-id=\"c85f64f\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-63bbf9e e-flex e-con-boxed e-con e-parent\" data-id=\"63bbf9e\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-26b5274 elementor-widget elementor-widget-html\" data-id=\"26b5274\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html>\r\n<head>\r\n    <title>Manuel de Configuration LoboGuard<\/title>\r\n    <style>\r\n\/* VARIABLES CSS *\/\r\n:root {\r\n    --primary-color: #e53e3e;\r\n    --secondary-color: #38d9a9;\r\n    --accent-color: #4fd1c7;\r\n    --success-color: #38d9a9;\r\n    --warning-color: #ffc107;\r\n    --error-color: #e53e3e;\r\n    --info-color: #3182ce;\r\n    \r\n    --bg-primary: #1a202c;\r\n    --bg-secondary: #2d3748;\r\n    --bg-tertiary: #4a5568;\r\n    --bg-card: #2d3748;\r\n    \r\n    --text-primary: #f7fafc;\r\n    --text-secondary: #cbd5e0;\r\n    --text-muted: #a0aec0;\r\n    \r\n    --border-color: #4a5568;\r\n    --border-light: #718096;\r\n    \r\n    --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3);\r\n    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.4);\r\n    \r\n    --radius: 8px;\r\n    --radius-lg: 12px;\r\n}\r\n\r\n\/* RESET ET BASE *\/\r\n* {\r\n    margin: 0;\r\n    padding: 0;\r\n    box-sizing: border-box;\r\n}\r\n\r\nbody {\r\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif;\r\n    background: var(--bg-primary);\r\n    color: var(--text-primary);\r\n    line-height: 1.6;\r\n}\r\n\r\n\/* LAYOUT PRINCIPAL *\/\r\n.manual-container {\r\n    display: grid;\r\n    grid-template-columns: 300px 1fr;\r\n    gap: 30px;\r\n    max-width: 1400px;\r\n    margin: 0 auto;\r\n    padding: 20px;\r\n    min-height: 100vh;\r\n}\r\n\r\n@media (max-width: 1024px) {\r\n    .manual-container {\r\n        grid-template-columns: 1fr;\r\n        gap: 20px;\r\n    }\r\n}\r\n\r\n\/* SIDEBAR NAVIGATION *\/\r\n.manual-nav {\r\n    background: var(--bg-secondary);\r\n    border-radius: var(--radius-lg);\r\n    padding: 24px;\r\n    border: 1px solid var(--border-color);\r\n    box-shadow: var(--shadow);\r\n    height: fit-content;\r\n    position: sticky;\r\n    top: 20px;\r\n}\r\n\r\n.manual-nav h3 {\r\n    color: var(--text-primary);\r\n    font-size: 18px;\r\n    font-weight: 600;\r\n    margin-bottom: 20px;\r\n    padding-bottom: 12px;\r\n    border-bottom: 2px solid var(--primary-color);\r\n}\r\n\r\n.manual-nav ul {\r\n    list-style: none;\r\n}\r\n\r\n.manual-nav li {\r\n    margin-bottom: 8px;\r\n}\r\n\r\n.manual-nav a {\r\n    display: block;\r\n    padding: 12px 16px;\r\n    color: var(--text-secondary);\r\n    text-decoration: none;\r\n    border-radius: var(--radius);\r\n    transition: all 0.3s ease;\r\n    font-weight: 500;\r\n    border-left: 3px solid transparent;\r\n}\r\n\r\n.manual-nav a:hover {\r\n    background: var(--bg-tertiary);\r\n    color: var(--text-primary);\r\n    border-left-color: var(--secondary-color);\r\n}\r\n\r\n.manual-nav a.active {\r\n    background: var(--primary-color);\r\n    color: white;\r\n    border-left-color: var(--secondary-color);\r\n}\r\n\r\n\/* CONTENU PRINCIPAL *\/\r\n.manual-content {\r\n    background: var(--bg-secondary);\r\n    border-radius: var(--radius-lg);\r\n    padding: 40px;\r\n    border: 1px solid var(--border-color);\r\n    box-shadow: var(--shadow);\r\n    width: 100%;\r\n    max-width: 1100px;\r\n    min-width: 800px;\r\n}\r\n\r\n@media (max-width: 1024px) {\r\n    .manual-content {\r\n        min-width: auto;\r\n        max-width: 100%;\r\n    }\r\n}\r\n\r\n.manual-section {\r\n    display: none;\r\n}\r\n\r\n.manual-section.active {\r\n    display: block;\r\n    animation: fadeIn 0.4s ease;\r\n}\r\n\r\n@keyframes fadeIn {\r\n    from { opacity: 0; transform: translateY(10px); }\r\n    to { opacity: 1; transform: translateY(0); }\r\n}\r\n\r\n\/* TYPOGRAPHIE *\/\r\nh2 {\r\n    color: var(--primary-color);\r\n    font-size: 32px;\r\n    font-weight: 700;\r\n    margin-bottom: 32px;\r\n    padding-bottom: 16px;\r\n    border-bottom: 2px solid var(--primary-color);\r\n}\r\n\r\nh3 {\r\n    color: var(--secondary-color);\r\n    font-size: 24px;\r\n    font-weight: 600;\r\n    margin: 32px 0 20px 0;\r\n}\r\n\r\nh4 {\r\n    color: var(--text-primary);\r\n    font-size: 20px;\r\n    font-weight: 600;\r\n    margin: 24px 0 16px 0;\r\n}\r\n\r\nh5 {\r\n    color: var(--text-primary);\r\n    font-size: 16px;\r\n    font-weight: 600;\r\n    margin: 20px 0 12px 0;\r\n}\r\n\r\np {\r\n    color: var(--text-secondary);\r\n    margin: 16px 0;\r\n    line-height: 1.7;\r\n}\r\n\r\nul, ol {\r\n    margin: 16px 0;\r\n    padding-left: 24px;\r\n}\r\n\r\nli {\r\n    color: var(--text-secondary);\r\n    margin: 8px 0;\r\n}\r\n\r\n\/* ALERTS *\/\r\n.manual-warning,\r\n.manual-important,\r\n.manual-tip {\r\n    padding: 20px 24px;\r\n    margin: 24px 0;\r\n    border-radius: var(--radius);\r\n    border-left: 4px solid;\r\n    position: relative;\r\n}\r\n\r\n.manual-warning {\r\n    background: rgba(255, 193, 7, 0.1);\r\n    border-color: var(--warning-color);\r\n    color: #ffd43b;\r\n}\r\n\r\n.manual-important {\r\n    background: rgba(56, 178, 172, 0.1);\r\n    border-color: var(--info-color);\r\n    color: var(--accent-color);\r\n}\r\n\r\n.manual-tip {\r\n    background: rgba(56, 217, 169, 0.1);\r\n    border-color: var(--success-color);\r\n    color: var(--success-color);\r\n}\r\n\r\n\/* CODE *\/\r\n.manual-example {\r\n    background: var(--bg-primary);\r\n    border: 1px solid var(--border-color);\r\n    border-radius: var(--radius);\r\n    padding: 20px;\r\n    margin: 20px 0;\r\n    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\r\n    font-size: 14px;\r\n    color: var(--secondary-color);\r\n    overflow-x: auto;\r\n}\r\n\r\n\/* TABLEAUX *\/\r\n.manual-table {\r\n    margin: 24px 0;\r\n    overflow-x: auto;\r\n    border-radius: var(--radius);\r\n    border: 1px solid var(--border-color);\r\n    background: var(--bg-card);\r\n}\r\n\r\n.manual-table table {\r\n    width: 100%;\r\n    border-collapse: collapse;\r\n}\r\n\r\n.manual-table th {\r\n    background: var(--bg-primary);\r\n    color: var(--text-primary);\r\n    padding: 16px 20px;\r\n    text-align: left;\r\n    font-weight: 600;\r\n    border-bottom: 1px solid var(--border-color);\r\n}\r\n\r\n.manual-table td {\r\n    padding: 16px 20px;\r\n    border-bottom: 1px solid var(--border-color);\r\n    color: var(--text-secondary);\r\n    vertical-align: top;\r\n}\r\n\r\n.manual-table tr:last-child td {\r\n    border-bottom: none;\r\n}\r\n\r\n.manual-table tr:hover {\r\n    background: var(--bg-tertiary);\r\n}\r\n\r\n\/* GRILLE FONCTIONNALIT\u00c9S *\/\r\n.manual-features-grid {\r\n    display: grid;\r\n    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));\r\n    gap: 24px;\r\n    margin: 32px 0;\r\n}\r\n\r\n.manual-feature-card {\r\n    background: var(--bg-card);\r\n    border: 1px solid var(--secondary-color);\r\n    border-radius: var(--radius);\r\n    padding: 24px;\r\n    transition: all 0.3s ease;\r\n    box-shadow: var(--shadow);\r\n}\r\n\r\n.manual-feature-card:hover {\r\n    box-shadow: var(--shadow-lg);\r\n    transform: translateY(-4px);\r\n    border-color: var(--accent-color);\r\n}\r\n\r\n.manual-feature-card h4 {\r\n    color: var(--secondary-color);\r\n    margin: 0 0 16px 0;\r\n    font-size: 18px;\r\n}\r\n\r\n.manual-feature-card p {\r\n    margin: 0 0 16px 0;\r\n    font-size: 14px;\r\n}\r\n\r\n.manual-feature-card ul {\r\n    margin: 0;\r\n    padding-left: 20px;\r\n}\r\n\r\n.manual-feature-card li {\r\n    font-size: 14px;\r\n    margin: 8px 0;\r\n}\r\n\r\n\/* \u00c9TAPES *\/\r\n.manual-steps {\r\n    margin: 24px 0;\r\n}\r\n\r\n.manual-steps h4 {\r\n    background: var(--primary-color);\r\n    color: white;\r\n    padding: 12px 20px;\r\n    border-radius: var(--radius);\r\n    margin: 20px 0 16px 0;\r\n    font-size: 16px;\r\n}\r\n\r\n.manual-steps ol {\r\n    background: var(--bg-card);\r\n    border-radius: var(--radius);\r\n    padding: 20px 24px 20px 44px;\r\n    margin: 0 0 20px 0;\r\n    border: 1px solid var(--border-color);\r\n}\r\n\r\n\/* LISTE CHECKBOX *\/\r\n.manual-checkbox-list {\r\n    margin: 20px 0;\r\n}\r\n\r\n.checkbox-item {\r\n    display: flex;\r\n    align-items: flex-start;\r\n    margin: 12px 0;\r\n    padding: 8px 0;\r\n}\r\n\r\n.checkbox-item::before {\r\n    content: \"\u2705\";\r\n    margin-right: 12px;\r\n    flex-shrink: 0;\r\n    font-size: 16px;\r\n}\r\n\r\n\/* IDENTIFIANTS *\/\r\n.manual-credentials {\r\n    background: var(--bg-card);\r\n    border: 1px solid var(--border-color);\r\n    border-radius: var(--radius);\r\n    padding: 20px;\r\n    margin: 20px 0;\r\n}\r\n\r\n.manual-credentials h5 {\r\n    margin: 0 0 12px 0;\r\n    font-weight: 600;\r\n    color: var(--text-primary);\r\n}\r\n\r\n\/* IMAGES *\/\r\n.manual-image-container {\r\n    margin: 32px 0;\r\n    text-align: center;\r\n}\r\n\r\n.manual-image {\r\n    max-width: 100%;\r\n    height: auto;\r\n    border-radius: var(--radius);\r\n    border: 1px solid var(--border-color);\r\n    box-shadow: var(--shadow);\r\n}\r\n\r\n\/* NAVIGATION SECTIONS *\/\r\n.section-navigation {\r\n    margin-top: 48px;\r\n    padding-top: 32px;\r\n    border-top: 1px solid var(--border-color);\r\n}\r\n\r\n.section-nav-container {\r\n    display: flex;\r\n    justify-content: space-between;\r\n    align-items: center;\r\n    gap: 20px;\r\n}\r\n\r\n.section-nav-btn {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 12px;\r\n    padding: 12px 20px;\r\n    background: var(--bg-card);\r\n    border: 1px solid var(--border-color);\r\n    border-radius: var(--radius);\r\n    color: var(--text-primary);\r\n    text-decoration: none;\r\n    transition: all 0.3s ease;\r\n    cursor: pointer;\r\n    font-size: 14px;\r\n}\r\n\r\n.section-nav-btn:hover:not(:disabled) {\r\n    background: var(--primary-color);\r\n    color: white;\r\n    border-color: var(--primary-color);\r\n}\r\n\r\n.section-nav-btn:disabled {\r\n    opacity: 0.5;\r\n    cursor: not-allowed;\r\n}\r\n\r\n.nav-text {\r\n    display: flex;\r\n    flex-direction: column;\r\n    text-align: left;\r\n}\r\n\r\n.nav-label {\r\n    font-size: 12px;\r\n    opacity: 0.8;\r\n    font-weight: 500;\r\n}\r\n\r\n.nav-title {\r\n    font-size: 14px;\r\n    font-weight: 600;\r\n}\r\n\r\n.section-counter {\r\n    background: var(--bg-primary);\r\n    padding: 8px 16px;\r\n    border-radius: var(--radius);\r\n    font-size: 14px;\r\n    font-weight: 600;\r\n    color: var(--secondary-color);\r\n    border: 1px solid var(--border-color);\r\n}\r\n\r\n\/* RESPONSIVE *\/\r\n@media (max-width: 768px) {\r\n    .manual-container {\r\n        padding: 10px;\r\n    }\r\n    \r\n    .manual-content {\r\n        padding: 24px;\r\n    }\r\n    \r\n    .manual-nav {\r\n        position: static;\r\n        margin-bottom: 20px;\r\n    }\r\n    \r\n    .manual-features-grid {\r\n        grid-template-columns: 1fr;\r\n    }\r\n    \r\n    .section-nav-container {\r\n        flex-direction: column;\r\n        gap: 16px;\r\n    }\r\n    \r\n    .section-nav-btn {\r\n        width: 100%;\r\n        justify-content: center;\r\n    }\r\n}\r\n    <\/style>\r\n<\/head>\r\n<body>\r\n\r\n<div class=\"manual-container\">\r\n    <!-- SIDEBAR NAVIGATION -->\r\n    <nav class=\"manual-nav\">\r\n        <h2 style=\"font-size: 18px; margin: 32px 0 20px 0;\">Table des Mati\u00e8res<\/h2>\r\n        <ul>\r\n            <li><a href=\"#introduction\" class=\"nav-item active\">Introduction<\/a><\/li>\r\n            <li><a href=\"#telegram-bot-setup\" class=\"nav-item\">Configuration Bot Telegram<\/a><\/li>\r\n            <li><a href=\"#telegram-ids\" class=\"nav-item\">IDs Telegram<\/a><\/li>\r\n            <li><a href=\"#initial-access\" class=\"nav-item\">Acc\u00e8s Initial<\/a><\/li>\r\n            <li><a href=\"#bot-configuration\" class=\"nav-item\">Configuration Bot<\/a><\/li>\r\n            <li><a href=\"#cluster-configuration\" class=\"nav-item\">Configuration Cluster<\/a><\/li>\r\n            <li><a href=\"#system-administration\" class=\"nav-item\">Administration Syst\u00e8me<\/a><\/li>\r\n            <li><a href=\"#verification-testing\" class=\"nav-item\">V\u00e9rification et Test<\/a><\/li>\r\n        <\/ul>\r\n    <\/nav>\r\n\r\n    <!-- CONTENU PRINCIPAL -->\r\n    <div class=\"manual-content\">\r\n        \r\n        <!-- SECTION 1: INTRODUCTION -->\r\n        <section id=\"introduction\" class=\"manual-section active\">\r\n            <h2>Introduction<\/h2>\r\n            \r\n            <h3>Description G\u00e9n\u00e9rale<\/h3>\r\n            <p>LoboGuard est une solution avanc\u00e9e et s\u00e9curis\u00e9e de surveillance, d'alerte, de gestion et de reporting pour les infrastructures Proxmox, utilisant Telegram comme interface de contr\u00f4le \u00e0 distance et d'alerte. Ce manuel fournit un guide complet pour la configuration initiale du syst\u00e8me.<\/p>\r\n            \r\n            <h3>Pr\u00e9requis<\/h3>\r\n            <ul>\r\n                <li>Acc\u00e8s \u00e0 Telegram (application mobile, desktop ou web)<\/li>\r\n                <li>Cl\u00e9 de licence LoboBrothers valide<\/li>\r\n                <li>Serveur LoboGuard d\u00e9ploy\u00e9 et accessible<\/li>\r\n                <li>Clusters Proxmox avec acc\u00e8s API depuis LoboGuard<\/li>\r\n            <\/ul>\r\n\r\n            <h3>Fonctionnalit\u00e9s Principales<\/h3>\r\n            <div class=\"manual-features-grid\">\r\n                <div class=\"manual-feature-card\">\r\n                    <h4>Surveillance<\/h4>\r\n                    <p>Supervision continue de :<\/p>\r\n                    <ul>\r\n                        <li><strong>CPU et M\u00e9moire<\/strong><\/li>\r\n                        <li><strong>Disques et \u00c9tats<\/strong><\/li>\r\n                        <li><strong>VMs\/LXCs<\/strong><\/li>\r\n                        <li><strong>N\u0153uds<\/strong><\/li>\r\n                        <li><strong>Stockage<\/strong><\/li>\r\n                        <li><strong>R\u00e9seaux<\/strong><\/li>\r\n                        <li><strong>Sauvegardes<\/strong><\/li>\r\n                        <li><strong>CEPH<\/strong><\/li>\r\n                    <\/ul>\r\n                <\/div>\r\n\r\n                <div class=\"manual-feature-card\">\r\n                    <h4>Alertes intelligentes<\/h4>\r\n                    <p>Notifications automatiques via Telegram avec plusieurs types d'alertes :<\/p>\r\n                    <ul>\r\n                        <li><strong>Alertes ressources (CPU, RAM, Disque)<\/strong><\/li>\r\n                        <li><strong>Alertes certificats SSL\/TLS<\/strong><\/li>\r\n                        <li><strong>Alertes synchronisation temps<\/strong><\/li>\r\n                        <li><strong>Alertes pare-feu et s\u00e9curit\u00e9<\/strong><\/li>\r\n                        <li><strong>Alertes Haute Disponibilit\u00e9<\/strong><\/li>\r\n                        <li><strong>Alertes stockage Ceph et ZFS<\/strong><\/li>\r\n                        <li><strong>Alertes sauvegarde et snapshots<\/strong><\/li>\r\n                        <li><strong>Alertes abonnement syst\u00e8me<\/strong><\/li>\r\n                    <\/ul>\r\n                <\/div>\r\n\r\n                <div class=\"manual-feature-card\">\r\n                    <h4>Rapports<\/h4>\r\n                    <p>Manuels et programm\u00e9s pour :<\/p>\r\n                    <ul>\r\n                        <li><strong>\u00c9tat G\u00e9n\u00e9ral<\/strong><\/li>\r\n                        <li><strong>\u00c9tat VM\/LXC<\/strong><\/li>\r\n                        <li><strong>Stockage<\/strong><\/li>\r\n                        <li><strong>Sauvegardes<\/strong><\/li>\r\n                        <li><strong>R\u00e9seaux<\/strong><\/li>\r\n                        <li><strong>Ceph<\/strong><\/li>\r\n                    <\/ul>\r\n                <\/div>\r\n\r\n                <div class=\"manual-feature-card\">\r\n                    <h4>Architecture de S\u00e9curit\u00e9 Avanc\u00e9e<\/h4>\r\n                    <p>LoboGuard impl\u00e9mente plusieurs couches de s\u00e9curit\u00e9 pour prot\u00e9ger votre infrastructure :<\/p>\r\n                    <ul>\r\n                        <li><strong>Authentification Multi-Facteurs<\/strong><\/li>\r\n                        <li><strong>Contr\u00f4le d'Acc\u00e8s Granulaire<\/strong><\/li>\r\n                        <li><strong>Protection Anti-Force Brute<\/strong><\/li>\r\n                        <li><strong>Audit Complet<\/strong><\/li>\r\n                        <li><strong>Jetons Uniques<\/strong><\/li>\r\n                        <li><strong>D\u00e9lais d'expiration de Session<\/strong><\/li>\r\n                    <\/ul>\r\n                <\/div>\r\n\r\n                <div class=\"manual-feature-card\">\r\n                    <h4>Gestion \u00e0 distance<\/h4>\r\n                    <p>Contr\u00f4le depuis Telegram avec authentification s\u00e9curis\u00e9e :<\/p>\r\n                    <ul>\r\n                        <li><strong>Allumage, extinction, red\u00e9marrage VMs\/LXCs<\/strong><\/li>\r\n                        <li><strong>Gestion et ex\u00e9cution de sauvegardes<\/strong><\/li>\r\n                        <li><strong>Gestion et ex\u00e9cution de snapshots<\/strong><\/li>\r\n                    <\/ul>\r\n                <\/div>\r\n\r\n                <div class=\"manual-feature-card\">\r\n                    <h4>Multi-cluster<\/h4>\r\n                    <p>Support pour plusieurs environnements Proxmox selon la licence<\/p>\r\n                    <ul>\r\n                        <li><strong>Basic 1 cluster<\/strong><\/li>\r\n                        <li><strong>Pro 3 clusters<\/strong><\/li>\r\n                        <li><strong>Max 10 clusters<\/strong><\/li>\r\n                    <\/ul>\r\n                <\/div>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <!-- SECTION 2: CONFIGURATION BOT TELEGRAM -->\r\n        <section id=\"telegram-bot-setup\" class=\"manual-section\">\r\n            <h2>Configuration Bot Telegram<\/h2>\r\n            \r\n            <h3>Acc\u00e8s BotFather<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>\u00c9tape 1 : Acc\u00e9der \u00e0 l'application Telegram<\/h4>\r\n                <ol>\r\n                    <li>Ouvrir Telegram (mobile, desktop ou web)<\/li>\r\n                    <li>Dans la barre de recherche, taper : @BotFather<\/li>\r\n                    <li>Cliquer sur le bot officiel v\u00e9rifi\u00e9 avec \u2705<\/li>\r\n                    <li>Appuyer sur START ou envoyer \/start<\/li>\r\n                <\/ol>\r\n            <\/div>\r\n\r\n            <h3>Cr\u00e9er un Nouveau Bot<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>\u00c9tape 1 : D\u00e9marrer la cr\u00e9ation<\/h4>\r\n                <div class=\"manual-example\">\r\n                    <strong>Commande :<\/strong> \/newbot\r\n                <\/div>\r\n\r\n                <h4>\u00c9tape 2 : Configurer le nom du bot<\/h4>\r\n                <ul>\r\n                    <li>BotFather demanders le nom du bot<\/li>\r\n                    <li>R\u00e9pondre avec un nom descriptif : Bot de Gestion LoboGuard<\/li>\r\n                <\/ul>\r\n\r\n                <h4>\u00c9tape 3 : Configurer le nom d'utilisateur du bot<\/h4>\r\n                <ul>\r\n                    <li>Doit se terminer par \"bot\"<\/li>\r\n                    <li>Doit \u00eatre unique sur toute la plateforme Telegram<\/li>\r\n                    <li>Ne peut contenir que des lettres, chiffres et underscores<\/li>\r\n                    <li>Exemple : loboguard_mgmt_bot<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <h3>Obtenir le Token du Bot<\/h3>\r\n            <p>Une fois le processus termin\u00e9, BotFather fournira :<\/p>\r\n\r\n            <div class=\"manual-warning\">\r\n                <strong>IMPORTANT<\/strong>\r\n                <ul>\r\n                    <li>Copier et sauvegarder le token imm\u00e9diatement<\/li>\r\n                    <li>NE PAS partager le token avec des tiers<\/li>\r\n                    <li>Ce token est la cl\u00e9 d'acc\u00e8s \u00e0 votre bot<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <!-- SECTION 3: IDS TELEGRAM -->\r\n        <section id=\"telegram-ids\" class=\"manual-section\">\r\n            <h2>IDs Telegram<\/h2>\r\n\r\n            <h3>Obtenir votre ID de Chat Personnel<\/h3>\r\n            \r\n            <h4>M\u00e9thode 1 : Utiliser un bot auxiliaire<\/h4>\r\n            <ol>\r\n                <li>Rechercher @userinfobot dans Telegram<\/li>\r\n                <li>Lui envoyer \/start<\/li>\r\n                <li>Le bot r\u00e9pondra avec vos informations :<\/li>\r\n            <\/ol>\r\n            <div class=\"manual-example\">\r\nID: 123456789 \u2190 Ceci est votre Chat ID<br>\r\nFirst: Votre Nom<br>\r\nLang: fr\r\n            <\/div>\r\n\r\n            <h4>M\u00e9thode 2 : Utiliser votre propre bot<\/h4>\r\n            <ol>\r\n                <li>Envoyer \/start \u00e0 votre bot nouvellement cr\u00e9\u00e9<\/li>\r\n                <li>Ouvrir dans le navigateur : https:\/\/api.telegram.org\/bot<VOTRE_TOKEN>\/getUpdates<\/li>\r\n                <li>Remplacer <VOTRE_TOKEN> par votre token de bot<\/li>\r\n                <li>Chercher le champ \"id\" dans \"from\": 12345678910<\/li>\r\n            <\/ol>\r\n\r\n            <h3>Cr\u00e9er et Configurer un Groupe Priv\u00e9 pour les Alertes<\/h3>\r\n            \r\n            <div class=\"manual-steps\">\r\n                <h4>\u00c9tape 1 : Cr\u00e9er un groupe priv\u00e9<\/h4>\r\n                <ul>\r\n                    <li>Cr\u00e9er \"Nouveau Groupe\" dans Telegram<\/li>\r\n                    <li>Nom d'exemple : \"Alertes LoboGuard\"<\/li>\r\n                    <li>Ajouter les administrateurs qui recevront les alertes<\/li>\r\n                <\/ul>\r\n\r\n                <h4>\u00c9tape 2 : Ajouter le bot au groupe<\/h4>\r\n                <ul>\r\n                    <li>Aller dans les informations du groupe \u2192 Modifier<\/li>\r\n                    <li>S\u00e9lectionner Ajouter des membres<\/li>\r\n                    <li>Rechercher votre bot : @loboguard_mgmt_bot<\/li>\r\n                    <li>L'ajouter au groupe<\/li>\r\n                <\/ul>\r\n\r\n                <h4>\u00c9tape 3 : Configurer les permissions<\/h4>\r\n                <p>Dans les informations du groupe :<\/p>\r\n                <div class=\"manual-checkbox-list\">\r\n                    <div class=\"checkbox-item\">Envoyer des messages<\/div>\r\n                    <div class=\"checkbox-item\">Envoyer des m\u00e9dias<\/div>\r\n                    <div class=\"checkbox-item\">\u00c9pingler des Messages<\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <h3>Obtenir l'ID du Chat de Groupe<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>M\u00e9thode simple : Dans Telegram Web<\/h4>\r\n                <ul>\r\n                    <li>S\u00e9lectionner le groupe<\/li>\r\n                    <li>Dans la barre du navigateur : https:\/\/web.telegram.org\/k\/#-4819707521<\/li>\r\n                    <li>L'ID du groupe est : -4819707521 (toujours avec signe n\u00e9gatif pour les groupes priv\u00e9s)<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <!-- SECTION 4: ACC\u00c8S INITIAL -->\r\n        <section id=\"initial-access\" class=\"manual-section\">\r\n            <h2>Acc\u00e8s Initial et Configuration<\/h2>\r\n\r\n            <h3>Acc\u00e8s au Syst\u00e8me<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>\u00c9tape 1 : Acc\u00e9der au serveur<\/h4>\r\n                <ul>\r\n                    <li>Naviguer vers : https:\/\/IP_SERVEUR:8443<\/li>\r\n                    <li>Exemple : https:\/\/192.168.1.139:8443<\/li>\r\n                <\/ul>\r\n\r\n                <h4>\u00c9tape 2 : G\u00e9rer l'avertissement de certificat<\/h4>\r\n                <p>Les navigateurs afficheront des avertissements tels que :<\/p>\r\n                <ul>\r\n                    <li>Chrome : \"Votre connexion n'est pas priv\u00e9e\"<\/li>\r\n                    <li>Firefox : \"Avertissement : Risque de s\u00e9curit\u00e9 potentiel\"<\/li>\r\n                <\/ul>\r\n\r\n                <h4>\u00c9tape 3 : Accepter le certificat<\/h4>\r\n                <ul>\r\n                    <li>Cliquer sur Param\u00e8tres avanc\u00e9s<\/li>\r\n                    <li>S\u00e9lectionner Continuer vers [IP] (non s\u00e9curis\u00e9)<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <div class=\"manual-important\">\r\n                <strong>Note de S\u00e9curit\u00e9<\/strong>\r\n                <p>Le certificat auto-sign\u00e9 est s\u00e9curis\u00e9 et un nouveau est g\u00e9n\u00e9r\u00e9 \u00e0 chaque installation, bien que si vous voulez \u00e9viter les avertissements du navigateur, vous pouvez plus tard t\u00e9l\u00e9charger votre propre certificat SSL depuis l'interface d'administration.<\/p>\r\n            <\/div>\r\n\r\n            <h3>Premier Acc\u00e8s et Changement de Mot de Passe<\/h3>\r\n            <div class=\"manual-credentials\">\r\n                <h5>Identifiants par d\u00e9faut :<\/h5>\r\n                <div class=\"manual-example\">\r\n                    <strong>Nom d'utilisateur :<\/strong> lobo<br>\r\n                    <strong>Mot de passe :<\/strong> guard\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <p>Changement de mot de passe obligatoire : Le syst\u00e8me redirigera automatiquement vers le changement de mot de passe.<\/p>\r\n\r\n            <h4>Exigences du nouveau mot de passe :<\/h4>\r\n            <div class=\"manual-checkbox-list\">\r\n                <div class=\"checkbox-item\">Minimum 8 caract\u00e8res<\/div>\r\n                <div class=\"checkbox-item\">Une lettre majuscule (A-Z)<\/div>\r\n                <div class=\"checkbox-item\">Une lettre minuscule (a-z)<\/div>\r\n                <div class=\"checkbox-item\">Un chiffre (0-9)<\/div>\r\n            <\/div>\r\n\r\n            <h3>Acc\u00e9der au Panneau de Configuration<\/h3>\r\n            <p>Une fois le mot de passe chang\u00e9 :<\/p>\r\n            <ol>\r\n                <li>Cliquer sur Configuration dans le menu du haut<\/li>\r\n                <li>Vous acc\u00e9derez \u00e0 l'assistant de configuration \u00e9tape par \u00e9tape<\/li>\r\n            <\/ol>\r\n        <\/section>\r\n\r\n        <!-- SECTION 5: CONFIGURATION BOT -->\r\n        <section id=\"bot-configuration\" class=\"manual-section\">\r\n            <h2>Configuration Bot (Assistant)<\/h2>\r\n            <p>L'assistant guide \u00e0 travers 6 \u00e9tapes essentielles pour configurer compl\u00e8tement LoboGuard.<\/p>\r\n\r\n            <h3>Configuration Licence (\u00c9tape 1\/6)<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>Configuration :<\/h4>\r\n                <ol>\r\n                    <li>Entrer la cl\u00e9 de licence fournie par LoboBrothers<\/li>\r\n                    <li>Cliquer sur Suivant pour valider<\/li>\r\n                <\/ol>\r\n            <\/div>\r\n\r\n            <div class=\"manual-warning\">\r\n                <strong>Important<\/strong>\r\n                <p>Une fois activ\u00e9e sur une machine, la licence ne peut pas \u00eatre transf\u00e9r\u00e9e vers une autre. Pour des changements, contacter le support.<\/p>\r\n            <\/div>\r\n\r\n            <h3>Configuration Telegram (\u00c9tape 2\/6)<\/h3>\r\n            <div class=\"manual-table\">\r\n                <table>\r\n                    <thead>\r\n                        <tr>\r\n                            <th>Champ<\/th>\r\n                            <th>Description<\/th>\r\n                            <th>Exemple<\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody>\r\n                        <tr>\r\n                            <td>Token Bot<\/td>\r\n                            <td>Token complet de BotFather<\/td>\r\n                            <td>8452961006:AAHWhRkptJ937RgUgd5vC-Ml6biyyrME76I<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Chat ID<\/td>\r\n                            <td>ID personnel pour la gestion<\/td>\r\n                            <td>123456789<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Chat ID Alertes<\/td>\r\n                            <td>ID de groupe pour les alertes<\/td>\r\n                            <td>-123456789 ou -100123456789<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <div class=\"manual-tip\">\r\n                <strong>Astuce :<\/strong>\r\n                <p>S'il y a des probl\u00e8mes avec l'ID Chat Alertes, essayez d'ajouter le pr\u00e9fixe -100 avant l'ID du groupe, parfois l'ID r\u00e9el pour l'API est avec -100 devant.<\/p>\r\n            <\/div>\r\n\r\n            <p>Tester la connexion : Cliquer sur Tester la connexion Telegram. Si r\u00e9ussi, vous recevrez des messages de confirmation dans les deux chats.<\/p>\r\n\r\n            <h3>Configuration S\u00e9curit\u00e9 (\u00c9tape 3\/6)<\/h3>\r\n            <div class=\"manual-table\">\r\n                <table>\r\n                    <thead>\r\n                        <tr>\r\n                            <th>Param\u00e8tre<\/th>\r\n                            <th>Description<\/th>\r\n                            <th>Recommandation<\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody>\r\n                        <tr>\r\n                            <td>Secret Bot<\/td>\r\n                            <td>Cl\u00e9 d'acc\u00e8s initial<\/td>\r\n                            <td>Utiliser mot de passe s\u00e9curis\u00e9<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>ID Admin<\/td>\r\n                            <td>Super administrateur du bot<\/td>\r\n                            <td>Votre Chat ID personnel<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Dur\u00e9e Bannissement<\/td>\r\n                            <td>Temps de blocage apr\u00e8s \u00e9checs<\/td>\r\n                            <td>3600 secondes (1 heure)<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Tentatives Auth Max<\/td>\r\n                            <td>Tentatives avant bannissement<\/td>\r\n                            <td>5 tentatives<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Nombre Bans Max<\/td>\r\n                            <td>Combien de bans avant ban permanent<\/td>\r\n                            <td>3 tentatives<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>M\u00e9thode Confirmation<\/td>\r\n                            <td>PIN et OTP (pour actions critiques)<\/td>\r\n                            <td>OTP (plus s\u00e9curis\u00e9 et recommand\u00e9 en production) PIN (d\u00e9veloppement ou commodit\u00e9)<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Tentatives PIN Max<\/td>\r\n                            <td>Tentatives PIN<\/td>\r\n                            <td>3 tentatives<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Tentatives OTP Max<\/td>\r\n                            <td>Tentatives code OTP<\/td>\r\n                            <td>3 tentatives<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Expiration OTP<\/td>\r\n                            <td>Validit\u00e9 du code<\/td>\r\n                            <td>300 secondes (5 min)<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <h4>Fonctions Admin :<\/h4>\r\n            <p>Seul l'admin aura ces fonctionnalit\u00e9s suppl\u00e9mentaires dans Telegram, les autres recevront un message interdit.<\/p>\r\n            <ul>\r\n                <li><strong>\/auth_status :<\/strong> Voir les utilisateurs authentifi\u00e9s<\/li>\r\n                <li><strong>\/reset_auth :<\/strong> R\u00e9initialiser authentifications et bannissements<\/li>\r\n            <\/ul>\r\n\r\n            <h3>Configuration Email (\u00c9tape 4\/6)<\/h3>\r\n            <div class=\"manual-table\">\r\n                <table>\r\n                    <thead>\r\n                        <tr>\r\n                            <th>Champ<\/th>\r\n                            <th>Gmail<\/th>\r\n                            <th>Outlook<\/th>\r\n                            <th>Personnalis\u00e9<\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody>\r\n                        <tr>\r\n                            <td>Serveur SMTP<\/td>\r\n                            <td>smtp.gmail.com<\/td>\r\n                            <td>smtp.outlook.com<\/td>\r\n                            <td>votre.serveur.smtp<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Port SMTP<\/td>\r\n                            <td>587 (STARTTLS)<\/td>\r\n                            <td>587 (STARTTLS)<\/td>\r\n                            <td>587\/465\/25<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Type S\u00e9curit\u00e9<\/td>\r\n                            <td>STARTTLS<\/td>\r\n                            <td>STARTTLS<\/td>\r\n                            <td>Selon le fournisseur<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Nom d'utilisateur<\/td>\r\n                            <td>vous@gmail.com<\/td>\r\n                            <td>vous@outlook.com<\/td>\r\n                            <td>votre.utilisateur<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Mot de passe<\/td>\r\n                            <td>Mot de passe App<\/td>\r\n                            <td>Mot de passe Normal\/App<\/td>\r\n                            <td>Votre mot de passe<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <div class=\"manual-important\">\r\n                <strong>Pour Gmail :<\/strong>\r\n                <p>Dans votre compte Gmail :<\/p>\r\n                <ol>\r\n                    <li>Activer la v\u00e9rification en 2 \u00e9tapes<\/li>\r\n                    <li>G\u00e9n\u00e9rer un mot de passe d'application<\/li>\r\n                    <li>Utiliser Configuration Rapide \u2192 Preset Gmail (Important, si vous remplissez manuellement, cela ne fonctionnera pas)<\/li>\r\n                <\/ol>\r\n            <\/div>\r\n\r\n            <p>Configurer les destinataires OTP : Ajouter les emails qui recevront les codes de v\u00e9rification pour les actions critiques.<\/p>\r\n\r\n            <h3>Configuration Surveillance (\u00c9tape 5\/6)<\/h3>\r\n            \r\n            <h4>Fonctionnalit\u00e9s de Surveillance<\/h4>\r\n            <div class=\"manual-checkbox-list\">\r\n                <div class=\"checkbox-item\"><strong>Surveiller les Abonnements :<\/strong> Activer la surveillance des abonnements et licences syst\u00e8me<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller la Synchronisation Temps :<\/strong> Surveiller l'\u00e9tat de synchronisation temps syst\u00e8me<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller les Certificats :<\/strong> Surveiller l'expiration des certificats SSL\/TLS<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller le Pare-feu :<\/strong> Surveiller l'\u00e9tat du pare-feu et les r\u00e8gles<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller Haute Disponibilit\u00e9 :<\/strong> Surveiller l'\u00e9tat du cluster haute disponibilit\u00e9. Ajouter le mot \"critical\" aux notes d'une machine<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller Stockage Ceph :<\/strong> Surveiller le syst\u00e8me de stockage distribu\u00e9 Ceph<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller Stockage ZFS :<\/strong> Surveiller les pools ZFS, datasets et \u00e9tat de r\u00e9plication<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller les Sauvegardes :<\/strong> Surveiller l'\u00e2ge des sauvegardes<\/div>\r\n                <div class=\"checkbox-item\"><strong>Surveiller les Snapshots :<\/strong> Surveiller l'\u00e2ge des snapshots<\/div>\r\n            <\/div>\r\n\r\n            <h4>Param\u00e8tres de Surveillance de Base<\/h4>\r\n            <div class=\"manual-table\">\r\n                <table>\r\n                    <thead>\r\n                        <tr>\r\n                            <th>Param\u00e8tre<\/th>\r\n                            <th>Description<\/th>\r\n                            <th>Valeur par d\u00e9faut<\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody>\r\n                        <tr>\r\n                            <td>Intervalle Surveillance (secondes)<\/td>\r\n                            <td>Fr\u00e9quence des v\u00e9rifications d'\u00e9tat syst\u00e8me<\/td>\r\n                            <td>60 secondes<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <h4>Seuils de Ressources<\/h4>\r\n            <div class=\"manual-table\">\r\n                <table>\r\n                    <thead>\r\n                        <tr>\r\n                            <th>M\u00e9trique<\/th>\r\n                            <th>Seuil d'Alerte<\/th>\r\n                            <th>Temps d'Alerte<\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody>\r\n                        <tr>\r\n                            <td>Seuil CPU (%)<\/td>\r\n                            <td>90%<\/td>\r\n                            <td>300 secondes<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Seuil RAM (%)<\/td>\r\n                            <td>90%<\/td>\r\n                            <td>300 secondes<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Seuil Disque (%)<\/td>\r\n                            <td>90%<\/td>\r\n                            <td>-<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <h3>R\u00e9vision Finale (\u00c9tape 6\/6)<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>V\u00e9rification finale :<\/h4>\r\n                <div class=\"manual-checkbox-list\">\r\n                    <div class=\"checkbox-item\">Licence configur\u00e9e<\/div>\r\n                    <div class=\"checkbox-item\">Telegram configur\u00e9<\/div>\r\n                    <div class=\"checkbox-item\">S\u00e9curit\u00e9 configur\u00e9e<\/div>\r\n                    <div class=\"checkbox-item\">Email configur\u00e9 (optionnel mais requis pour OTP)<\/div>\r\n                    <div class=\"checkbox-item\">Surveillance configur\u00e9e (valeurs par d\u00e9faut utilis\u00e9es si non modifi\u00e9es)<\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <p>Cliquer sur Terminer pour compl\u00e9ter la configuration de base.<\/p>\r\n\r\n            <div class=\"manual-important\">\r\n                <strong>Barre d'Actions Rapides :<\/strong>\r\n                <p>Nous avons une barre d'actions rapides, o\u00f9 nous pouvons tester la configuration, aller aux logs, sauvegarder notre configuration, exporter, importer et g\u00e9rer les sauvegardes.<\/p>\r\n            <\/div>\r\n\r\n            <div class=\"manual-warning\">\r\n                <strong>Important :<\/strong>\r\n                <p>Cette sauvegarde enregistrera toute la configuration principale de notre bot et les clusters que nous ajouterons ensuite dans la section cluster, car pour le moment notre bot ne d\u00e9marrerait pas parce que, bien qu'il ait la configuration principale, nous n'avons pas enregistr\u00e9 les clusters que nous voulons g\u00e9rer, surveiller et rapporter.<\/p>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <!-- SECTION 6: CONFIGURATION CLUSTER -->\r\n        <section id=\"cluster-configuration\" class=\"manual-section\">\r\n            <h2>Configuration Cluster<\/h2>\r\n\r\n            <h3>Ajouter des Clusters Proxmox<\/h3>\r\n            <div class=\"manual-steps\">\r\n                <h4>Acc\u00e9der aux Clusters :<\/h4>\r\n                <ul>\r\n                    <li>Aller au menu Clusters<\/li>\r\n                    <li>Cliquer sur Ajouter Cluster<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <div class=\"manual-table\">\r\n                <table>\r\n                    <thead>\r\n                        <tr>\r\n                            <th>Champ<\/th>\r\n                            <th>Description<\/th>\r\n                            <th>Exemple<\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody>\r\n                        <tr>\r\n                            <td>Nom Cluster<\/td>\r\n                            <td>Nom descriptif<\/td>\r\n                            <td>PVE-LAB<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>URL API<\/td>\r\n                            <td>Point de terminaison Proxmox complet<\/td>\r\n                            <td>https:\/\/192.168.1.211:8006\/api2\/<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Nom d'utilisateur<\/td>\r\n                            <td>Utilisateur avec permissions API<\/td>\r\n                            <td>monitor@pve<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>ID Token<\/td>\r\n                            <td>Identifiant du token<\/td>\r\n                            <td>monitorcluster<\/td>\r\n                        <\/tr>\r\n                        <tr>\r\n                            <td>Secret Token<\/td>\r\n                            <td>Secret du token API<\/td>\r\n                            <td>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <h3>Configuration Permissions API<\/h3>\r\n            <p>Dans Proxmox VE :<\/p>\r\n            \r\n            <h4>1. Pour surveillance uniquement (lecture seule) :<\/h4>\r\n            <ul>\r\n                <li><strong>R\u00f4le :<\/strong> PVEAuditor<\/li>\r\n                <li><strong>Permissions :<\/strong> Lecture \u00e9tat, ressources et configurations<\/li>\r\n            <\/ul>\r\n\r\n            <h4>2. Pour gestion compl\u00e8te :<\/h4>\r\n            <ul>\r\n                <li><strong>R\u00f4les :<\/strong> PVEAuditor + PVEVMAdmin<\/li>\r\n                <li><strong>Permissions :<\/strong> Lecture + contr\u00f4le VMs\/LXCs + sauvegardes + snapshots<\/li>\r\n            <\/ul>\r\n\r\n            <h4>V\u00e9rification SSL :<\/h4>\r\n            <ul>\r\n                <li><strong>\u2705 Activ\u00e9 :<\/strong> Pour certificats valides<\/li>\r\n                <li><strong>\u274c D\u00e9sactiv\u00e9 :<\/strong> Pour certificats auto-sign\u00e9s<\/li>\r\n            <\/ul>\r\n\r\n            <p>Test de connexion : Si la configuration est correcte, vous verrez : \u2705Connect\u00e9 avec succ\u00e8s \u00e0 Proxmox VE X.X.X<\/p>\r\n\r\n            <h3>Gestion des Exclusions<\/h3>\r\n            <p>\u00c0 quoi \u00e7a sert ? Imaginez que vous avez des conteneurs et machines \u00e9teints et vous les allumez pour des probl\u00e8mes ou tests sp\u00e9cifiques, eh bien vous pouvez exclure ces machines ou conteneurs par ID de surveillance. Pareil avec le stockage, nous mettons simplement le nom du stockage.<\/p>\r\n\r\n            <h4>Types d'exclusions :<\/h4>\r\n            <ul>\r\n                <li><strong>Machines Virtuelles :<\/strong> Exclure VMs par ID (ex: 100, 101, 102)<\/li>\r\n                <li><strong>Conteneurs :<\/strong> Exclure LXCs par ID (ex: 200, 201)<\/li>\r\n                <li><strong>Stockage :<\/strong> Exclure stockage par nom (ex: local-lvm, backup-storage)<\/li>\r\n            <\/ul>\r\n\r\n            <h4>Cas d'usage :<\/h4>\r\n            <ul>\r\n                <li>VMs\/LXCs de test allum\u00e9s occasionnellement<\/li>\r\n                <li>Stockage temporaire ou de d\u00e9veloppement<\/li>\r\n                <li>Ressources ne n\u00e9cessitant pas surveillance continue<\/li>\r\n            <\/ul>\r\n\r\n            <p>Une fois ceci fait, nous pourrions d\u00e9marrer notre bot, pour cela nous allons au tableau de bord.<\/p>\r\n\r\n            <div class=\"manual-important\">\r\n                <strong>D\u00e9marrer le Bot :<\/strong>\r\n                <p>Comme vous pouvez le voir notre bot ne fonctionne pas, nous devons cliquer sur Start pour commencer \u00e0 travailler.<\/p>\r\n            <\/div>\r\n\r\n            <p>Une fois d\u00e9marr\u00e9 dans notre chat Telegram si tout a \u00e9t\u00e9 correctement configur\u00e9 il nous dira :<\/p>\r\n\r\n            <p>Comme c'est la premi\u00e8re fois que nous y acc\u00e9dons, il demandera le bot-secret ou pin selon la m\u00e9thode s\u00e9lectionn\u00e9e en s\u00e9curit\u00e9<\/p>\r\n\r\n            <p>Nous ne pourrons pas lui parler jusqu'\u00e0 ce que nous \u00e9crivions notre secret bot ou dans ce cas comme nous avons s\u00e9lectionn\u00e9 pin en s\u00e9curit\u00e9, le pin. Comme syst\u00e8me de s\u00e9curit\u00e9 et comme nous l'avons mentionn\u00e9 il a une limite de tentatives et une limite de bans, si vous accomplissez le nombre de bans, c'est-\u00e0-dire 3 bans par d\u00e9faut s'il n'a pas \u00e9t\u00e9 chang\u00e9, il sera banni d\u00e9finitivement.<\/p>\r\n\r\n            <p>Chaque Ban a diff\u00e9rentes phrases amusantes et al\u00e9atoires.<\/p>\r\n\r\n            <p>Si vous avez s\u00e9lectionn\u00e9 otp en s\u00e9curit\u00e9, d'abord il demandera le BOT_SECRET et ensuite l'OTP, donc, la s\u00e9curit\u00e9 est tr\u00e8s \u00e9lev\u00e9e.<\/p>\r\n\r\n            <div class=\"manual-warning\">\r\n                <strong>Important :<\/strong>\r\n                <p>Toute modification dans la configuration ou cluster depuis l'interface web, pour qu'elle soit refl\u00e9t\u00e9e vous devez aller au tableau de bord et red\u00e9marrer le bot.<\/p>\r\n            <\/div>\r\n\r\n            <p>Avec ceci nous aurions notre bot totalement configur\u00e9 et fonctionnel. Avant de passer aux fonctionnalit\u00e9s du bot nous allons expliquer le reste des sections de l'interface.<\/p>\r\n        <\/section>\r\n\r\n        <!-- SECTION 7: ADMINISTRATION SYST\u00c8ME -->\r\n        <section id=\"system-administration\" class=\"manual-section\">\r\n            <h2>Administration Syst\u00e8me<\/h2>\r\n\r\n            <h3>Gestion Certificat SSL<\/h3>\r\n            <h4>Fonctions disponibles :<\/h4>\r\n            <ul>\r\n                <li><strong>Voir l'\u00e9tat actuel :<\/strong> Informations certificat actif<\/li>\r\n                <li><strong>T\u00e9l\u00e9charger certificat :<\/strong> T\u00e9l\u00e9charger votre propre certificat<\/li>\r\n                <li><strong>CSR :<\/strong> G\u00e9n\u00e9rer CSR pour autorit\u00e9 de certification<\/li>\r\n                <li><strong>G\u00e9n\u00e9rer auto-sign\u00e9 :<\/strong> Cr\u00e9er nouveau certificat temporaire<\/li>\r\n                <li><strong>Sauvegarde\/Restaurer :<\/strong> G\u00e9rer sauvegardes certificats<\/li>\r\n            <\/ul>\r\n\r\n            <h3>Administration des Logs<\/h3>\r\n            <h4>Caract\u00e9ristiques :<\/h4>\r\n            <ul>\r\n                <li><strong>Nettoyage manuel :<\/strong> Supprimer logs plus anciens que N jours<\/li>\r\n                <li><strong>Nettoyage automatique :<\/strong> Programm\u00e9 quotidiennement \u00e0 02:00<\/li>\r\n                <li><strong>Configuration flexible :<\/strong> R\u00e9tention personnalisable<\/li>\r\n            <\/ul>\r\n\r\n            <h3>Configuration Param\u00e8tres Syst\u00e8me<\/h3>\r\n            \r\n            <h4>Informations Profil :<\/h4>\r\n            <ul>\r\n                <li>Changement nom d'utilisateur et nom complet<\/li>\r\n                <li>Configuration email pour notifications<\/li>\r\n                <li>Langue interface et th\u00e8me<\/li>\r\n            <\/ul>\r\n\r\n            <h4>S\u00e9curit\u00e9 :<\/h4>\r\n            <ul>\r\n                <li>Changement mot de passe<\/li>\r\n                <li>Authentification \u00e0 deux facteurs (2FA)<\/li>\r\n                <li>D\u00e9lai d'expiration session<\/li>\r\n            <\/ul>\r\n\r\n            <h4>Configuration Email :<\/h4>\r\n            <ul>\r\n                <li>SMTP pour notifications interface web<\/li>\r\n                <li>Requis pour r\u00e9cup\u00e9ration mot de passe<\/li>\r\n                <li>Alertes email pour \u00e9v\u00e9nements syst\u00e8me<\/li>\r\n            <\/ul>\r\n\r\n            <h4>Types d'Alertes :<\/h4>\r\n            <div class=\"manual-checkbox-list\">\r\n                <div class=\"checkbox-item\"><strong>Alertes Connexion :<\/strong> Notifications d'acc\u00e8s<\/div>\r\n                <div class=\"checkbox-item\"><strong>Alertes S\u00e9curit\u00e9 :<\/strong> \u00c9v\u00e9nements s\u00e9curit\u00e9<\/div>\r\n                <div class=\"checkbox-item\"><strong>Alertes \u00c9tat Bot :<\/strong> Changements \u00e9tat bot<\/div>\r\n                <div class=\"checkbox-item\"><strong>Alertes Changement Mot de Passe :<\/strong> Changements mot de passe<\/div>\r\n                <div class=\"checkbox-item\"><strong>Alertes Changement Nom Utilisateur :<\/strong> Changements nom utilisateur<\/div>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <!-- SECTION 8: V\u00c9RIFICATION ET TEST -->\r\n        <section id=\"verification-testing\" class=\"manual-section\">\r\n            <h2>V\u00e9rification et Test<\/h2>\r\n\r\n            <h3>Tests de Connexion<\/h3>\r\n            \r\n            <div class=\"manual-steps\">\r\n                <h4>D\u00e9marrer le bot :<\/h4>\r\n                <ol>\r\n                    <li>Aller au Tableau de bord<\/li>\r\n                    <li>Cliquer sur D\u00e9marrer Bot<\/li>\r\n                    <li>V\u00e9rifier \u00e9tat : \"En cours d'ex\u00e9cution\"<\/li>\r\n                <\/ol>\r\n            <\/div>\r\n\r\n            <h4>Message de bienvenue :<\/h4>\r\n            <p>Le bot enverra des messages de confirmation indiquant :<\/p>\r\n            <div class=\"manual-checkbox-list\">\r\n                <div class=\"checkbox-item\">Licence valide et validit\u00e9<\/div>\r\n                <div class=\"checkbox-item\">Clusters activ\u00e9s<\/div>\r\n                <div class=\"checkbox-item\">Instructions pour commencer (\/start)<\/div>\r\n            <\/div>\r\n\r\n            <h3>D\u00e9pannage Probl\u00e8mes Communs<\/h3>\r\n\r\n            <h4>Erreur : \"Token bot invalide\"<\/h4>\r\n            <div class=\"manual-steps\">\r\n                <h5>Causes :<\/h5>\r\n                <ul>\r\n                    <li>Token mal copi\u00e9 ou incomplet<\/li>\r\n                    <li>Espaces suppl\u00e9mentaires au d\u00e9but\/fin<\/li>\r\n                    <li>Token r\u00e9g\u00e9n\u00e9r\u00e9 dans BotFather<\/li>\r\n                <\/ul>\r\n\r\n                <h5>Solution :<\/h5>\r\n                <ul>\r\n                    <li>V\u00e9rifier token complet sans espaces<\/li>\r\n                    <li>R\u00e9g\u00e9n\u00e9rer si n\u00e9cessaire : \/mybots \u2192 s\u00e9lectionner bot \u2192 API Token \u2192 R\u00e9voquer token actuel<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <h4>Erreur : \"Chat non trouv\u00e9\" pour Chat ID<\/h4>\r\n            <div class=\"manual-steps\">\r\n                <h5>Causes :<\/h5>\r\n                <ul>\r\n                    <li>ID incorrect ou non initialis\u00e9<\/li>\r\n                    <li>Bot bloqu\u00e9 par utilisateur<\/li>\r\n                    <li>N'a pas envoy\u00e9 \/start au bot<\/li>\r\n                <\/ul>\r\n\r\n                <h5>Solution :<\/h5>\r\n                <ul>\r\n                    <li>Envoyer \/start au bot personnel<\/li>\r\n                    <li>V\u00e9rifier que le bot n'est pas bloqu\u00e9<\/li>\r\n                    <li>Confirmer ID positif pour chats personnels<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <h4>Erreur : \"Chat non trouv\u00e9\" pour Chat ID Alertes<\/h4>\r\n            <div class=\"manual-steps\">\r\n                <h5>Causes :<\/h5>\r\n                <ul>\r\n                    <li>Bot pas ajout\u00e9 au groupe<\/li>\r\n                    <li>ID groupe incorrect<\/li>\r\n                    <li>Pr\u00e9fixe -100 manquant<\/li>\r\n                <\/ul>\r\n\r\n                <h5>Solution :<\/h5>\r\n                <ul>\r\n                    <li>V\u00e9rifier que le bot est dans le groupe<\/li>\r\n                    <li>Essayer avec -100 + ID groupe<\/li>\r\n                    <li>Confirmer permissions bot dans groupe<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <h4>Erreur : \"Interdit : bot a \u00e9t\u00e9 bloqu\u00e9\"<\/h4>\r\n            <div class=\"manual-steps\">\r\n                <h5>Solution :<\/h5>\r\n                <ul>\r\n                    <li>Aller au chat avec le bot<\/li>\r\n                    <li>Appuyer sur START ou D\u00c9BLOQUER<\/li>\r\n                    <li>Red\u00e9marrer bot dans Tableau de bord<\/li>\r\n                <\/ul>\r\n            <\/div>\r\n\r\n            <h3>Bonnes Pratiques de S\u00e9curit\u00e9<\/h3>\r\n\r\n            <h4>Pour le Token Bot<\/h4>\r\n            <ul>\r\n                <li>\ud83d\udd12 Ne jamais partager le token publiquement<\/li>\r\n                <li>\ud83d\udcbe Sauvegarder dans gestionnaire mots de passe<\/li>\r\n                <li>\ud83d\udd04 R\u00e9g\u00e9n\u00e9rer si compromis comme nous l'avons vu pr\u00e9c\u00e9demment \/mybots \u2192 s\u00e9lectionner bot \u2192 API Token \u2192 R\u00e9voquer token actuel<\/li>\r\n            <\/ul>\r\n\r\n            <h4>Pour les Groupes<\/h4>\r\n            <ul>\r\n                <li>\ud83d\udd10 Garder les groupes priv\u00e9s<\/li>\r\n                <li>\ud83d\udc65 Seulement administrateurs n\u00e9cessaires<\/li>\r\n                <li>\u2699\ufe0f R\u00e9viser permissions r\u00e9guli\u00e8rement<\/li>\r\n            <\/ul>\r\n\r\n            <h4>Pour le Syst\u00e8me<\/h4>\r\n            <ul>\r\n                <li>\ud83c\udf10 Ne pas exposer \u00e0 internet, si vous voulez acc\u00e8s depuis autres endroits utiliser VPN ou syst\u00e8mes s\u00e9curis\u00e9s<\/li>\r\n                <li>\ud83d\udee1\ufe0f Configurer pare-feu appropri\u00e9<\/li>\r\n                <li>\ud83d\udcbe Effectuer sauvegardes p\u00e9riodiques<\/li>\r\n                <li>\ud83d\udd10 Activer 2FA dans interface web et bot<\/li>\r\n                <li>\ud83d\udce7 Configurer notifications s\u00e9curit\u00e9<\/li>\r\n            <\/ul>\r\n\r\n            <div class=\"manual-important\">\r\n                <h4>R\u00e9sum\u00e9 Configuration<\/h4>\r\n                <p>En terminant ce manuel vous aurez :<\/p>\r\n                <div class=\"manual-checkbox-list\">\r\n                    <div class=\"checkbox-item\">Bot Telegram cr\u00e9\u00e9 avec token unique<\/div>\r\n                    <div class=\"checkbox-item\">Chat personnel configur\u00e9 pour gestion directe<\/div>\r\n                    <div class=\"checkbox-item\">Groupe priv\u00e9 configur\u00e9 pour alertes syst\u00e8me<\/div>\r\n                    <div class=\"checkbox-item\">LoboGuard enti\u00e8rement configur\u00e9 et op\u00e9rationnel<\/div>\r\n                    <div class=\"checkbox-item\">Clusters Proxmox surveill\u00e9s et g\u00e9rables<\/div>\r\n                    <div class=\"checkbox-item\">Syst\u00e8me s\u00e9curis\u00e9 avec authentification robuste<\/div>\r\n                <\/div>\r\n                <p>Le bot sera compl\u00e8tement op\u00e9rationnel pour g\u00e9rer votre infrastructure LoboGuard depuis Telegram avec capacit\u00e9s compl\u00e8tes de surveillance, alerte, gestion \u00e0 distance et reporting.<\/p>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <!-- NAVIGATION SECTIONS -->\r\n        <div class=\"section-navigation\">\r\n            <div class=\"section-nav-container\">\r\n                <button class=\"section-nav-btn prev-btn\" id=\"prev-section\" disabled>\r\n                    <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                        <polyline points=\"15,18 9,12 15,6\"><\/polyline>\r\n                    <\/svg>\r\n                    <div class=\"nav-text\">\r\n                        <span class=\"nav-label\">Pr\u00e9c\u00e9dent<\/span>\r\n                        <span class=\"nav-title\" id=\"prev-title\"><\/span>\r\n                    <\/div>\r\n                <\/button>\r\n                \r\n                <div class=\"section-counter\">\r\n                    <span id=\"current-section\">1<\/span> \/ <span id=\"total-sections\">8<\/span>\r\n                <\/div>\r\n                \r\n                <button class=\"section-nav-btn next-btn\" id=\"next-section\">\r\n                    <div class=\"nav-text\">\r\n                        <span class=\"nav-label\">Suivant<\/span>\r\n                        <span class=\"nav-title\" id=\"next-title\">Configuration Bot Telegram<\/span>\r\n                    <\/div>\r\n                    <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                        <polyline points=\"9,18 15,12 9,6\"><\/polyline>\r\n                    <\/svg>\r\n                <\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n    const navLinks = document.querySelectorAll('.manual-nav a');\r\n    const sections = document.querySelectorAll('.manual-section');\r\n    const prevBtn = document.getElementById('prev-section');\r\n    const nextBtn = document.getElementById('next-section');\r\n    const currentCounter = document.getElementById('current-section');\r\n    const prevTitle = document.getElementById('prev-title');\r\n    const nextTitle = document.getElementById('next-title');\r\n    \r\n    let currentIndex = 0;\r\n    const sectionData = [\r\n        { id: 'introduction', title: 'Introduction' },\r\n        { id: 'telegram-bot-setup', title: 'Configuration Bot Telegram' },\r\n        { id: 'telegram-ids', title: 'IDs Telegram' },\r\n        { id: 'initial-access', title: 'Acc\u00e8s Initial' },\r\n        { id: 'bot-configuration', title: 'Configuration Bot' },\r\n        { id: 'cluster-configuration', title: 'Configuration Cluster' },\r\n        { id: 'system-administration', title: 'Administration Syst\u00e8me' },\r\n        { id: 'verification-testing', title: 'V\u00e9rification et Test' }\r\n    ];\r\n    \r\n    \/\/ Fonction pour faire scroll suave vers le haut\r\n    function scrollToTop() {\r\n        \/\/ Essayer plusieurs m\u00e9thodes de scroll\r\n        const manualContent = document.querySelector('.manual-content');\r\n        const body = document.body;\r\n        const html = document.documentElement;\r\n        \r\n        \/\/ M\u00e9thode 1: Scroll dans le conteneur principal s'il existe\r\n        if (manualContent) {\r\n            manualContent.scrollTop = 0;\r\n        }\r\n        \r\n        \/\/ M\u00e9thode 2: Scroll dans body et html (pour plus de compatibilit\u00e9)\r\n        if (body) {\r\n            body.scrollTop = 0;\r\n        }\r\n        \r\n        if (html) {\r\n            html.scrollTop = 0;\r\n        }\r\n        \r\n        \/\/ M\u00e9thode 3: window.scrollTo comme dernier recours\r\n        window.scrollTo(0, 0);\r\n        \r\n        \/\/ Aussi essayer avec requestAnimationFrame pour assurer l'ex\u00e9cution\r\n        requestAnimationFrame(() => {\r\n            if (manualContent) manualContent.scrollTop = 0;\r\n            window.scrollTo(0, 0);\r\n        });\r\n    }\r\n    \r\n    \/\/ Gestionnaires de clic navigation\r\n    navLinks.forEach((link, index) => {\r\n        link.addEventListener('click', function(e) {\r\n            e.preventDefault();\r\n            navigateToSection(index);\r\n        });\r\n    });\r\n    \r\n    \/\/ Boutons Pr\u00e9c\u00e9dent\/Suivant avec scroll automatique\r\n    prevBtn.addEventListener('click', () => {\r\n        if (currentIndex > 0) {\r\n            navigateToSection(currentIndex - 1);\r\n            \/\/ Petit d\u00e9lai pour assurer mise \u00e0 jour DOM\r\n            setTimeout(scrollToTop, 50);\r\n        }\r\n    });\r\n    \r\n    nextBtn.addEventListener('click', () => {\r\n        if (currentIndex < sectionData.length - 1) {\r\n            navigateToSection(currentIndex + 1);\r\n            \/\/ Petit d\u00e9lai pour assurer mise \u00e0 jour DOM\r\n            setTimeout(scrollToTop, 50);\r\n        }\r\n    });\r\n    \r\n    function navigateToSection(index) {\r\n        \/\/ Cacher toutes les sections\r\n        sections.forEach(section => section.classList.remove('active'));\r\n        navLinks.forEach(link => link.classList.remove('active'));\r\n        \r\n        \/\/ Montrer section cible\r\n        sections[index].classList.add('active');\r\n        navLinks[index].classList.add('active');\r\n        \r\n        currentIndex = index;\r\n        updateNavigation();\r\n    }\r\n    \r\n    function updateNavigation() {\r\n        currentCounter.textContent = currentIndex + 1;\r\n        \r\n        \/\/ Mettre \u00e0 jour bouton pr\u00e9c\u00e9dent\r\n        if (currentIndex > 0) {\r\n            prevBtn.disabled = false;\r\n            prevTitle.textContent = sectionData[currentIndex - 1].title;\r\n        } else {\r\n            prevBtn.disabled = true;\r\n            prevTitle.textContent = '';\r\n        }\r\n        \r\n        \/\/ Mettre \u00e0 jour bouton suivant\r\n        if (currentIndex < sectionData.length - 1) {\r\n            nextBtn.disabled = false;\r\n            nextTitle.textContent = sectionData[currentIndex + 1].title;\r\n        } else {\r\n            nextBtn.disabled = true;\r\n            nextTitle.textContent = '';\r\n        }\r\n    }\r\n    \r\n    \/\/ Initialiser\r\n    updateNavigation();\r\n    \r\n    \/\/ Navigation clavier avec scroll automatique\r\n    document.addEventListener('keydown', function(e) {\r\n        if (e.target.tagName === 'INPUT' || e.target.tagName === 'TEXTAREA') return;\r\n        \r\n        switch(e.key) {\r\n            case 'ArrowLeft':\r\n                if (currentIndex > 0) {\r\n                    navigateToSection(currentIndex - 1);\r\n                    setTimeout(scrollToTop, 50);\r\n                }\r\n                break;\r\n            case 'ArrowRight':\r\n                if (currentIndex < sectionData.length - 1) {\r\n                    navigateToSection(currentIndex + 1);\r\n                    setTimeout(scrollToTop, 50);\r\n                }\r\n                break;\r\n        }\r\n    });\r\n});\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Manuel de Configuration LoboGuard Table des Mati\u00e8res Introduction Configuration Bot Telegram IDs Telegram Acc\u00e8s Initial Configuration Bot Configuration Cluster Administration Syst\u00e8me V\u00e9rification et Test Introduction Description G\u00e9n\u00e9rale LoboGuard est une solution avanc\u00e9e et s\u00e9curis\u00e9e de surveillance, d&rsquo;alerte, de gestion et de reporting pour les infrastructures Proxmox, utilisant Telegram comme interface de contr\u00f4le \u00e0 distance et [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1159","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Documentation - LoboGuard<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Documentation - LoboGuard\" \/>\n<meta property=\"og:description\" content=\"Manuel de Configuration LoboGuard Table des Mati\u00e8res Introduction Configuration Bot Telegram IDs Telegram Acc\u00e8s Initial Configuration Bot Configuration Cluster Administration Syst\u00e8me V\u00e9rification et Test Introduction Description G\u00e9n\u00e9rale LoboGuard est une solution avanc\u00e9e et s\u00e9curis\u00e9e de surveillance, d&rsquo;alerte, de gestion et de reporting pour les infrastructures Proxmox, utilisant Telegram comme interface de contr\u00f4le \u00e0 distance et [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/\" \/>\n<meta property=\"og:site_name\" content=\"LoboGuard\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-02T14:44:50+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@LoboBrothers\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"13 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/\",\"url\":\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/\",\"name\":\"Documentation - LoboGuard\",\"isPartOf\":{\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/#website\"},\"datePublished\":\"2025-08-28T15:04:25+00:00\",\"dateModified\":\"2025-12-02T14:44:50+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/loboguard.lobobrothers.com\/fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Documentation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/#website\",\"url\":\"https:\/\/loboguard.lobobrothers.com\/fr\/\",\"name\":\"LoboGuard\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/loboguard.lobobrothers.com\/fr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/#organization\",\"name\":\"Lobo Brothers Technology\",\"alternateName\":\"LoboGuard\",\"url\":\"https:\/\/loboguard.lobobrothers.com\/fr\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/loboguard.lobobrothers.com\/wp-content\/uploads\/2025\/08\/cropped-loboguard.png\",\"contentUrl\":\"https:\/\/loboguard.lobobrothers.com\/wp-content\/uploads\/2025\/08\/cropped-loboguard.png\",\"width\":512,\"height\":512,\"caption\":\"Lobo Brothers Technology\"},\"image\":{\"@id\":\"https:\/\/loboguard.lobobrothers.com\/fr\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/LoboBrothers\",\"https:\/\/es.linkedin.com\/company\/lobobrothers\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Documentation - LoboGuard","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/","og_locale":"fr_FR","og_type":"article","og_title":"Documentation - LoboGuard","og_description":"Manuel de Configuration LoboGuard Table des Mati\u00e8res Introduction Configuration Bot Telegram IDs Telegram Acc\u00e8s Initial Configuration Bot Configuration Cluster Administration Syst\u00e8me V\u00e9rification et Test Introduction Description G\u00e9n\u00e9rale LoboGuard est une solution avanc\u00e9e et s\u00e9curis\u00e9e de surveillance, d&rsquo;alerte, de gestion et de reporting pour les infrastructures Proxmox, utilisant Telegram comme interface de contr\u00f4le \u00e0 distance et [&hellip;]","og_url":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/","og_site_name":"LoboGuard","article_modified_time":"2025-12-02T14:44:50+00:00","twitter_card":"summary_large_image","twitter_site":"@LoboBrothers","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"13 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/","url":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/","name":"Documentation - LoboGuard","isPartOf":{"@id":"https:\/\/loboguard.lobobrothers.com\/fr\/#website"},"datePublished":"2025-08-28T15:04:25+00:00","dateModified":"2025-12-02T14:44:50+00:00","breadcrumb":{"@id":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/loboguard.lobobrothers.com\/fr\/documentation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/loboguard.lobobrothers.com\/fr\/"},{"@type":"ListItem","position":2,"name":"Documentation"}]},{"@type":"WebSite","@id":"https:\/\/loboguard.lobobrothers.com\/fr\/#website","url":"https:\/\/loboguard.lobobrothers.com\/fr\/","name":"LoboGuard","description":"","publisher":{"@id":"https:\/\/loboguard.lobobrothers.com\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/loboguard.lobobrothers.com\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/loboguard.lobobrothers.com\/fr\/#organization","name":"Lobo Brothers Technology","alternateName":"LoboGuard","url":"https:\/\/loboguard.lobobrothers.com\/fr\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/loboguard.lobobrothers.com\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/loboguard.lobobrothers.com\/wp-content\/uploads\/2025\/08\/cropped-loboguard.png","contentUrl":"https:\/\/loboguard.lobobrothers.com\/wp-content\/uploads\/2025\/08\/cropped-loboguard.png","width":512,"height":512,"caption":"Lobo Brothers Technology"},"image":{"@id":"https:\/\/loboguard.lobobrothers.com\/fr\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/LoboBrothers","https:\/\/es.linkedin.com\/company\/lobobrothers"]}]}},"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/pages\/1159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/comments?post=1159"}],"version-history":[{"count":3,"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/pages\/1159\/revisions"}],"predecessor-version":[{"id":1975,"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/pages\/1159\/revisions\/1975"}],"wp:attachment":[{"href":"https:\/\/loboguard.lobobrothers.com\/fr\/wp-json\/wp\/v2\/media?parent=1159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}