Comment installer la passerelle sms kannel sur Debian Linux pour les notifications SMS nagios
Ce que vous allez apprendre
Dans cet article, vous allez apprendre comment installer le serveur Kannel sur Debian et l’intégrer à un serveur Nagios pour les notifications par SMS. Nous supposons que le lecteur dispose déjà d’un serveur Nagios fonctionnel et nous nous concentrerons sur l’installation de Kannel et son intégration avec Nagios.
Exigences
- Accès privilégié à votre serveur Debian
- Compte SMPP ou modem USB
- Un serveur Nagios
- Accès privilégié à votre serveur Nagios
Difficulté
DOULEUR MOYENNE
Conventions
# – nécessite que des commandes Linux données soient exécutées avec les privilèges root, soit directement en tant qu’utilisateur root, soit en utilisant la commande sudo
$– nécessite que les commandes Linux données soient exécutées en tant qu’utilisateur régulier non privilégié
Configuration de Kannel
Installer Kannel
L’installation de kannel se fait simplement via la commande apt-get :
apt-get install kannel
Configuration initiale
Après avoir installé kannel, nous allons mettre en place une première configuration avant d’aller plus loin.
Sauvegardons le fichier de configuration par défaut et créons le nôtre.
cd /etc/kannel/
mv kannel.conf kannel.conf.bak
touch kannel.conf
Ouvrons maintenant le fichier de configuration
vi /etc/kannel/kannel.conf
Et remplissez-le avec le contenu suivant
CORE
group = core
admin-port = 13000
admin-password = [password for kannel admin]
status-password = [password to get kannel status]
wdp-interface-name = "*"
log-file = "/var/log/kannel/kannel.log"
log-level = 0
access-log = "/var/log/kannel/access.log"
smsbox-port = 13001
SMSBOX SETUP
group = smsbox
bearerbox-host = 127.0.0.1
sendsms-port = 13002
log-file = "/var/log/kannel/smsbox.log"
SENDING SMS
group = sendsms-user
username = [username for sending sms]
password = [password for sending sms]
Passer Kannel en mode smsbox
Par défaut, Kannel fonctionne comme une wapbox, mais dans notre cas, nous voulons qu’il fonctionne comme smsbox.
Pour ce faire, nous allons modifier /etc/default/kannel
vi /etc/default/kannel
Commentez START_WAPBOX=1 et décommentez START_SMSBOX=1
#START_WAPBOX=1
START_SMSBOX=1
Créer un SMSC
Pour que Kannel puisse envoyer des SMS, il doit utiliser un SMSC (Short Message Service Center). Nous devons donc créer une configuration SMSC.
Utilisation d’un compte SMPP
Si nous voulons envoyer des SMS via un compte SMPP, nous ajouterons les lignes suivantes à /etc/kannel/kannel.conf :
SMSC
group = smsc
smsc = smpp
smsc-id = smsc1
system-type = "VMA"
host = xxxx.xxxx.xxxx.xxxx
port = xxxx
smsc-username = "username"
smsc-password = "password"
Veuillez adapter la configuration, en utilisant les valeurs que votre fournisseur vous a données.
Utilisation d’un modem USB
Si nous voulons envoyer des SMS via un modem USB, nous devons installer wvdial :
apt-get install wvdial
Après l’installation, nous exécuterons wvdialconf pour détecter le modem USB et générer sa configuration appropriée.
wvdialconf
Nous allons maintenant ajouter ces lignes à /etc/kannel/kannel.conf :
USB MODEM DEFINITION
group = modems
id = myusbmodem
init-string = "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
message-storage = "SM"
need-sleep = true
SMSC USING USB MODEM
group = smsc
smsc = at
smsc-id = smsc2
my-number = [SIM card]
sms-center = [sms center number]
device = /dev/ttyUSB1
speed = 9600
sim-buffering = true
Redémarrer Kannel
Lorsque toutes les configurations sont terminées, nous devons redémarrer Kannel :
service kannel restart
URL Kannel utiles
Pour envoyer des SMS :
http://kannel_server_ip_address:13002/cgi-bin/sendsms?username=username_for_sending_sms&password=password_for_sending_sms&smsc=smsc-id_to_use&to=phone_number_1 phone_number_2&text=message_content
Pour vérifier l’état du Kannel :
http://kannel_server_ip_address:13000/status?password=password_for_kannel_status
Pour ouvrir la page d’administration de Kannel :
http://kannel_server_ip_address:13000/status?password=password_for_kannel_admin
Intégration de Kannel avec Nagios
Le serveur Kannel est prêt et nous devons maintenant dire à Nagios de l’utiliser pour l’alerte SMS.
Créer des commandes nagios pour l’alerte sms
Modifier commandes.cfg
vi /usr/local/nagios/etc/objects/commands.cfg
Et ajoutez ceci :
define command{
command_name notify-host-by-sms
command_line /usr/bin/curl http://kannel_server_ip_address:13002/cgi-bin/sendsms?username=username_for_sending_sms&password=password_for_sending_sms&smsc=smsc-id_to_use&to=$CONTACTPAGER&text=$HOSTNAME$ is $HOSTSTATE$
}
define command{
command_name notify-service-by-sms
command_line /usr/bin/curl http://kannel_server_ip_address:13002/cgi-bin/sendsms?username=username_for_sending_sms&password=password_for_sending_sms&smsc=smsc-id_to_use&to=$CONTACTPAGER&text=$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$
}
Note:
- Veuillez adapter les valeurs dans l’URL sauf
$CONTACTPAGER,$HOSTNAME$,$HOSTSTATE$,$HOSTALIAS$,$SERVICEDESC$et$SERVICESTATE$ - Nous avons utilisé
curl, donc s’il n’est pas disponible sur votre système, vous devez l’installer
apt-get install curl
Ajouter des commandes de notification aux contacts
Modifier commandes.cfg
vi /usr/local/nagios/etc/objects/commands.cfg
Et dans la section contact, ajoutez ceci :
service_notification_commands notify-service-by-sms
host_notification_commands notify-host-by-sms
pager [phone_number]
