Guía Teléfonica de la UdelaR en el Interior¶
En Varela tenemos en producción un servicio (a nivel del SO) para ofrecer una agenda telefónica de todas las secciones y sedes del Interior.
Desde las centrales VoIP de cada sede habrá que hacer las correspondientes modificaciones para leer desde la agenda de teléfonos.
Administración básica del servidor Varela¶
Los puertos que quedaron abiertas en Varela son el rango: 9996-9999.
La agenda es accesible en puertos poco comunes en Http, pero inmediatamente se redirigue la página a una version Https:- Agenda XML: telefonos.interior.edu.uy:9996 -> https://telefonos.interior.edu.uy:9998/
- Agenda HTML: telefonos.interior.edu.uy:9997 -> https://telefonos.interior.edu.uy:9999/
- Como el puerto 80 ya queda abierta por el PWM, lo rediriguimos tambien: https://telefonos.interior.edu.uy:9999/
Para administrarlo:
- service nodevoip start
- service nodevoip stop
- service nodevoip restart
Configuración en las Centrales de Tel-IP¶
Crear un script y colocarlo en el crontab.
EJ: contactos.sh#! /bin/bash wget https://telefonos.interior.edu.uy:9998 --no-check-certificate -O /tftpboot/contact.xml |
# para la carga semanal del archivo de contactos para los telefonos IP 00 07 * * 1 root /root/contactos.sh |
Además agregar la línea en el archivo de configuración y00000000XX.cfg (XX dependiendo del modelo de teléfono Yealink)
local_contact.data.url = tftp://192.168.10.1/contact.xml
Agregar internos manualmente en el LDAP.¶
Conectarse al LDAP¶
Conexión y Administración del LDAP
Procedimiento¶
Puesta en producción.¶
- Primero un
apt-get update apt-get upgrade
- Luego Curl:
apt-get install curl
- Instalamos el Nodejs (NODEJS Y NPM desde Repositorios)
curl -sL https://deb.nodesource.com/setup_5.x | bash - apt-get install -y nodejs
- Instalamos ldapjs
npm install ldapjs
- Instalamos xmlbuilder
npm install xmlbuilder
- Instalamos forever
(con el -g se instala como paquete global, con --production no se utilizan paquetes en desarrollo)
TURORIALES
http://www.slidequest.com/Taboca/70ang
https://thomashunter.name/blog/running-a-node-js-process-on-debian-as-an-init-d-service/
http://garrows.com/blog/install-and-setup-node-js-to-run-forever/root@curie:/etc/init.d# npm -g --production install forever
- Creamos un dominio en el DNS para que apunte a Varela, en Massera
- Configuramos el site en Apache telefonos.interior.edu.uy-ssl.conf
<VirtualHost *:80> ServerName telefonos.interior.edu.uy ServerAdmin soporte@interior.edu.uy Redirect "/" "https://telefonos.interior.edu.uy:9999/" </VirtualHost> <VirtualHost *:9996> ServerName telefonos.interior.edu.uy ServerAdmin soporte@interior.edu.uy Redirect "/" "https://telefonos.interior.edu.uy:9998/" </VirtualHost> <VirtualHost *:9997> ServerName telefonos.interior.edu.uy ServerAdmin soporte@interior.edu.uy Redirect "/" "https://telefonos.interior.edu.uy:9999/" </VirtualHost>
- Configuramos los puertos donde queda funcionando en ports.conf:
Listen 9996 Listen 9997
- Activamos el sitio
a2ensite telefonos.interior.edu.uy-ssl.conf
- Copiamos todo el directorio del código de la agenda de Curie a Varela (en /srv/agenda).
- Actualizamos la configuración en config.js
Host: telefonos.interior.edu.uy
Puerto agenda html: 9998
Puerto agenda xml: 9999
certificados: (vamo a usar los mismos certificados del servidor) identidad.interior.edu.uy-cert.pem y identidad.interior.edu.uy-key.pem - Se prueba que el servicio levante bien.
- Copiamos el servicio "nodevoip" desde Curie a Varela en /etc/init.d/.
- Aseguramos que la carpeta node_modules esté dentro de /srv/agenda
- Agregamos el servicio al conjunto de servicios del SO y lo ponemos a correr:
chmod 755 /etc/init.d/nodevoip update-rc.d nodevoip defaults
- Levantamos el servicio
service nodevoip start