{\rtf1\ansi\ansicpg1252\deff0\deftab1134{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fmodern\fprq1 Courier New;}{\f2\fmodern\fcharset0 Courier New;}}
{\colortbl ;\red0\green0\blue0;}
\viewkind4\uc1\pard\cf1\lang255\f0\fs20 SERVIDOR DE MONITORIZACION CON SMS INTEGRADO\par
\par
Bueno el capitulo lo indica todo, el servidor que he montado esta vez es una maquina que se encarga de monitorizar recursos en otras maquinas y si localiza algun error me manda un mensaje a mi movil.\par
\par
\b Hardware utilizado:\par
\par
\b0 Para la monitorizacion de los recursos he utilizado una maquina de lo mas simple que he encontrado. Un Pentium II a 300 Ghz con 64 mb de memoria y 3 gb de disco duro. Le sobran recursos. NECESARIO QUE TENGA PUERTO COM.\par
\par
El telefono movil que estoy utilizando es un Nokia 7110, se que funciona a la perfeccion con Nokia 6210\par
\par
Funciona tambien, aunque no lo he probado, con modem GSM o GPRS Siemens o un modem GSM Nokia 32 o un modem GSM Nokia Premicell o un modem GSM Wavecom (Probados por Andres Seco).\par
\par
El cable que he utilizado para conectar el movil al puerto COM del ordenador es el original de Nokia RS 232 DLR-3P valido para telefonos 6210, 6250, 6310 y 7110. Lo he comprado en www.optize.es .\par
\par
Todos los telefonos que vayais probando y consigais que funcionen decidmelo por mail a la cuenta juanmi@planalfa.es \par
y lo ire a\'f1adiendo a este manual.\par
\par
La plataforma de nuevo ha sido Debian Woody. La version con la que he hecho el servidor ha sido la estable en este momento, la 3.0 r4.\par
\par
\b Instalacion de Debian Woody.\par
\b0\par
La instalacion de Debian, como todas, esta vez he utilizado lo mas estable, Kernel por defecto y ningun paquete de BackPorts.\par
\par
La instalacion completamente basica, no instalo nada durante el proceso de instalacion. Solamente el sistema base.\par
\par
\b Instalacion del Telefono en el Ordenador\par
\b0\par
Bueno aqui esta el primer paso que debemos realizar, debemos bajarnos una aplicacioncita muy parecida a HyperTerminal de Windows, la necesitaremos para ir comprobando que las comunicaciones entre el telefono y ordenador van bien.\par
\par
Todas la pruebas del manual estan realizadas con el telefono movil Nokia 6210. Cada uno de vosotros teneis que hacer esto ya que cambia con el telefono. Si vais a usar este podeis copiarlo sin hacer ninguna prueba.\par
\par
El programa que tenemos que instalar es minicom, pues adelante:\par
\par
\b\i sms:/# apt-get install minicom\par
\par
\b0\i0 No recuerdo si tiene alguna dependecia.\par
Una vez instalado comenzemos las configuraciones.\par
\par
\b\i sms:/# minicom -s\par
\b0\par
\par
\f1\u9484?\u9472?\u9472?\u9472?\u9472?\u9472?\f0 [configuration]\f1\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9488?\f0\par
\f1\u9474?\f0 Filenames and paths \f1\u9474?\f0\par
\f1\u9474?\f0 File transfer protocols \f1\u9474?\f0\par
\f1\u9474?\f0 Serial port setup \f1\u9474?\f0\par
\f1\u9474?\f0 Modem and dialing \f1\u9474?\f0\par
\f1\u9474?\f0 Screen and keyboard \f1\u9474?\f0\par
\f1\u9474?\f0 Save setup as dfl \f1\u9474?\f0\par
\f1\u9474?\f0 Save setup as.. \f1\u9474?\f0\par
\f1\u9474?\f0 Exit \f1\u9474?\f0\par
\f1\u9474?\f0 Exit from Minicom \f1\u9474?\f0\par
\f1\u9492?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9496?\f0\par
\i0\par
Pinchremos la opcion Serial Port setup y nos saldra esta pantallita:\par
\par
\i\f1\u9484?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9488?\i0\f0\par
\i \f1\u9474?\f0 A - Serial Device : /dev/ttyS0 \f1\u9474?\f0\par
\f1\u9474?\f0 B - Lockfile Location : /var/lock \f1\u9474?\f0\par
\f1\u9474?\f0 C - Callin Program : \f1\u9474?\f0\par
\f1\u9474?\f0 D - Callout Program : \f1\u9474?\f0\par
\f1\u9474?\f0 E - Bps/Par/Bits : 19200 8N1 \f1\u9474?\f0\par
\f1\u9474?\f0 F - Hardware Flow Control : Yes \f1\u9474?\f0\par
\f1\u9474?\f0 G - Software Flow Control : No \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Change which setting? \f1\u9474?\f0\par
\f1\u9492?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9496?\f0\par
\i0 Iremos seleccionando las variables que necesitamos. \i\par
\i0\par
La parte A indica en que puerto COM o ttyS al que tenemos conectado el cable que va al telefono. Yo en mi caso lo tengo al COM 0 (Acordaos que el primer numer es un 0, vamos que si teneis en vuestro ordenador 2 puerto com se llamaran COM 0 y COM 1 o ttyS0 y ttyS1).\par
\par
De la parte B, C y D, no tocaremos nada. Es decir que si lo teneis cambiado poned lo que pone aqui.\par
\par
La parte E, es la importante junto con la A claro. Aqui seleccionaremos la velocidad con la que nos comunicaremos con el movil, la paridad, el bit de stop y el numero de bits.\par
\par
En la parte F pondremos YES \par
\par
y en la G NO.\par
\par
Para cambiar los datos basta con decirle, por ejemplo A y poner lo que necesitamos, y luego pulsar enter, si pulsamos ESC volveremos al estado anterior. \par
\par
Una vez que tengamos todo cambiado bastara con pulsar ENTER para volver a la pantalla anterior.\par
\i\par
\f1\u9484?\u9472?\u9472?\u9472?\u9472?\u9472?\f0 [configuration]\f1\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9488?\f0\par
\f1\u9474?\f0 Filenames and paths \f1\u9474?\f0\par
\f1\u9474?\f0 File transfer protocols \f1\u9474?\f0\par
\f1\u9474?\f0 Serial port setup \f1\u9474?\f0\par
\f1\u9474?\f0 Modem and dialing \f1\u9474?\f0\par
\f1\u9474?\f0 Screen and keyboard \f1\u9474?\f0\par
\f1\u9474?\f0 Save setup as dfl \f1\u9474?\f0\par
\f1\u9474?\f0 Save setup as.. \f1\u9474?\f0\par
\f1\u9474?\f0 Exit \f1\u9474?\f0\par
\f1\u9474?\f0 Exit from Minicom \f1\u9474?\f0\par
\f1\u9492?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9496?\f0\par
\par
Pulsaremos la opcion "Save setup as dfl"\i0 nos grabara las opciones como opciones por defecto.\par
\par
Muy bien si pulsamos exit intentara la conexion con el movil:\par
\par
\f1\u9484?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9488?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Initializing Modem \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9492?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9496?\f0\par
\par
Despues de inicializado el modem nos saldra una pantalla donde podemos escribir, pongo los comandos utilizados, en negrita, para ver que el movil responde:\par
\par
\i Welcome to minicom 1.83.1\par
\par
OPTIONS: History Buffer, F-key Macros, Search History Buffer, I18n\par
Compiled on Nov 21 2001, 00:35:58.\par
\par
Press CTRL-A Z for help on special keys\par
\par
\b at\par
\b0 OK\par
\b ati\par
\b0 Nokia Mobile Phones\par
\par
OK\par
\b ati2\par
\b0 SW05.01\par
\par
\i0 OK\par
\par
Perfecto, el ordenador se comunica con el movil a la perfeccion.\par
\par
Os preguntareis para que necesitamos hacer todo esto, pues para sacar una linea que necesita alamin para comunicarse con el movil. \par
\par
Aqui tengo que deciros que esto SOLO me ha funcionado con el movil 6210, NO funciona bien con el 7110, me refiero a la comunicacion de minicom con el telefono, pero con las mismas configuraciones que he dejado arriba, alamin lo hace funcionar a la perfeccion.\par
\par
Bien saquemos la linea que necesita alamin.\par
\par
Despues de quedarnos en la pantalla de arriba Pulsaremos CTRL+A y luego la tecla Z y nos saldra un menu.\par
\par
\f1\u9484?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9488?\f0\par
\f1\u9474?\f0 Minicom Command Summary \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Commands can be called by CTRL-A \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Main Functions Other Functions \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Dialing directory..D run script (Go)....G | Clear Screen.......C \f1\u9474?\f0\par
\f1\u9474?\f0 Send files.........S Receive files......R | cOnfigure Minicom..O \f1\u9474?\f0\par
\f1\u9474?\f0 comm Parameters....P Add linefeed.......A | Suspend minicom....J \f1\u9474?\f0\par
\f1\u9474?\f0 Capture on/off.....L Hangup.............H | eXit and reset.....X \f1\u9474?\f0\par
\f1\u9474?\f0 send break.........F initialize Modem...M | Quit with no reset.Q \f1\u9474?\f0\par
\f1\u9474?\f0 Terminal settings..T run Kermit.........K | Cursor key mode....I \f1\u9474?\f0\par
\f1\u9474?\f0 lineWrap on/off....W local Echo on/off..E | Help screen........Z \f1\u9474?\f0\par
\f1\u9474?\f0 | scroll Back........B \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Select function or press Enter for none. \f1\u9474?\f0\par
\f1\u9474?\f0 \f1\u9474?\f0\par
\f1\u9474?\f0 Written by Miquel van Smoorenburg 1991-1995 \f1\u9474?\f0\par
\f1\u9474?\f0 Some additions by Jukka Lahtinen 1997-1999 \f1\u9474?\f0\par
\f1\u9474?\f0 i18n by Arnaldo Carvalho de Melo 1998 \f1\u9474?\f0\par
\f1\u9492?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9472?\u9496?\f0\par
\par
Bien pulsaremos la opcion "Quit with no reset.Q" y nos preguntara si queremos dejarlo sin resetearlo. SI.\par
\par
Estaremos de nuevo en la linea de comandos de debian y ahi pulsaremos el siguiente comando:\par
\par
\b\i sms:~# stty -g I<-p port> I<-m host> I<-i priority> I<-s service> I<-g group> I<-t time> I<-u>\par
\par
=head1 DESCRIPTION\par
\par
B calls gsgc (the Alamin GSM SMS Gateway client) to send\par
messages using selected priority.\par
\par
More information on Alamin GSM SMS Gateway at http://alamin.sourceforge.net\par
\par
=head1 PARAMETERS\par
\par
-p port SMS gateway port (mapped to --port option of gsgc)\par
-m host SMS gateway host (mapped to --host option of gsgc)\par
-i priority priority (mapped to --priority option of gsgc)\par
\par
=head1 EXAMPLE\par
\par
line to be used inside mon.cf\par
\par
alert alamin.alert -p 11201 -m gsm.domain.com -i 1 666111222 666111333\par
\par
=head1 AUTHOR\par
\par
The script was written by Andres Seco based from a\par
template for an alert from Jim Trocki, trokij@transmeta.com\par
\par
=cut\par
\par
use Getopt::Std;\par
getopts ("p:m:i:s:g:h:t:l:u");\par
\par
$summary=;\par
chomp $summary;\par
\par
$t = localtime($opt_t);\par
($wday,$mon,$day,$tm) = split (/\\s+/, $t);\par
\par
my $destinations = join (',', @ARGV);\par
\par
$ALERT = $opt_u ? "UPALERT" : "ALERT";\par
\par
my $texttobesent = "MON - ".$ALERT."\\nGroup: $opt_g\\nService: $opt_s\\nDate: $wday $mon $day $tm\\nSummary: $summary";\par
\par
my @gsgcpars = ();\par
\par
push @gsgcpars, "gsgc";\par
\par
if ($opt_p) \{\par
push @gsgcpars, "--port";\par
push @gsgcpars, $opt_p;\par
\}\par
\par
if ($opt_m) \{\par
push @gsgcpars, "--host";\par
push @gsgcpars, $opt_m;\par
\}\par
\par
if ($opt_i) \{\par
push @gsgcpars, "--priority";\par
push @gsgcpars, $opt_i;\par
\}\par
\par
push @gsgcpars, "--send";\par
push @gsgcpars, $destinations;\par
push @gsgcpars, $texttobesent;\par
\par
\pard\sa283 system @gsgcpars;\par
\pard\i0\par
\par
\par
\par
\par
La forma de utilizar alamin en mon es la siguiente, os dejo mi archivo mon.cf para que veais como lo hace:\par
\par
\i #\par
# Opciones globales\par
#\par
cfbasedir = /etc/mon\par
alertdir = /usr/lib/mon/alert.d\par
mondir = /usr/lib/mon/mon.d\par
maxprocs = 20\par
histlength = 100\par
randstart = 60s\par
\par
#\par
# Privilegios de cada usuario\par
#\par
\par
list: all\par
reset: root,admin\par
loadstate: root\par
savestate: root\par
\par
#\par
# DEJAR LINEAS EN BLANCO ENTRE LAS LINEAS. Parte HOSTGROUPS Los grupos de\par
# hosts nos serviran para agrupar maquinas que requieran de un servicio\par
# de monitorizacion similar, agruparlas bajo un seudonimo, y utilizarlo\par
# para simplificar la definicion de monitores posteriormente.\par
hostgroup mailhost 85.35.23.90\par
\par
hostgroup workstations 10.19.4.23 10.19.4.103\par
\par
hostgroup wwwservers www.google.es www.yahoo.com \par
\par
hostgroup ftpservers 85.123.144.23\par
\par
hostgroup dnsservers 10.19.4.3\par
\par
hostgroup mon 10.19.4.22\par
#\par
# Zona WATCH. Una linea watch con el nombre del hostgroup sobre el que se hara l\par
a\par
# monitorizacion. Dentro de esta, tantas secciones service como servicios\par
# queramos monitorizar, con sus parametros propios.\par
# Dentro de cada servicio tantos periodos como deseemos que definiran\par
# las acciones a tomar en caso de alarma.\par
#\par
\par
# Servidores WEB\par
\par
watch wwwservers\par
service http\par
description Ver si el servicio http funciona en webservers.\par
interval 1m\par
monitor http.monitor\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
\par
# Estaciones de trabajo\par
\par
watch workstations\par
service ping\par
description Ping contra estaciones de trabajo.\par
interval 1m\par
monitor ping.monitor\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
\par
# Servidor de correo\par
\par
watch mailhost\par
service smtp\par
description Ver si el servicio SMTP esta funcionando contra Servidores de Corr\par
eo.\par
interval 1m\par
monitor smtp.monitor\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
service pop3\par
description Ver si el servicio POP3 esta funcionando contra Servidores de Corr\par
eo.\par
interval 1m\par
monitor pop3.monitor\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
\par
# Servidores FTP\par
\par
watch ftpservers\par
service ftp\par
description Prueba conexiones ftp.\par
interval 1m\par
monitor ftp.monitor\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
\par
# Servidores DNS\par
\par
watch dnsservers\par
service dns\par
description Prueba conexiones DNS\par
interval 1m\par
monitor dns.monitor -zone arco2000.es -master 10.19.4.3\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
\par
# Servidores MON\par
\par
\par
watch mon\par
service mon\par
description Prueba el servidor MON\par
interval 1m\par
monitor mon.monitor\par
allow_empty_group\par
period wd \{Mon-Sun\} hr \{0am-24pm\}\par
alert file.alert /var/log/mon.log\par
upalert file.alert /var/log/mon.log\par
alert alamin.alert -p 11201 -m localhost -i 1 662654765\par
upalert alamin.alert -p 11201 -m localhost -i 1 662654765\par
alertevery 45m\par
\i0\par
\par
A mi mon me dio unos errores al intentar monitorizar, eran problemas de permisos, observad cada archivo que os vaya fallando y dadle unos permisos aceptables.\par
\par
Sobre los tipos de monitores leeros el manual que os he dejado mas arriba. A mi me falta un monitorizador, el Terminal Services de Windows que no he conseguido por ningun sitio, si lo conseguis o podeis programarlo, poneos en contacto conmigo en juanmi@planalfa.es\par
\par
Solo falta dar la gracias, sin ellos me hubiese sido imposible realizar el servidor y el manual:\par
\par
Andres Seco (Programador del paquete ALAMIN) mil gracias Andres, sigue asi.\par
Alfonso de MicroAlcarria, me puso en contacto con Andres.\par
Daniel Espilez amigo y comercial de Vodafone, me ayudo a encontrar moviles viejos.\par
Agustin Calvo Flores, siempres estas ahi.\par
\cf0\lang1034\f2 A vosotros que juntos mejoraremos este documento.\cf1\lang255\f0\par
\par
Muchas gracias a todos y que lo disfruteis.\par
\par
Saludos.\par
\par
Juanmi.\par
}