miércoles, 19 de noviembre de 2014

SOLUCION Instalación FOP2 en Asterisk 11 DEBIAN 7.5






  1. Starting Flash Operator Panel 2: fop2Can't load '/tmp/par-root/cache-blablabla/blabla.so' for module Filter::Crypto::Decrypt: /usr/lib/libcrypto.so.0.9.8: version `OPENSSL_0.9.8' not found (required by /tmp/par-root/cache-blablabla/blabla.so) at /usr/lib/perl/5.8/DynaLoader.pm line 225.
  2. at /usr/local/share/perl/5.8.8/PAR/Heavy.pm line 128
  3. BEGIN failed--compilation aborted at /tmp/par-root/cache-blablabla/inc/lib/Filter/Crypto/Decrypt.pm line 37.
  4. Compilation failed in require at script/fop2_server.pl line 1.
  5. BEGIN failed--compilation aborted at script/fop2_server.pl line 1.


Solución al error de test FOP2, he utilizado este paquete de debian squeeze en un debian wheezy y me ha funcionado muy bien... cualquier sugerencia para mejorar les agradezco.
LINK: https://drive.google.com/file/d/0B5wqQb0HQzDNMEJHYU9PTlFzaWs/view?usp=sharing

wget http://ftp.ru.debian.org/debian/pool/main/o/openssl/libssl0.9.8_0.9.8o-4squeeze14_i386.deb

dpkg --install libssl0.9.8_0.9.8o-4squeeze14_i386.deb

root@jhon:/usr/src#/usr/local/fop2/fop2_server --test
Flash Operator Panel 2 - Sin licencia válida encontrado. Modo Demo



#/usr/local/fop2/fop2_server --test
Flash Operator Panel 2 - Sin licencia válida encontrado. Modo Demo
______________________________________
Este comando es para Activar la Licencia FOP2
#fop2_server --register
____________________________________________
http://www.fop2.com/docs/installation.php#Managingtheservice

sábado, 17 de mayo de 2014

Configuración de Fail2ban en Asterisk 1.8

Este servicio que ofrece nuestro Fail2ban querido por muchos, es de vital importancia para darle un nivel mas de seguridad a nuestro sistema, en este caso es Asterisk 1.8 en Debian Squeeze.
Cuando instalamos el Fail2ban en nuestro sistema lo mas probable es que solo este baneando (bloqueando) solo conexiones de tipo SSH y no este baneando (bloqueando) las direcciones que se hacen con números de extensiones tratando de loguearse en nuestro Asterisk. Aquí, seré mas claro en este mini tutorial.

Bueno empecemos instalando nuestro fail2ban.
--------------------------------------------------------------------
sudo apt-get install fail2ban
--------------------------------------------------------------------
con esta instalación si no esta instalado nuestro iptables se instala conjuntamente. primero hacemos una copia de todos los archivos que abramos con cualquier editor de texto.
Editemos nuestro fail2ban, su archivo de configuración se encuentra en
---------------------------------------------------------------------
/etc/fail2ban/jail.conf
---------------------------------------------------------------------
Aquí buscamos y modificamos las siguientes lineas, las resalto en negrita.
---------------------------------------------------------------------

ignoreip = 127.0.0.1 173.85.15.22
bantime  = 8978476
maxretry = 1

protocol = tcp
protocol = udp

[ssh]

enabled = true
port    = ssh
filter  = sshd
logpath  = /var/log/auth.log
maxretry = 1



#Añadimos al final del archivo desde aqui para bajo estas lineas de asterisk
# Asterisk
[asterisk-iptables]
enabled  = true
filter   = asterisk
action   = iptables-allports[name=ASTERISK, protocol=all]
           sendmail-whois[name=ASTERISK, dest=root@local.com, sender=local.com]
logpath  = /var/log/asterisk/messages
maxretry = 1
bantime = 8592000
---------------------------------------------------------------
Aquí un ejemplo de la configuración
---------------------------------------------------------------

ignoreip = 127.0.0.1 173.85.15.22   # aquí agregamos las direcciones permitidas separadas por espacios
bantime  = 8978476                         # es la cantidad de segundos que estará baneada una dirección ip
maxretry = 1                                    # máximo de intentos que permite antes de banear la dirección ip
protocol = tcp                                   # tipo de protocolo a filtrar, en mi caso coloque udp y tcp
----------------------------------------------------------------
todavía no podemos iniciar nuestro fail2ban por que algunas veces no encuentra la ruta de los logs de Asterisk.
Si tienen los logs de Asterisk en esta ruta debería de arrancar el fail2ban /var/log/asterisk/messages
si no encuentran el archivo messages tendremos que hacer lo siguiente
----------------------------------------------------------------
touch /var/log/asterisk/messages
chown asterisk.asterisk /var/log/asterisk/messages
chmod 775 /var/log/asterisk/messages
-----------------------------------------------------------------
Lo que hicimos fue crear el archivo de los logs de asterisk, luego agregamos al usuario y grupo asterisk como propietario y después le damos permiso al archivo messages para asterisk puede escribir en el.
----------------------------------------------------------------
abrimos el archivo logger.conf y agregamos unas lineas, si existen las descomentamos.
----------------------------------------------------------------
/etc/asterisk/logger.conf

[general]
dateformat=%F %T


[logfiles]
debug => debuf,verbose
console => notice,warning,error,debug
messages => notice,warning,error
full => notice,warning,error,debug,verbose,dtmf
-----------------------------------------------------------------
Si quieren crean el archivo full, los mismos pasos que messages  /var/log/asterisk/full en este archivo nos graba todos los logs de notice,warning,error,debug,verbose,dtmf 
-----------------------------------------------------------------
Agregamos unas lineas en
-----------------------------------------------------------------
/etc/fail2ban/filter.d/asterisk.conf   y copiamos estas lineas

[INCLUDES]

# Read common prefixes. If any customizations available -- read them from
# common.local
#before = common.conf

[Definition]

#_daemon = asterisk

# Option:  failregex
# Notes.:  regex to match the password failures messages in the logfile. The
#          host must be matched by a group named "host". The tag "<HOST>" can
#          be used for standard IP/hostname matching and is only an alias for
#          (?:::f{4,6}:)?(?P<HOST>\S+)
# Values:  TEXT
#

failregex = NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>(:[0-9]{1,5})?' - No matching peer found
            NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>(:[0-9]{1,5})?' - Wrong password
            NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>(:[0-9]{1,5})?' - Username/auth name mismatch
            NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>(:[0-9]{1,5})?' - Device does not match ACL
            NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>(:[0-9]{1,5})?' - Peer is not supposed to register
            NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>(:[0-9]{1,5})?' - ACL error (permit/deny)
            NOTICE.* .*: Registration from '.*' failed for '<HOST>(:[0-9]{1,5})?' - No matching peer found
            NOTICE.* .*: Registration from '.*' failed for '<HOST>(:[0-9]{1,5})?' - Wrong password
            NOTICE.* .*: Registration from '.*' failed for '<HOST>(:[0-9]{1,5})?' - Username/auth name mismatch
            NOTICE.* .*: Registration from '.*' failed for '<HOST>(:[0-9]{1,5})?' - Device does not match ACL
            NOTICE.* .*: Registration from '.*' failed for '<HOST>(:[0-9]{1,5})?' - Peer is not supposed to register
            NOTICE.* .*: Registration from '.*' failed for '<HOST>(:[0-9]{1,5})?' - ACL error (permit/deny)
            NOTICE.* <HOST> failed to authenticate as '.*'$
            NOTICE.* .*: No registration for peer '.*' \(from <HOST>\)
            NOTICE.* .*: Host <HOST> failed MD5 authentication for '.*' (.*)
            NOTICE.* .*: Failed to authenticate user .*@<HOST>.*
            NOTICE.* .*:Sending fake auth rejection for device .*@<HOST>.*

# Option:  ignoreregex
# Notes.:  regex to ignore. If this regex matches, the line is ignored.
# Values:  TEXT
#
ignoreregex =


-----------------------------------------------------------------
Luego de haber echo estos pasos debemos reiniciar asterisk, con un simple
-----------------------------------------------------------------
root@asterisk#amportal restart
root@asterisk#/etc/init.d/fail2ban restart
-----------------------------------------------------------------
Solo queda loguearnos desde un cliente sip o iax2 y después de los intentos permitidos veremos la ip baneada como este ejemplo que dice que la dirección  une.net. ha sido baneado por iptables con un DROP, porque trató de conectarse con una extensión o contraseña falsa con Asterisk y supero el numero de intentos fallidos y sera baneado por el tiempo que especificamos en jail.conf.
para mirar cuantas direcciones hay baneadas solo ejecutamos
-----------------------------------------------------------------
 iptables -L
-----------------------------------------------------------------
---------------------------------------------------------------
Si queremos desbanear una dirección es muy fácil solo miramos cuantas direcciones baneadas hay y ejecutamos el siguiente comando, el 1 es porque solo hay uno baneado y se encuentra en el primer lugar.
---------------------------------------------------------------
iptables -D fail2ban-ASTERISK 1
---------------------------------------------------------------
Espero haber sido claro en este pequeño tutorial esta fue la forma mas clara para mi, hasta una próxima..!!!

Att. Tiempo20
Blog http://asterisk18.blogspot.com/









miércoles, 14 de mayo de 2014

colgar llamadas desde una extensión

Bueno hoy vamos a configurar una extensión para colgar una llamada en una extensión especifica, es bastante fácil, pero algunos no lo es, entonces comenzamos y agregamos un contexto en extension.conf en la siguiente ruta
;----------------------------------------------------------
/etc/asterisk/extensions.conf
;----------------------------------------------------------
Debemos agregarlo debajo del contexto [from-internal] o el que tengan configurado para este tipo de extensiones a colgar. Lo resalto en negrita y agregamos el include en el contexto de trabajo.
;-----------------------------------------------------------

[from-internal]
include => from-internal-noxfer
include => from-internal-xfer
include => bad-number ; auto-generated
include => custom-spy
include => soft-hangup
;-----------------------------------------------------------
[soft-hangup]
exten =>_3XXXX,1,Authenticate(1234)
same =>n,SoftHangup(SIP/${EXTEN:1},a)
same =>n,Hangup()
;-----------------------------------------------------------
Este ejemplo es porque trabajo con extensiones de tipo 7121 cuatro dígitos.
Si la extensión 7121 tiene una llamada activa y no es productiva para la empresa y quisiéramos colgarla, marcamos desde la extensión 7122 de esta forma 37121 nos pide la contraseña que en este caso es 1234 y la llamada se cuelga inmediatamente y, así para cualquier otra extensión.

Saludos!!!  (el poder del conocimiento está en compartir lo que aprendemos)
ATT. Tiempo20

Anexo el link de donde lo hice


solución chanspy al colgar sigue activo

Pienso que vendría bien compartir con uds la forma de configurar ChanSpy en asterisk 1.8 y debian Squeeze, para que no se quede en silencio y con la llamada activa después de colgar. Si tenemos un FreePbx por defecto se inicia la configuración en el archivo /etc/asterisk/extensions_additional.conf  aquí no se hace  nada porque cada que reiniciemos el servidor asterisk carga la configuracion por default del ChanSpy.
Para asignar una contraseña al ChanSpy cuando digitemos 555 vamos a modificar el archivo  /etc/asterisk/extensions_override_freepbx.conf muchas veces esta vació, pero antes de abrirlo nos aseguramos de hacer una copia de respaldo, bueno abrimos el archivo y agregamos estas lineas
--------------------------------------------------------------

[app-chanspy-custom]
exten => 5551,1,Answer
exten => 5551,2,Authenticate(1234)
exten => 5551,3,Wait(1)
exten => 5551,4,Goto(custom-app-enh-chanspy,s,1)
exten => 5551,5,Hangup

; end of [app-chanspy-custom]

[custom-app-enh-chanspy]
exten => s,1,BackGround(please-enter-the)
exten => s,n,Read(SPYNUM|extension)
exten => s,n,ChanSpy(SIP/${SPYNUM}|wv4)

;end of extensions_custom.conf

[app-chanspy]
include => app-chanspy-custom
exten => 555,1,Authenticate(1234)
exten => 555,2,Read(SPYNUM,extension)
exten => 555,3,ChanSpy(SIP/${SPYNUM},bq)

; end of [app-chanspy]

include => app-chanspy
include => app-chanspy-custom
-------------------------------------------------------------
Las lineas a modificar estan en negrita, donde (1234) es la contraseña que debemos ingresar para escuchar las llamadas. y, bq son para que el ChanSpy solo busque canales con audio y no se quede colgado sin audio y con la llamada en linea. Para pasar de llamada solo presionamos la tecla (*) y toda llamada nueva que entre la vamos a escuchar sin ser oídos.
b= es para que solo busque canales con audio.
w= es para participar en la llamada que espiamos.
q= es para escuchar y no nos oigan.
ejm= bw) así seria para que asterisk solo busque canales con audio y participar en la llamada.

Nota: En mi humilde opinión recomiendo colocar la b así evitamos que el ChanSpy se quede en silencio y activo y, aunque colguemos la llamada siempre permanecerá activa, de esta manera trabaja mucho mas rápido y estable, así cuando colguemos la llamada ChanSpy se cerrara el canal normalmente.

Espero aportar con un poco de mucha consulta en la WEB para dar con la solución que me funciono..!!!

Saludos!
ATT. Tiempo20


martes, 13 de mayo de 2014

colgar llamadas desde consola en asterisk 1.8

Aclaro que esta función me funciona perfectamente en ASTERISK 1.8 en debian squeeze
Lo primero es mirar el id del canal o extension a colgar
ejecutamos el siguiente comando desde la cli de Asterisk.
-----------------------------------------------------------------
CLI>core show channels

----------------------------------------------------------------
Aquí vemos los canales y extensiones activos. Si queremos colgar la llamada en la extension 5545
ejecutamos el siguiente comando desde el CLI.
----------------------------------------------------------------
----------------------------------------------------------------
Y la llamada en la extensión 5545 se cuelga inmediatamente, espero poder ayudar a quien lo necesite.
Si quisiéramos colgar un canal solo es reemplazar la extensión por el canal.
Saludos..!!! Att Tiempo20

miércoles, 30 de abril de 2014

solución ralink 5360 dwa-525

Hola amig@s de los que no se dan por vencidos, igual yo, esta instalación ha funcionado en DEBIAN SQUEEZE, no lo he intentado en otros S.O.
Debido a todo el tiempo que busque la solucion y en vista que ninguno me funcionaba,  pensé que debía desistir de la instalacion de la tarjeta de red inalambrica D-Link DWA-525  (Ralink 5360), por esta razón he publicado la forma en que logre la instalacion correcta de esta inalámbrica, espero les pueda ayudar.
Bueno en primer lugar agregamos los repositorios para la instalación del firmware-Ralink en esta ruta.
nano /etc/apt/sources.list y agregamos los siguientes repositorios:

----------------------------------------------------------------------------------
deb http://security.debian.org/ testing/updates main contrib non-free
deb-src http://security.debian.org/ testing/updates main contrib non-free
deb http://www.debian-multimedia.org testing main non-free
deb http://ftp.debian.org/debian testing main contrib non-free
deb-src http://ftp.debian.org/debian testing main contrib non-free
----------------------------------------------------------------------------------
actualizamos los repositorios
------------------------------------
apt-get update
------------------------------------
Instalamos el firmware-Ralink
------------------------------------
apt-get install firmware-ralink
------------------------------------
Luego descargamos el driver para dicha tarjeta de red inalámbrica Ralink 5360 del siguiente link
-----------------------------------------------------------------------------------------
https://drive.google.com/file/d/0B5wqQb0HQzDNNjBIcngwckpLalE/edit?usp=sharing
-----------------------------------------------------------------------------------------
Descomprimir el archivo compat-wireless-2012-07-03-p.tar.bz2  instalamos unrar y damos clic derecho extraer aquí ó por linea de comando
------------------------------------------------------------------
bzip2 -dc compat-wireless-2012-07-03-p.tar.bz2 | tar -xv
------------------------------------------------------------------
Nos paramos en el directorio compat-wireless-2012-07-03-p
------------------------------------------------------------------
cd  ruta-carpeta/compat-wireless-2012-07-03-p
------------------------------------------------------------------
Seguimos con los scripts para la instalacion
------------------------------------------------------------------
./scripts/driver-select restore
./scripts/driver-select rt2x00
make clean
make
make install
------------------------------------------------------------------
Después de todo el proceso hacemos un simple reboot y al iniciar veremos nuestras inalámbricas dentro del alcance de la tarjeta.
espero les sea de ayuda, si te funciona no olvides volver!

miércoles, 15 de enero de 2014

RESTRINGIR NUMEROS EN FREEPBX ASTERISK 1.8

En algún momento necesitamos restringir algunos números a determinada extensión(es), pues bien vamos seguir el ejemplo de la imagen y sera muy fácil.

Podemos crear una nueva ruta de salida, por ejemplo Restringidos para agregar las extensiones que tendrán números bloqueados, es decir solo podrán marcar los números que se les permita.



En este ejemplo  he creado dos grupos de extensiones uno empiezan por 77XX y el otro 600X que tendrán salida a cualquier numero y una extensión 55455 que solo le permitiré hacer llamadas a números que empiezan por 2 hasta el 6, por ejemplo 2885467, 4736782, lo que hago con los números [2-6] dentro de los corchetes es para tome cualquier dígito del 2 hasta el 6 como primer dígito.
solo hay que configurar la ruta de salida solamente, no hay que agregar el CallerID en la extensión.

Bueno así de fácil fue. Saludos a Tod@s...