patchcenter/app/templates/qualys_agent_audit.html

74 lines
3.9 KiB
HTML

{% extends 'base.html' %}
{% block title %}Audit Qualys Agent — {{ hostname }}{% endblock %}
{% block content %}
<div class="flex justify-between items-center mb-4">
<div>
<h2 class="text-xl font-bold text-cyber-accent">Audit Qualys Agent</h2>
<p class="text-xs text-gray-500 mt-1 font-mono">{{ hostname }}{% if audit.resolved_fqdn %} → {{ audit.resolved_fqdn }}{% endif %}</p>
</div>
<div style="display:flex;gap:8px">
<a href="/qualys/agents/{{ hostname }}/audit-qualys" class="btn-sm bg-cyber-border text-gray-300 px-3 py-2 text-xs">Relancer</a>
<a href="/qualys/agents#inactive-list" class="btn-sm bg-cyber-border text-gray-300 px-3 py-2 text-xs">← Retour</a>
</div>
</div>
<!-- Bandeau statut connexion -->
<div class="card p-3 mb-4" style="
{% if audit.status == 'OK' %}border:1px solid #22c55e;background:rgba(34,197,94,0.08);
{% elif audit.status == 'CONNECTION_FAILED' %}border:1px solid #ef4444;background:rgba(239,68,68,0.08);
{% else %}border:1px solid #f59e0b;background:rgba(245,158,11,0.08);{% endif %}">
<div class="flex justify-between items-center text-xs">
<div>
<span class="font-bold {% if audit.status == 'OK' %}text-cyber-green{% elif audit.status == 'CONNECTION_FAILED' %}text-cyber-red{% else %}text-cyber-yellow{% endif %}">
{% if audit.status == 'OK' %}✓ Connecté{% elif audit.status == 'CONNECTION_FAILED' %}✗ Connexion échouée{% else %}⚠ {{ audit.status }}{% endif %}
</span>
<span class="text-gray-400 ml-3">{{ audit.connection_method or '-' }}</span>
{% if audit.error_msg %}<span class="text-cyber-red ml-3">{{ audit.error_msg }}</span>{% endif %}
</div>
<span class="text-gray-500 font-mono">{{ audit.audit_date }}</span>
</div>
</div>
{% if audit.status == 'OK' %}
<!-- OS détecté -->
<div class="card p-4 mb-4">
<h3 class="text-sm font-bold text-cyber-accent mb-2">OS détecté</h3>
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;white-space:pre-wrap">{{ audit.os_release or '(vide)' }}</pre>
</div>
<!-- Statut du service -->
<div class="card p-4 mb-4">
<h3 class="text-sm font-bold text-cyber-accent mb-2">État du service <code class="text-cyber-yellow">qualys-cloud-agent</code></h3>
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;white-space:pre-wrap">{{ audit.agent_status or '(vide)' }}</pre>
</div>
<!-- Version agent -->
<div class="card p-4 mb-4">
<h3 class="text-sm font-bold text-cyber-accent mb-2">Version agent</h3>
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;white-space:pre-wrap">{{ audit.agent_version or '(vide)' }}</pre>
</div>
<!-- Log agent Qualys -->
<div class="card p-4 mb-4">
<h3 class="text-sm font-bold text-cyber-accent mb-2">Log agent Qualys (50 dernières lignes)</h3>
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;max-height:400px;white-space:pre-wrap">{{ audit.agent_log or '(vide)' }}</pre>
</div>
<!-- Log système -->
<div class="card p-4 mb-4">
<h3 class="text-sm font-bold text-cyber-accent mb-2">Log système (journalctl / messages)</h3>
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;max-height:400px;white-space:pre-wrap">{{ audit.system_log or '(vide)' }}</pre>
</div>
{% else %}
<div class="card p-4 mb-4">
<p class="text-sm text-gray-400">Impossible de récupérer les informations de l'agent. Vérifie : SSH ouvert (port 22), méthode SSH configurée pour ce serveur dans <a href="/server/{{ hostname }}" class="text-cyber-accent hover:underline">la fiche serveur</a>, agent installé, OS supporté.</p>
</div>
{% endif %}
{% endblock %}