Reiniciar servidor con una llamada (elastix)
Hola, hoy vamos a implementar un agi para reiniciar un servidor al hacer una llamada, muy util cuando tenemos algun servidor que este presentando problemas y no estemos cerca para conectarnos.
Primero vamos a agregar la extensión que va a reiniciar el servidor
Modificamos el archivo /etc/asterisk/extencion_custom.conf
En este archivo agregamos al contexto from-internal-custom la siguiente linea:
y en parte del final de archivo agregamos
ahora creamos el archivo bar-zone.agi con:
este contendra lo siguiente:
le agregamos los permisos y hacemos el cambio de propietario
Ya casi esta, vamos a darle los permisos a elastix para que pueda reniciar el servidor modificando el archivo sudoers, este deve de ser modificado con visudo
agregamos al final las siguientes lineas:
guardamos con :wq
ahora solo queda reiniciar los servicios de elastix con:
y listo, al marcar la extencion 200 se va a reiniciar el servidor. Tambien podriamos ponerle la linea “exten => 200,n,Authenticate(1234)” despues del “exten => 200,1,answer() ” en el archivo extension_custom.conf para que te pida la contraseña 1234 para continuar con el reinicio
Primero vamos a agregar la extensión que va a reiniciar el servidor
Modificamos el archivo /etc/asterisk/extencion_custom.conf
nano /etc/asterisk/extensions_custom.conf
En este archivo agregamos al contexto from-internal-custom la siguiente linea:
include => reiniciar
y en parte del final de archivo agregamos
[reiniciar]
exten => 200,1,answer()
exten => 200,n,agi(bar-zone.agi)
exten => 200,n,Wait(6)
exten => 200,n,hangup
ahora creamos el archivo bar-zone.agi con:
nano /var/lib/asterisk/agi-bin/bar-zone.agi
este contendra lo siguiente:
#! /bin/bash
sudo reboot
le agregamos los permisos y hacemos el cambio de propietario
chmod 777 /var/lib/asterisk/agi-bin/bar-zone.agi
chown asterisk:asterisk /var/lib/asterisk/agi-bin/bar-zone.agi
Ya casi esta, vamos a darle los permisos a elastix para que pueda reniciar el servidor modificando el archivo sudoers, este deve de ser modificado con visudo
visudo -f /etc/sudoers
agregamos al final las siguientes lineas:
asterisk ALL = NOPASSWD: /sbin/reboot
asterisk ALL = NOPASSWD: /sbin/halt
guardamos con :wq
ahora solo queda reiniciar los servicios de elastix con:
amportal restart
y listo, al marcar la extencion 200 se va a reiniciar el servidor. Tambien podriamos ponerle la linea “exten => 200,n,Authenticate(1234)” despues del “exten => 200,1,answer() ” en el archivo extension_custom.conf para que te pida la contraseña 1234 para continuar con el reinicio