Adaptar un script [Solucionado] [INACTIVE]

Foro en español para discutir sobre cuestiones generales de BrazilFW 2.x.

Adaptar un script [Solucionado]

Mensagempor Ciriaco » Sáb Mai 16, 2009 4:40 pm

Saludos,

Manejo un dominio en http://www.everydns.net. En la pagina de soporte esta el siguiente script, este es para actualizar la IP:

#!/bin/bash

USERNAME="YOUR USERNAME"
PASSWORD="YOUR PASSWORD"
DOMAIN="YOUR DOMAIN"

URL="http://dyn.everydns.net/index.php?ver=0.1&domain=${DOMAIN}"
/usr/bin/wget --quiet --http-user=${USERNAME} --http-password=${PASSWORD} \
-O - ${URL} | tee /tmp/dynamic-dns.txt | grep -q 'IP change suceeded'

# fin del script

al darle permisos de ejecucion y correrlo, el interprete no reconoce:

--quiet
--http-user=${USERNAME}
por lo que concluyo que tampoco reconoce el resto de la cadena.

Necesito ayuda para adaptar el script y correrlo desde BFW.

Gracias muchachos.

Mis disculpas por la ausencia de tildes, pero cambie a xubuntu y estoy teniendo problemas para configurar el teclado.
Editado pela última vez por Ciriaco em Qui Jun 11, 2009 2:37 pm, em um total de 1 vez.
Ciriaco
 

Re: Adaptar un script

Mensagempor gamba47 » Sáb Mai 16, 2009 7:40 pm

El wget de BrazilFW no tiene esas opciones habilitadas, tendríamos que ver de compilar wget con todas las funciones disponibles.

No tengo un buildtree como para hacerlo, si no te ayudaba.


gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Sáb Mai 16, 2009 8:54 pm

Gracias gamba,

En ese mismo foro hay otro script más completo, pero trabaja con los mismos parámetros, por un momento pensé que podría servir a los desarrolladores de este foro como para ampliar el addon ipupdate.

Mientras tanto correré el script desde xubuntu.

Saludos.
Ciriaco
 

Re: Adaptar un script

Mensagempor Bender » Sáb Mai 16, 2009 9:41 pm

Não sei se vai funcionar com o wget, mas a sintaxe de usuário e senha é:
http(s)://nome_de_usuário:senha@servidor/recurso.ext

#!/bin/sh

USERNAME="YOUR USERNAME"
PASSWORD="YOUR PASSWORD"
DOMAIN="YOUR DOMAIN"

URL="http://${USERNAME}:${PASSWORD}@dyn.everydns.net/index.php?ver=0.1&domain=${DOMAIN}"
/usr/bin/wget \
-O - ${URL} | tee /tmp/dynamic-dns.txt | grep -q 'IP change suceeded'

# fin del script
Bender
 

Re: Adaptar un script

Mensagempor Ciriaco » Sáb Mai 16, 2009 10:12 pm

Probaré esta opción bender, postearé el resultado.

Gracias.
Ciriaco
 

Re: Adaptar un script

Mensagempor Ciriaco » Sáb Jun 06, 2009 1:40 pm

Saludos,

Hace un tiempo ya que postié el script en cuestión. Lo retomé de acuerdo a lo propuesto por bender, lo corro desde BFW y me arroja este resultado:

./testdns.sh: ./testdns.sh: 9: tee: not found

¿estoy haciendo algo mal?, si alguien me puede explicar qué significa esta respuesta del shell se lo agradecería.

Este mismo script lo corro en xubuntu, y hace lo que tiene que hacer, es decir actualiza la ip en el servicio everydns.
Ciriaco
 

Re: Adaptar un script

Mensagempor gamba47 » Sáb Jun 06, 2009 2:45 pm

Ciriaco escreveu:./testdns.sh: ./testdns.sh: 9: tee: not found


Claramente dice "tee: not found", es decir, no esta el comando tee, por lo que se ve es similar a awk, hay que adaptarlo.

Prova así:

Código: Selecionar todos
#!/bin/sh

USERNAME="YOUR USERNAME"
PASSWORD="YOUR PASSWORD"
DOMAIN="YOUR DOMAIN"

URL="http://${USERNAME}:${PASSWORD}@dyn.everydns.net/index.php?ver=0.1&domain=${DOMAIN}"
/usr/bin/wget \
-O - ${URL} | cat /tmp/dynamic-dns.txt | grep -q 'IP change suceeded'

# fin del script


Postea el contenido del archivo /tmp/dynamic-dns.txt


gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Sáb Jun 06, 2009 3:48 pm

En un principio me indicaba que el archivo dynamic-dns.txt no lo encontraba, asi es que lo cree y posteriormente dejó de entregarme ese aviso. El asunto es que lo deja vacío y ahí se queda, no se escribe nada en el.

Al parecer, debo seguir probando, la ip se actualiza. Tendré que deshabilitar la tarea en el xubuntu para no confundirme y sea éste el que en realidad esté haciendo el trabajo y no el script en brazilfw.

La idea en todo caso es que sea brazilfw el que ejecute el script y actualice.

Gracias.
Ciriaco
 

Re: Adaptar un script

Mensagempor Ciriaco » Ter Jun 09, 2009 1:01 pm

Saludos.

Respecto a este script ya he comprobado que actualiza la ip, ahora lo que no logro hacer es que pueda ejecutarse como tarea en el cron.

Lo dejé puesto en partition, por lo que si ejecuto

/partition/testdns.sh

desde la línea de comandos, éste realiza la operación y todo ok.

Si pongo en scheduled task esa línea de comandos no pasa nada, tengo otra tarea asignada que es la de watchdogip, y esa si que anda sin problemas,

Posteo el archivo de tareas:

# Crontab Example File for Coyote Linux
# by Claudio Roberto Cussuol - 09-24-2004
#
# Line Format:
# minute hour day_of_month month day_of_week script_or_shell_command
#
# Example 1: Reload Firewal every day at 08:00am and 06:00pm
# 0 8,18 * * * /etc/rc.d/rc.firewall
#
# Example 2: Make backup at 04:47pm every monday and friday
# 47 16 * * 1,5 lrcfg.back
#
# As you can see, the fields are separated by a space and you can put
# multiple entries in the field, separated by a comma.
#
*/2 * * * * /watchdogip/./watchdogip.sh &
*/10 * * * * /partition/ ./testdns.sh & <------ eso es lo que agregué.

Copié la misma línea del watchdogip, pero no se si será lo correcto. ¿Quizás deba poner algo previamente en el script?

Gracias por la ayuda.
Ciriaco
 

Re: Adaptar un script

Mensagempor gamba47 » Ter Jun 09, 2009 1:06 pm

Ya esta funcionando la adaptación ?

La linea sería

*/10 * * * * /partition/testdns.sh

Lo va a ejecutar cada 10 minutos.


gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Ter Jun 09, 2009 1:44 pm

Gracias gamba,

Al inicio lo había puesto asi, pero me parecía que no andaba. Lo volveré a probar, sólo queda pendiente lo del archivo dynamic-dns.txt. Al reiniciar el BFW este desapareció y me volvió a dar el mensaje anteriormente posteado.

¿Existiría la posibilidad de que alguien de los más expertos pudiera agregar everydns al addon ipupdate basado en este script?

Lo que me gusta de este servicio es que permite manejar un dominio propio (+ de uno en realidad), y es un servicio gratuito. Pienso que podría ser útil a más de alguno.

Saludos.
Ciriaco
 

Re: Adaptar un script

Mensagempor gamba47 » Ter Jun 09, 2009 2:53 pm

Ciriaco escreveu:¿Existiría la posibilidad de que alguien de los más expertos pudiera agregar everydns al addon ipupdate basado en este script?


No se ni como se hace, voy a ver si algun developer puede hacerlo por nosotros.

gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Juanillo » Ter Jun 09, 2009 5:36 pm

Tomo la posta, voy a ver si lo puedo agregar ...
Juanillo
 

Re: Adaptar un script

Mensagempor gamba47 » Ter Jun 09, 2009 5:52 pm

Juanillo escreveu:Tomo la posta, voy a ver si lo puedo agregar ...



:aplause: :aplause: :aplause: :aplause: :aplause: :aplause: :aplause:


Gracias Juan!
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Ter Jun 09, 2009 5:57 pm

Gracias.

Posteo un script que un usuario del servicio puso en el foro de everydns, quizás podría ayudar:

#!/bin/sh
#
# extract wan IP address...
# -=change ppp0 to the correct wan/lan interface device=-
#
EXTIP="`/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`"
#
# Old IP address to compare
#
PASTIP="`cat /root/pastip.txt`"
#
# Capturing local date and time for log timestamp
#
CURDATE="`date`"
#
#
if [ "$EXTIP" = "$PASTIP" ]
then
#
#
echo "DNS is current already up-to-date"
#
else
#
# Placing new IP in local file
#
echo "$EXTIP" > /root/pastip.txt
#
# Creating a log of ip changes
#
echo "DNS has been updated to your current IP $CURDATE" >> /var/log/dns.log
#
#
#
--------snippet----------------change according-----------
USERNAME="YOUR USERNAME"
PASSWORD="YOUR PASSWORD"
DOMAIN="YOUR DOMAIN"
URL="http://dyn.everydns.net/index.php?ver=0.1&domain=${DOMAIN}"
/usr/bin/wget --quiet --http-user=${USERNAME} --http-password=${PASSWORD} \
-O - ${URL} | tee /tmp/dynamic-dns.txt | grep -q 'IP change suceeded'
--------snippet----------------
#
#
fi
#Script End

Me parece que hay unos comandos que en BFW aún no están implementados.
Ciriaco
 

Re: Adaptar un script

Mensagempor gamba47 » Ter Jun 09, 2009 6:11 pm

El que estas usando en BrazilFW cual es ? porque por lo que decís te funcionó en brazilfw o no ?


gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Ter Jun 09, 2009 6:59 pm

Es el primero que postié gamba, este otro es una adaptación que hizo otro usuario, o más bien dicho una ampliación.

Este código es el que está funcionando, ya lo comprobé con las tareas programadas:

#!/bin/sh

USERNAME="YOUR USERNAME"
PASSWORD="YOUR PASSWORD"
DOMAIN="YOUR DOMAIN"

URL="http://${USERNAME}:${PASSWORD}@dyn.everydns.net/index.php?ver=0.1&domain=${DOMAIN}"
/usr/bin/wget \
-O - ${URL} | cat /tmp/dynamic-dns.txt | grep -q 'IP change suceeded'

# fin del script (este funciona en BFW)

El último que puse, al parecer básicamente agrega código para mantener un log y comparar las IPs, yo no programo, pero lo que está arriba es lo que hace la actualización, por lo que logro entender. Yo sólo reemplazo las variables con mis datos.

Si se comparan encontramos esos comandos como tee, que no es reconocido en BFW y que tu me sugeriste cambiar por cat. Además de la sintaxis de ciertos parámetros de wget que BFW no los reconoce.

Puse el del último post por si podría servir de algo como para implementarlo en el ipupdate. Pero recapitulo, el que estuvimos viendo originalmente es el que funcionó en BFW.

Espero no haber enredado el asunto.


Saludos.
Ciriaco
 

Re: Adaptar un script

Mensagempor Juanillo » Qua Jun 10, 2009 9:18 am

Ciriaco, ya casi está listo, necesito un dato mas: como no tengo un dominio para probar, te pido que cambies en el script esta línea, lo ejecutes y postees el contenido de /tmp/dynamic-dns.txt

Código: Selecionar todos
URL="http://${USERNAME}:${PASSWORD}@dyn.everydns.net/index.php?ver=0.1&domain=${DOMAIN}"
/usr/bin/wget \
-O - ${URL} | > /tmp/dynamic-dns.txt


Gracias
Juanillo
 

Re: Adaptar un script

Mensagempor Ciriaco » Qua Jun 10, 2009 12:13 pm

Juanillo,

Hice el cambio, pero el archivo dynamic-dns.txt queda vacío. Lo probé tres veces con el mismo resultado.
Lamento no poder aportar alguna idea de lo que sucede.

gracias y saludos.
Ciriaco
 

Re: Adaptar un script

Mensagempor Bender » Qua Jun 10, 2009 12:43 pm

As saídas do wget:
Código: Selecionar todos
brazilfw# ./a
Authentication given
Time check succeeded
Additional info: 1244648502 - 1244647765 = 737
Authentication succeeded
Version correct
IP address OK
IP change suceeded
IP now: 189.65.77.207
Exit code: 0

ou
Código: Selecionar todos
brazilfw# ./a
Authentication given
Time check failed: wait longer between updates
Additional info: 1244648566 - 1244648502 = 64
Exit code: 5
Bender
 

Re: Adaptar un script

Mensagempor Juanillo » Qua Jun 10, 2009 5:00 pm

Bender, como consiguio las salidas de wget ?
Juanillo
 

Re: Adaptar un script

Mensagempor Bender » Qua Jun 10, 2009 5:11 pm

Cadastrei um dominio no site.
Bender
 

Re: Adaptar un script

Mensagempor Juanillo » Qua Jun 10, 2009 5:58 pm

Ok, Ciriaco, por favor probá el add-on y comentá.

http://www.brazilfw.com.br/users/juanil ... update.tgz

Saludos

Juan
Juanillo
 

Re: Adaptar un script

Mensagempor Ciriaco » Qua Jun 10, 2009 6:35 pm

Juanillo,

No logro que los datos introducidos permanezcan. Al guardarlos y reiniciar brazilfw los campos quedan en blanco, por lo que obviamente no se produce ninguna acción.

El addon despliega bien todas las posibilidades, de hecho yo tengo otro guardado con dyndns, pero lo que introduzco en el apartado everydns no queda.

Gracias.
Ciriaco
 

Re: Adaptar un script

Mensagempor Juanillo » Qui Jun 11, 2009 9:57 am

Ok, ya veo el problema.
Juanillo
 

Re: Adaptar un script

Mensagempor Juanillo » Qui Jun 11, 2009 10:11 am

Juanillo
 

Re: Adaptar un script

Mensagempor Ciriaco » Qui Jun 11, 2009 11:03 am

Fantástico Juanillo,

Ahora marcha. Había estado intruseando el addon y me pareció que algo faltaba en un archivo con una lista de variables, pero no me atreví a tocarlas.

Muchísimas gracias.
Ciriaco
 

Re: Adaptar un script

Mensagempor Juanillo » Qui Jun 11, 2009 11:56 am

Funciona ?

Si funciona tendríamos que actualizarlo en el Addon index ....

Gamba como hacemos ?
Juanillo
 

Re: Adaptar un script

Mensagempor gamba47 » Qui Jun 11, 2009 11:59 am

Juanillo escreveu:Gamba como hacemos ?


Solamente agregastes lineas y no tocastes el resto del codigo ?

Si es así cambiamos el link por el tuyo y dejamos un link referencial a la versión anterior.

gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Qui Jun 11, 2009 12:16 pm

Juanillo escreveu:Funciona ?


Si, funciona, la ip se actualiza, acabo de hacer una prueba bajando la conexión y reconectando.

Lo único que veo es la ausencia del archivo dynamic-dns.txt, que en lo personal, no sería tan determinante, pero tal vez para el estandar de los addons sería un punto a solucionar.

Gracias nuevamente.
Ciriaco
 

Re: Adaptar un script

Mensagempor Juanillo » Qui Jun 11, 2009 12:53 pm

gamba47 escreveu:Solamente agregastes lineas y no tocastes el resto del codigo ?

Si es así cambiamos el link por el tuyo y dejamos un link referencial a la versión anterior.

gamba47


Solo agregué el código para este proveedor.

Ciriaco escreveu:Lo único que veo es la ausencia del archivo dynamic-dns.txt, que en lo personal, no sería tan determinante, pero tal vez para el estandar de los addons sería un punto a solucionar.


No usé ese archivo, se usa /var/log/everydns.txt

Saludos
Juanillo
 

Re: Adaptar un script

Mensagempor gamba47 » Qui Jun 11, 2009 12:56 pm

Entonces si queres pone abajo de este post lo nuevo:

viewtopic.php?f=67&t=68173

Explicando los cambios, así queda documentado, creo que todos van a empezar a usar el nuevo ya que tiene este nuevo host.


gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Juanillo » Qui Jun 11, 2009 1:02 pm

Ups .... no usé ese como base :shock:

En un rato lo bajo y le agrego las modificaciones ...
Juanillo
 

Re: Adaptar un script

Mensagempor Juanillo » Qui Jun 11, 2009 1:36 pm

Listo ...

viewtopic.php?f=67&t=69497

Saludos y gracias a todos los que colaboraron
Juanillo
 

Re: Adaptar un script

Mensagempor gamba47 » Qui Jun 11, 2009 1:47 pm

Quedo perfecto


Gracias Juan.
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!

Re: Adaptar un script

Mensagempor Ciriaco » Qui Jun 11, 2009 2:04 pm

Revisado el archivo en /var/log Juanillo. Funciona perfecto.

Gracias una vez más.
Ciriaco
 

Re: Adaptar un script

Mensagempor gamba47 » Qui Jun 11, 2009 2:36 pm

Ciriaco, no te olvides de poner el clasico [Solucionado]


gamba47
Avatar do usuário
gamba47
BFW Beneméritos
 
Mensagens: 7243
Registrado em: Ter Dez 27, 2005 1:51 pm
Localização: Buenos Aires, Argentina
BrazilFW Box: Pentium4 1256mb RAM HD 200gb
BrazilFW 3.0.237 without Squid
3 ADSLs & 1 Cablemodem
50 Users & more!


Voltar para BrazilFW 2.x - Ayuda en general

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron