Plugin Apps-OPNSense-SSH
Sommaire
Pré-requis
Le serveur centreon doit pouvoir accéder sans mot de passe en ssh à la machine à superviser
- depuis le compte: centreon-engine
- vers le compte: remote-centreon
Generer une clé SSH
Si ça n'est pas dejà fait, nous allons créer une clé pour l'utilisateur centreon-engine
Sur le serveur centreon:
su centreon-engine ssh-keygen -t rsa -b 2048
Copier le contenue de la clé public
cat /var/lib/centreon-engine/.ssh/id_rsa.pub
Créer un compte sur OPNSense
Système: Accès: Utilisateurs
Renseigner:
- Nom d'utilisateur: remote-centreon
- Cocher: Générer un mot de passe aléatoire
- Shell de connexion: /bin/sh
- Membre du groupe: admins
- Clés autorisées: coller la clé public créer précedement (Exemple: ssh-rsa AAAAB3NzaC1yc... ...XOQKm/x root)
Sauvegarder
Tester la connexion en ssh depuis le serveur Centreon
su remote-centreon ssh remote-centreon@10.10.10.1 -p 8022
ECDSA key fingerprint is SHA256:SoX8QCm... ...6CRPJMI. Are you sure you want to continue connecting (yes/no)? yes
Si il ne demande pas de mot de passe, c'est gagné
Installation Plugin
Installation du plugin coté OPNSense
sudo pkg install nagios-plugins
Les plugins précompilés se trouvent maintenant dans le répertoire:
/usr/local/libexec/nagios
Tester avec la commande
/usr/local/libexec/nagios/check_procs PROCS OK: 69 processes | procs=69;;;0;
Installer les plugins pour PFsense
curl -LO https://github.com/oneoffdallas/pfsense-nagios-checks/archive/master.zip sudo unzip -j master.zip -d /usr/local/libexec/nagios/ sudo chmod +x /usr/local/libexec/nagios/check_pf_*
Les commandes Nagios
Nombre de processus en cours
/usr/local/libexec/nagios/check_procs -w 200 -c 400
Nombre d'utilisateur connecté
/usr/local/libexec/nagios/check_users -w 5 -c 1
Ping depuis opnsense
/usr/local/libexec/nagios/check_icmp -H 208.67.222.222 -w 80,10% -c 150,40%
NTP
/usr/local/libexec/nagios/check_ntp_time -H time.google.com
DISK
root
/usr/local/libexec/nagios/check_disk -w 20% -c 5% -p /
/usr/local/libexec/nagios/check_disk -w 20% -c 5% -p /var/run
CPU
/usr/local/libexec/nagios/check_load -w 3,2.8,2.6 -c 10,7,5 -r
SWAP
/usr/local/libexec/nagios/check_swap -w 90% -c 40%
Les commandes PFSense
CPU
/usr/local/libexec/nagios/check_pf_cpu -w 85 -c 95
Memoire
/usr/local/libexec/nagios/check_pf_mem -w 90 -c 95
Service
Attention: Ne fonctionne pas que sur pfsense, pas sur opnsense
/usr/local/libexec/nagios/check_pf_services -name snort
/usr/local/libexec/nagios/check_pf_services -name pinger
/usr/local/libexec/nagios/check_pf_services -name dhcpd
/usr/local/libexec/nagios/check_pf_services -name squid
/usr/local/libexec/nagios/check_pf_services -name pfb_dnsbl
/usr/local/libexec/nagios/check_pf_services -name pfb_filter
interface
/usr/local/libexec/nagios/check_pf_interface -i igb0 -name WAN
/usr/local/libexec/nagios/check_pf_interface -i igb1 -name LAN
/usr/local/libexec/nagios/check_pf_interface -i igb1_vlan6 -name VOIP
/usr/local/libexec/nagios/check_pf_interface -i ovpns1
VPN
/usr/local/libexec/nagios/check_pf_ipsec_tunnel -e <IP address or hostname of remote>
/usr/local/libexec/nagios/check_pf_ipsec_tunnel -e <IP address or hostname of remote> -name DallasTX
FIREWALL
/usr/local/libexec/nagios/check_pf_state_table -w 60 -c 90
Version
Attention: Ne fonctionne pas que sur pfsense, pas sur opnsense
/usr/local/libexec/nagios/check_pf_version
A voir un jour pour adapter le code
pour info:
Récupérer version disponible
opnsense-update -v
Récupérer version instalé
opnsense-version -v
Uptime
/usr/local/libexec/nagios/check_pf_uptime
Temperature CPU
Attention: Ne fonctionne pas avec les APU2
/usr/local/libexec/nagios/check_pf_cpu_temp -w 75 -c 90