GHalician’s Space

Life is out there   

18 Julio 2007

Inauguracion de seccion

Guardado en: Código, Software Libre, Tecnología — Xavy @ 21:34

Inaugura esta sección incluyendo la modificación que he hecho de un script para gestionar los dominio de cdmon con Ip dinámica desarrollada inicialmente por Enrique García Álvarez

para los que lo prefirais ver en “texto plano”, loteneís disponible en:
http://www.ghalician.es/wp-upload/cdmon

#!/bin/bash
#
########## Autor####################
# Idea original por Enrique Garcia Alvarez
# kike arroba eldemonionegro punto com
# http://www.eldemonionegro.com/wordpress/archivos/2006/01/15/script-para-cdmon/
# Modificado por Javier xavy en ghalician punto es
# Software para la administracion de dominios en cdmon
# Copyright (C) 2005-2006
########## Licencia#####################
# Este programa es software libre. Puede redistribuirlo y/o modificarlo
# bajo los teminos de la Licencia Publica General de GNU segun es publicada
# por la Free Software Foundation, bien de la version 2 de dicha Licencia
# o bien (segun su eleccion) de cualquier version posterior.
#
# Este programa se distribuye con la esperanza de que sea util,
# pero SIN NINGUNA GARANTIA, incluso sin la garantia MERCANTIL implicita o
# sin garantizar la CONVENIENCIA PARA UN PROPOSITO PARTICULAR.
# Vease la Licencia Publica General de GNU para mas detalles.
#
# Deberia haber recibido una copia de la Licencia Publica General junto
# con este programa. Si no ha sido asi, escriba a la
# Free Software Foundation, Inc., en 675 Mass Ave, Cambridge, MA 02139, EEUU.
# MIRA AQUI PARA SABER MAS ==>> http://www.gnu.org/copyleft/gpl.html
#########License##############################
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
# SEE HERE FOR MORE ==>> http://www.gnu.org/copyleft/gpl.html
###########################################################################
######## PROTOCOLO###########################################
# Para poder actualizar su IP tiene que hacer una llamada a la siguiente URL:
# https://www.cdmon.com/pcontrol/dnsdinamico/onlineService.php
# con los argumentos via GET siguientes:
# enctype=MD5
# n=nombre_de_usuario
# p=contraseña_codificada_con_md5
# si la IP que quiere actualizar es diferente a la IP que le asigna el sistema
# puede definir una IP propia con el argumento "cip"
# cip=x.x.x.x
# de modo que tendremos:
# https://www.cdmon.com/pcontrol/dnsdinamico/onlineService.php?enctype=MD5&n=usuario&p=1bc29b36f623ba82aaf6724fd3b16718&cip=x.x.x.x
# donde cip es opcional ya que al hacer la peticin via URL el servidor devuelve
# un resultado.
#
# RESULTADOS:
# la peticion https nos devuelve una variable con el formato siguiente:
# &resultat=resultado de la petición del servidor&
# donde tenemos las siguientes opciones:
#
# Cuando se hace una peticin sin la variable cip y la autentificacin ha sido
# correcta nos devuelve la IP actual que detecta el servidor.
# &resultat=guardatok&newip=x.x.x.x&
#
# Cuando hemos mandado nuestra IP mediante la variable cip y la autentificacin
# ha sido satisfactoria.
# &resultat=customok&
#
# Nos devuelve este resultado cuando la autentificacin ha sido
# pero la IP es erronea.
# &resultat=badip&
#
# Nos devuelve este resultado cuando la autentificacin no ha sido satisfactoria.
# &resultat=errorlogin&
#
# Nos devuelve este resultado en raras ocasiones, solo cuando modificamos el
# archivo que procesa todas las peticiones para obligar a todos los usuarios a
# actualizar a una nueva version de la aplicacion. En su caso solo tendra
# que ponerse en contacto con nosotros para obtener la nueva URL para hacer la peticion.
# &resultat=novaversio&
#########################################################################
############################ BEGIN
###########################################################################
## Datos de usuario de CDMON.ORG
# USUARIO = es el nombre de usuario para entrar en CDMON.ORG
# PASSWORDMD5 = Es la contrasenia para entrar en CDMON.ORG encriptada con
# el algoritmo MD5. Hay programas (tambien online) para ello.
#
USUARIO=tu-usuario-de-cdmon
PASSWORDMD5=tu-contraseña-encriptada-con-md5
EMAIL=tu-direccion-de-correo
IP_DNS_ONLINE=$(host www.tu-dominio.es servidor-de-dns | grep www.tu-dominio.es | awk {'print $4'})
IP_ACTUAL=lynx -dump http://www.whatismyip.com | grep "Your IP Is" | cut -s -d ' ' -f30
echo $IP_DNS_ONLINE $IP_ACTUAL
if [ "$IP_DNS_ONLINE" != "$IP_ACTUAL" ]; then
CHANGE_IP="https://www.cdmon.com/pcontrol/dnsdinamico/onlineService.php?enctype=MD5&n=$USUARIO&p=$PASSWORDMD5&cip=$IP_ACTUAL"
RESULTADO=`wget $CHANGE_IP -o /dev/null -O /dev/stdout`
MENSAJE="Ha habido un cambio en la IP de los nombres de dominio.\n"
MENSAJE=$MENSAJE"Se han actualizado los servidores DNS dinamicos de CDMON.\n"
MENSAJE=$MENSAJE"El resultado devuelto ha sido el siguiente:\n"
echo -e $IP_DNS_ONLINE $IP_ACTUAL $MENSAJE $RESULTADO | mail $EMAIL -s "cambio de IP"
fi
############# END#######################################

Solo tenéis que incluirlo en vuestro crontab, y/o hacer que se le llame desde cualquier archivo de arranque (rc.S), y ya os actualizara la relacion dominio-IP automaticamente

Este post ha sido leído 5990 veces
Búsqueda personalizada

Quote of the Visit

Homer
Donuts. Is there anything they can't do?