¿Y pa que quiero yo meter Asterisk en la Fonera? Seguramente para nada, pero hoy veremos cuantas llamadas simultaneas puede manejar una Fonera. Recordemos que la Fonera tiene un hardware superchungo con un micro con asquitectura MIPS a 200MHz ¡¡SE ADMITEN APUESTAS!!
Mayo 20, 2008
Mayo 15, 2008
Juankeando la Fonera
omo muchos sabreis, existe una cosa llamada “comunidad fon” que consiste basicamente en “comparte tu ADSL y conectate al ADSL de los demás” una gran comunidad Wifi. Para pertener a ella te hace falta La Fonera. Hoy veremos como hackear la Fonera, para usarla libremente, instalarle un interfaz web de administracion, aircrack y Asterisk 1.4 (más…)
Abril 8, 2008
Hardware no soportado en Linux
Hay gente que se preocupa para que todo nos llegue a funcionar desde linux, podeis ver los esfuerzos en la siguiente página (del grupo de desarrolladores de drivers para linux):
http://www.kroah.com/log/linux/linux_driver_project_status-2008-04.html
Y el hardware que no tienen los drivers necesarios
http://www.linuxdriverproject.org/twiki/bin/view/Main/DriversNeeded
Por Javi
Febrero 7, 2008
Google Power !
Hay un experimento en google que tiene muy buena pinta.
busca una palabra (en inglés ,www.google.com/en) y añádele “view:timeline” y podrás buscar en el tiempo. Realmente creo que busca las fechas en el texto, me imagino que el experimento irá mejorando.
Puedes probar también con “view:map”, “view:info” …
Google no es libre, pero … ¡sí rocks!
Febrero 1, 2008
Diciembre 25, 2007
vim consejo I (autocomandos)
vim, como todo el mundo sabe, es un muy potente editor.
Seguro que alguna vez has estado editando un fichero a modo de prueba y error, por ejemplo al escribir alguna página web. Si este fichero se encuentra en un repositorio de versiones, seguramente no estés trabajando (o al menos no deberías) sobre la copia de prueba en la que miras el resultado en el navegador. Así cada vez que escribes el fichero lo copias al directorio donde se encuentre la web de prueba. (Quizás estés haciendo esto en remoto en vez de local).
En vim tenemos los autocomandos para hacer este tipo de cosas:
:autocmd BufWrite *php :!scp <afile> usuario@maquina:/var/www/prueba
:help autocmd.txt
Por Javi
Noviembre 29, 2007
Recibir un fax desde Asterisk … sin tener un fax
Hoy veremos como recibir un fax en nuestro correo electrónico, sin tener un fax físico y usando nuestro querido Asterisk. Hay otras webs que explican como hacerlo, pero estas instrucciones son para los muy “cortitos”
Usaremos un par de herramientas nuevas y todas en software libre.
Primero instalamos los siguientes paquetes:
aptitude install Hylafax IAXModem postfix
Editamos /etc/asterisk/iax.conf y configuramos la extension IAX que recibirá los faxes:
[300]
username=300
type=friend
secret=300
qualify=yes
notransfer=yes
host=dynamic
context=from-internal
callerid=”Fax” <300>
disallow=all
allow=slinear
En /etc/asterisk/zapata.conf descomentamos la línea:
faxdetect=incoming
Metemos la siguiente entrada en el dialplan /etc/asterisk/extensions.conf:
exten => 300,1,Answer()
exten => 300,n,Dial(IAX2/300)
Cremos el archivo /etc/iaxmodem/ttyIAX y lo configuramos con:
device /dev/ttyIAX
port 45699
refresh 300
server localhost
peername 300
secret 300
cidname Fax
cidnumber 300
codec slinear
Probamos que se conecta con:
iaxmodem ttyIAX
y en la consola de asterisk:
CLI> iax2 show peers
Si todo chuta lo añadimos en /etc/inittab para que el modem este disponible todo el tiempo:
iax:2345:respawn:/usr/bin/iaxmodem ttyIAX &> /var/log/asterisk/iaxmodem-ttyIAX
Y ejecutamos:
init q
Copiamos:
cp /usr/share/doc/iaxmodem/examples/config.ttyIAX /var/spool/hylafax/etc
Editamos /var/spool/hylafax/etc/config.ttyIAX :
ountryCode: 593
AreaCode: 5
FAXNumber: +593-5-262-2621
LongDistancePrefix: 0
InternationalPrefix: 00
DialStringRules: etc/dialrules
ServerTracing: 0xFFF
SessionTracing: 0xFFF
RecvFileMode: 0664
LogFileMode: 0664
DeviceMode: 0666
RingsBeforeAnswer: 1
SpeakerVolume: off
GettyArgs: “-h %l dx_%s”
LocalIdentifier: “MI EMPRESA”
TagLineFont: etc/lutRS18.pcf
TagLineFormat: “De %%l|%c|Pag %%P de %%T”
MaxRecvPages: 150
Nuevamente para que se ejecute al inicio, en /etc/inittab :
fax:2345:respawn:/usr/sbin/faxgetty ttyIAX
Y otra ves:
init q
Añadimos en /var/spool/hylafax/etc/FaxDispatch :
SENDTO=FaxMaster;
FILETYPE=pdf;
case “$DEVICE” in
ttyIAX) SENDTO=usuario@midominio.com;;
esac
Para evitar problemas:
touch /etc/hylafax/*
y reiniciamos:
/etc/init.d/hylafax restart
Y ya está, cuando la extension 300 reciba un fax, este llegará a la cuenta de correo que hemos configurado en /var/spool/hylafax/etc/FaxDispatch
En el próximo documento explicaré como enviar un fax … sin tener un fax.
Puto Psicopata
Noviembre 21, 2007
Oracle RMAN : Creación del catálogo
La creación de un catálogo puede realizarse :
- Bajo la misma base de datos a la que queremos hacerle el backup (Target).
- Desde otra base de datos y por supuesto tienen que estar en máquinas diferentes. (Eliminamos puntos de fallos comunes).
Una vez atendidas estas dos posibilidades (os dejo elegir) empezamos con el proceso de creación.
1. Generamos el usuario y el tablespace
SYS@catalog > CREATE SMALLFILE TABLESPACE “RMAN_TABLESPACE” DATAFILE ‘/u02/oradata/catalog/rman_datafile.dbf’ SIZE 100M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
SYS@catalog > CREATE USER “RMANCAT” PROFILE “DEFAULT” IDENTIFIED BY “RMANCAT” DEFAULT TABLESPACE “RMAN_TABLESPACE” TEMPORARY TABLESPACE “TEMP” ACCOUNT UNLOCK;
SYS@catalog > GRANT “CONNECT” TO “RMANCAT”;
SYS@catalog > GRANT “RECOVERY_CATALOG_OWNER” TO “RMANCAT”;
2. Creamos el catálogo.
oracle@catalog:/u01$ $ORACLE_HOME/bin/rman
Recovery Manager : Release 10.2.0.3.0 – Production on Nov 18 14:46:31 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN> connect catalog rmancat/rmancat
conectado a la base de datos del catálogo de recuperación
RMAN> CREATE CATALOG TABLESPACE RMAN_TABLESPACE;
catálogo de recuperación creado
RMAN> exit
Recovery Manager terminado.
3. Y empezemos a registrar bases de datos desde los targets.
oracle@target:~/u01$ $ORACLE_HOME/bin/rman
Recovery Manager : Release 10.2.0.3.0 – Production on Nov 18 13:53:31 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN> connect target /
conectado a la base de datos destino: target1 (DBID=********)
RMAN> connect catalog rmancat/rmancat@catalogo *Nos conectamos al catalogo desde el target.
conectado a la base de datos del catálogo de recuperación
RMAN> register database;
base de datos registrada en el catálogo de recuperación
iniciando resincronización completa del catálogo de recuperación
resincronización completa terminada
4. Por último para comprobar que la base de datos esta registrada en el catálogo, incluimos lo siguiente desde el target.
oracle@target:/u01$ $ORACLE_HOME/bin/rman
Recovery Manager : Release 10.2.0.3.0 – Production on Nov 18 15:23:55 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN> connect target /
conectado a la base de datos destino: target1 (DBID=*******)
RMAN> connect catalog rmancat/rmancat@catalogo
conectado a la base de datos del catálogo de recuperación
RMAN> report schema;
Informe del esquema de la base de datos
Lista Archivos de Datos Permanentes
===========================
Tamaño del archivo (MB) Tablespace RB Nombre de archivo de datos segs
—- ——– ——————– ——- ————————
1 300 SYSTEM YES /u02/oradata/target1/system01.dbf
2 200 UNDOTBS1 YES /u02/oradata/target1/undotbs01.dbf
3 120 SYSAUX NO /u02/oradata/target1/sysaux01.dbf
4 283 USERS NO /u02/oradata/target1/users01.dbf
Lista Archivos Temporales
=======================
Tamaño del Archivo (MB) Tablespace Tamaño Máximo (MB) Nombre de Archivo Temporal
—- ——– ——————– ———– ——————–
1 20 TEMP 32767 /u02/oradata/target1/temp01.dbf
RMAN> exit
Recovery Manager terminado.
Rafael .A Hernández
Noviembre 20, 2007
Trunks en Asterisk (SIP e IAX2)
Y para qué quiero yo un Asterisk en mi casa? Puede haber miles de respuestas posibles. Hay quien usa su Asterisk y cacharritos X11 para domotizar su casa, pero el caso que nos ocupa es más simple “quiero llamar lo más barato posible”.
Imaginemos el siguiente caso:
1- Hemos conocido a una chavala en un chat, que resulta ser de EEUU y como allí son muy modernos, usa un proveedor SIP. Las llamadas dentro de ese proveedor SIP son gratuitas además de las llamadas locales, supongamos Utah.
2- Tenemos a un colega que esta de Erasmus y tiene una extension IAX2.
3- En el curro somos muy modernos y tenemos cada uno una extension SIP. Suponemos además que los administradores de red son coleguitas y no nos ponen muchos problemas.
4- Quiero llamar a mis familiares y amigos por la red convencional (PSTN) y ya tengo perfectamente configurada mi tarjeta FXS/FXO.
Lo que resumidamente he tratado de plasmar en el siguiente esquema:

Lo primero será registrarnos en el proveedor de VoIP SIP de Utah y en el IAX2 del colega de Erasmus. Configuramos primero el trunk SIP:
Editamos /etc/asterisk/sip.conf
[sip.utah]
type=friend
context=outgoing
disallow=all
allow=alaw
dtmfmode=rfc2833
host=sip.utah.com ; aqui el servidor de Utah
insecure=very
username=12345 ; la extension/usuario que nos han dado
secret=12345 ; la clave
canreinvite=no
“Entiendo” que las extensiones del servidor de Utah son de 5 cifras y las de la PSTN de Utah son de 9 cifras comenzando por 556, asi que en /etc/asterisk/extension.conf
[outgoing]
…
exten => _XXXXX,1,Dial(SIP/sip.utah/${EXTEN})
exten => _556XXXXXX,1,Dial(SIP/sip.utah/${EXTEN})
Asi de facil. Ahora vamos a /etc/asterisk/iax.conf
[iax.trunk]
host => iax.proxy.com ; el proxy IAX
type=friend
context=outgoing
user=123456 ; extension/usuario IAX
secret=123456 ; clave
host=dynamic
auth=plaintext
“Entiendo” que las extensiones son de 6 cifras, asi que en /etc/asterisk/extensions.conf
[outgoing]
…
exten => _XXXXXX,1,Dial(IAX2/iax.trunk/${EXTEN})
No puede ser mas fácil. “Entiendo” que la extension del curro es SIP de 4 cifras y queremos llamar a extensiones internas y a clientes, jefes, responsables de área, responsables de ejecución, jefe de departamentos, responsables coordinadores de departamentos, coordinador de departamento, responsables de documentacion de coordinadores de departamentos o cualquier otro que tenga teléfono de empresa. La configuración de /etc/asterisk/sip.conf será similar a la anterior y en /etc/asterisk/extension.conf
[outgoing]
…
exten => _XXXX,1,Dial(SIP/curro.trunk/${EXTEN})
exten => _0XXXXXXXXX,1,Dial(SIP/curro.trunk/${EXTEN:1})
Ahora configuramos nuestra salida analógica. En /etc/asterisk/extension.conf
[outgoing]
…
exten => _.,1,Dial(ZAP/g1/${EXTEN})
Y ya está. Asi que para llamar a:
- La amiguita de Utah: marcamos su extensión (5 cifras)
- El colega de Erasmus: marcamos su extensión (6 cifras)
- Al responsable de área: marmamos su extensión (4 cifras)
- Al tito Juan (llamada local): marmamos su número (9 cifras)
- Al móvil de “la otra amiguita”: marcamos su número (9 cifras)
- Al móvil de empresa de un responsable de ejecución: 0 + su número.
- A la iglesia mormona de Utah para preguntar si nos podemos casar con “amiguita”: 556 …
Fácil, fácil, fácil. Se podría complicar un poco la cosa, si el número de cifras coincide en alguno de los casos, pero lo solucionamos rápidamente poniendo un prefijo, como en el caso 6
La gracia del tema es que, normalmente los proveedores de telefonía IP dejan que las llamadas locales y a las extensiones de ese proveedor, sean gratuitas. En España esto no esta muy extendido, pero si en el resto del mundo civilizado. Con un poco de paciencia podriamos darnos de alta en proveedores de VoIP a cascoporro y así llamar gratis a casi todas partes del mundo.
Puto Psicópata
Noviembre 13, 2007
Más sobre Oracle virtualization
Oracle virtualization estará disponible para su descarga el miercoles, 14 de Noviembre de 2007 en la página oracle.com/virtualization donde Oracle Real Application Clusters no estará soportado hasta el 2008
Rafael. A. Hernández
