OSSEC V3.0.0 stable compilation agent

OSSEC V3.0.0 stable compilation agent jpp

Installation dans une machine KVM munie d'une debian Stretch "de base". 
Installation d'un environnement de compilation : gcc ... make. 
La aussi j'ai du effectuer un ln -s 
cd /usr/bin 
sudo ln -s gcc-6 cc 
Curieusement ar,nm et ranlib étaient OK. 
  
Aucun autre pré-requis pour l'installation de l'agent.

Lancer la compilation :

cd le_répertoire de compil/src 
make TARGET=agent 2>&1 | tee LOG.MAKE 
    CC external/cJSON/cJSON.o 
    LINK libcJSON.a 
    RANLIB libcJSON.a 
...... 
make[1]: Leaving directory '/usr/src/PGM/BUILD/ossec-hids-master/src' 
Done building agent

La trace ne montre aucune erreur ou même warning, on va donc pouvoir lancer le script "install.sh" (toujours dans le répertoire de compil) ... et voir la trace d'installation. 
Tout s'est bien passé, on passe en "root" pour aller faire les ajustements de paramétrage nécessaires du fichier ossec.conf : 
- enlever les fichiers inutiles (avec prudence) 
- paramétrer les répertoires à surveiller 
- ... 
Le fichier agent.conf a disparu ce qui est plutôt un bien. 
Il faut maintenant extraire une clef du serveur :

cd /var/ossec/bin 
./manage_agents 
**************************************** 
* OSSEC HIDS v2.9.0 Agent manager.     * 
* The following options are available: * 
**************************************** 
   (A)dd an agent (A). 
   (E)xtract key for an agent (E). 
   (L)ist already added agents (L). 
   (R)emove an agent (R). 
   (Q)uit. 
Choose your action: A,E,L,R or Q: -->A 
- Adding a new agent (use '\q' to return to the main menu). 
  Please provide the following: 
   * A name for the new agent: -->xxxxxxx 
   * The IP Address of the new agent: XXX.XXX.XXX.XXX 
   * An ID for the new agent[001]: 
Agent information: 
   ID:001 
   Name:kvmtest 
   IP Address:192.168.100.100

Confirm adding it?(y/n): -->y 
Agent added. 
**************************************** 
* OSSEC HIDS v2.9.0 Agent manager.     * 
* The following options are available: * 
**************************************** 
   (A)dd an agent (A). 
   (E)xtract key for an agent (E). 
   (L)ist already added agents (L). 
   (R)emove an agent (R). 
   (Q)uit. 
Choose your action: A,E,L,R or Q: -->E 
Available agents: 
   ID: 001, Name: kvmtest, IP: 192.168.100.100 
Provide the ID of the agent to extract the key (or '\q' to quit): 001 
Agent key information for '001' is: 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxU=

** Press ENTER to return to the main menu.

Copier cette valeur de "clef" pour recopie sur le client. 
Sur la machine cliente :

cd /var/ossec/bin 
./manage_agents 
**************************************** 
* OSSEC HIDS v2.9.0 Agent manager.     * 
* The following options are available: * 
**************************************** 
   (I)mport key from the server (I). 
   (Q)uit. 
Choose your action: I or Q: I

* Provide the Key generated by the server. 
* The best approach is to cut and paste it. 
*** OBS: Do not include spaces or new lines.

Paste it here (or '\q' to quit): xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxU= 
Agent information: 
   ID:001 
   Name:kvmtest 
   IP Address:192.168.100.100 
Confirm adding it?(y/n): y 
Added. 
** Press ENTER to return to the main menu.

Puis lancer notre agent et aller voir ce qui se passe dans les logs, pour moi tout est OK. Ne pas oublier de mettre le lancement en mode automatique : 
update-rc.d ossec enable 
systemctl start ossec

Et rien n'apparait dans la base de données du serveur, un oeil sur les logs qui montre des messages : 
...ossec-syscheckd: WARN: Process locked. Waiting for permission... 
...ossec-logcollector: WARN: Process locked. Waiting for permission... 
Il suffit d'enlever le fichier  /var/ossec/queue/ossec/.wait et tout rentre dans l'ordre.

Au bout de quelques minutes des messages apparaissent sur le serveur ce qui est plutôt bon signe. 
En bref : tout c'est (presque) bien passé. 
Petit contrôle sur le serveur :

mysql .... 
select lo.name,al.rule_id 
from alert al, location lo 
where al.location_id = lo.id 
order by 1;

Si cela "crache" quelque chose avec le nom du client dans la "location" c'est bon signe.