Hace un rato buscando un módem huawei para poder hackearlo en Linux y Asterisk, vi que en Mercado Libre ofertan unos Routers Inalámbricos Huawei en $200.00 Pesos. Esto me llamó mucho la atención ya que recuerdo que en mi clase de redes LAN cuándo cursaba el Séptimo Semestre de la carrera de informática en el Tec de Oaxaca, el maestro de la clase que la impartía el Lic. Luis Pérez, llevó un Access Point y nos enseñó a grosso modo como configurar una red inalámbrica, recuerdo que nos comentó que por esas fechas un AP tenía un costo alrededor de $1,000 US Dlls, era un AP 802.11b a 11 Megabits, probamos su funcionamiento y vaya que quedé asombrado como es que los datos se podían transmitir inalámbricamente, ja recuerdo que todo un fin de semana intenté comprender como era que los datos se transmitían inalámbricamente, tiempo después Tesla ayudaría a comprender mejor esto.
Hace unos días un amigo me comentó que unos teléfonos Aastra 9112i que se compraron en el 2006 le estaban fallando, por lo que aprovechando que ando de vacaciones aquí en Oaxaca los revisé y vi que tenían un problema de firmware, por lo que bajé el firmware de la página de aastra y me disponía a instalárselos en estos Tels.
Pensé en un principio que podía enviarle el firmware vía http, pero estos teléfonos solo soportan el protocolo TFTP(Trivial FTP), solo que en mi lap no tenía un servidor TFTP, primero instalé el servidor tfptd-hpa pero a pesar de que la configuración es trivial no lo pude echar andar por lo que seguí buscando y buscando, de hecho ya estaba a punto de reiniciar con Windows y probar con Solar TFTP que es un servidor que usé hace varios años cuándo le actualizaba el firmware a terminales portátiles que venían con DOS, pero antes de desistir entré a sourceforge para ver que novedad me encontraba y pude coincidir con OpenTFTP
Básicamente es descargar el código fuente, descomprimirlo, compilarlo, editar el archivo de configuración y ejecutarlo, por lo que pongo rápidamente el proceso de instalación y configuración que usé para echarlo andar en Linux.
cd/usr/src #Obtenemos el código fuente sudowget http://downloads.sourceforge.net/project/tftp-server/tftp%20server%20multithreaded/opentftpmtV1.63.tar.gz?r=&ts=1293699246&use_mirror=cdnetworks-us-1 #descomprimimos el código fuente sudotar-xzvf opentftpmtV1.63.tar.gz #entramos al directorio cd opentftp/ #compilamos el código fuente g++ opentftpd.cpp -lpthread-oopentftpd #copiamos el archivo de configuración al directorio /etc sudocp opentftpd.ini /etc/ #editamos el archivo de configuración sudonano/etc/opentftpd.ini #ponemos la dirección IP de la interfaz del servidor dónde deseamos escuchar las peticiones TFTP, si no ponemos nada el servidor TFTP escuchará en todas las interfaces de red. [LISTEN-ON]
192.168.15.100 #Debemos crear el directorio previamente y asignarle permisos de lectura y escritura [HOME] /var/spool/tftpd #Ponemos None si no queremos que guarde logs el servidor TFTP, también está Errors o All [LOGGING]
None #Indicamos los clientes que podrán conectarse al servidor, si no indicamos nada entonces todos los clientes se podrán conectar. [ALLOWED-CLIENTS]
192.168.15.1-192.168.15.254
Podemos dejar los valores por default asignados debajo de [TFTP-OPTIONS] #Guardamos el archivo de configuración #Ejecutamos el servidor de OpenTFTP sudo ./opentftpd -v #Si todo salió bien podríamos ver algo como lo siguiente
TFTP Server MultiThreaded Version 1.62 Unix Built 1621
starting TFTP...
username: root alias/ is mapped to /var/spool/tftpd/
permitted clients: all
server port range: 30000-30010
max blksize: 65464
default blksize: 512
default timeout: 3 fileread allowed: Yes file create allowed: Yes file overwrite allowed: Yes
thread pool size: 95
listening on: 192.168.15.100:69
Accepting requests.. #Si por alguna razón ya hubiera otro servidor usando el puerto 69 del TFTP entonces podríamos observar un mensaje como el siguiente:
0.0.0.0 Port 69, bind failed, Address already in use
no listening interfaces available, stopping.. #Aquí solo sería revisar que servidores están en ejecución y detenerlos si asi fuera necesario para volver a ejecutar opentftp.
Con lo anterior ya podemos poner los archivos *.st del firmware de los teléfonos aastra en el directorio del servidor TFTP y descargarlos desde los teléfonos indicando la dirección IP del servidor así como el nombre del archivo a descargar.
Hace tiempo escuché hablar de Mikrotik pero nunca ahondé más en el tema por el hecho de que mi giro no estaba enfocado en esa rama, pero en las últimas semanas debido a que los clientes me han empezado a solicitar soluciones de Firewall para control de sus redes internas y externas he estado implementando IPCop para darles solución. Conformé he estado investigando nuevas tecnologías tanto de hardware y software he encontrado varias algunas caras y otras más caras, algunas buenas y otras no tanto, pero entre búsqueda y búsqueda di con Mikrotik una tecnología que me llamó atención debido a que es una solución Software/Hardware con un potencial tremendo y la cuál es una solución muy robusta para la administración de redes cableadas y no se diga para la implementación de enlaces inalámbricos.
Lo más interesante es que es una solución que a pesar de ser muy buena no es abusiva en el costo, por ejemplo abajo pongo la lista de características de un router básico de Mikrotik que tiene un costo de alrededor de los $130.00 US Dlls, muchos que han adquirido appliances de firewall, ruteo, seguridad, hotspot, etc., podrían sentirse defraudados con los miles de pesos que pagaron y que con esta solución la tienen a una fracción de su costo.
Aquí en México existe WNI quién es un proveedor de esta tecnología el cuál un amigo oaxaqueño me recomendó quien ya ha probado las bondades de esta tecnología incluso haciendo negocio proveyendo servicios basados en este hardware
Major features<br>
• Firewall and NAT - stateful packet filtering; Peer-to-Peer protocol filtering; source and
destination NAT; classification by source MAC, IP addresses (networks or a list of networks)
and address types, port range, IP protocols, protocol options (ICMP type, TCP flags and MSS),
interfaces, internal packet and connection marks, ToS (DSCP) byte, content, matching
sequence/frequency, packet size, time and more...
• Routing - Static routing; Equal cost multi-path routing; Policy based routing (classification donein firewall); RIP v1 / v2, OSPF v2, BGP v4
• Data Rate Management - Hierarchical HTB QoS system with bursts; per IP / protocol / subnet / port / firewall mark; PCQ, RED, SFQ, FIFO queue; CIR, MIR, contention ratios, dynamic
client rate equalizing (PCQ), bursts, Peer-to-Peer protocol limitation
• HotSpot - HotSpot Gateway with RADIUS authentication and accounting; true Plug-and-Play
access for network users; data rate limitation; differentiated firewall; traffic quota; real-time
status information; walled-garden; customized HTML login pages; iPass support; SSL secure
authentication; advertisement support
• Point-to-Point tunneling protocols - PPTP, PPPoE and L2TP Access Concentrators and
clients; PAP, CHAP, MSCHAPv1 and MSCHAPv2 authentication protocols; RADIUS
authentication and accounting; MPPE encryption; compression for PPPoE; data rate limitation;
differentiated firewall; PPPoE dial on demand
• Simple tunnels - IPIP tunnels, EoIP (Ethernet over IP)
• IPsec - IP security AH and ESP protocols; MODP Diffie-Hellman groups1,2,5; MD5 and
SHA1 hashing algorithms; DES, 3DES, AES-128, AES-192, AES-256 encryption algorithms;
Perfect Forwarding Secrecy (PFS) MODP groups1,2,5
• Proxy - FTP and HTTP caching proxy server; HTTPS proxy; transparent DNS and HTTP
proxying; SOCKS protocol support; DNS static entries; support for caching on a separate drive;
access control lists; caching lists; parent proxy support
• DHCP - DHCP server per interface; DHCP relay; DHCP client; multiple DHCP networks;
static and dynamic DHCP leases; RADIUS support
• VRRP - VRRP protocol for high availability
• UPnP - Universal Plug-and-Play support
• NTP - Network Time Protocol server and client; synchronization with GPS system
• Monitoring/Accounting - IP traffic accounting, firewall actions logging, statistics graphs
accessible via HTTP
• SNMP - read-only access
• M3P - MikroTik Packet Packer Protocol for Wireless links and Ethernet
• MNDP - MikroTik Neighbor Discovery Protocol; also supports Cisco Discovery Protocol (CDP)
• Tools - ping; traceroute; bandwidth test; ping flood; telnet; SSH; packet sniffer; Dynamic DNS
update tool
• Wireless - IEEE802.11a/b/g wireless client and access point (AP) modes; Nstreme and
Nstreme2 proprietary protocols; Wireless Distribution System (WDS) support; virtual AP; 40
and 104 bit WEP; WPA pre-shared key authentication; access control list; authentication with
RADIUS server; roaming (for wireless client); AP bridging
• Bridge - spanning tree protocol; multiple bridge interfaces; bridge firewalling, MAC NATting
• VLAN - IEEE802.1q Virtual LAN support on Ethernet and wireless links; multiple VLANs;
VLAN bridging
• Synchronous - V.35, V.24, E1/T1, X.21, DS3 (T3) media types; sync-PPP, Cisco HDLC,
Frame Relay line protocols; ANSI-617d (ANDI or annex D) and Q933a (CCITT or annex A)
Frame Relay LMI types
• Asynchronous - serial PPP dial-in / dial-out; PAP, CHAP, MSCHAPv1 and MSCHAPv2
authentication protocols; RADIUS authentication and accounting; onboard serial ports; modem
pool with up to 128 ports; dial on demand
• ISDN - ISDN dial-in / dial-out; PAP, CHAP, MSCHAPv1 and MSCHAPv2 authentication
protocols; RADIUS authentication and accounting; 128K bundle support; Cisco HDLC, x75i,
x75ui, x75bui line protocols; dial on demand
• SDSL - Single-line DSL support; line termination and network termination modes
IA32 Hardware requirements
• CPU and motherboard - advanced 4th generation (core frequency 100MHz or more), 5th
generation (Intel Pentium, Cyrix 6X86, AMD K5 or comparable) or newer uniprocessor (multi-processor systems are not supported) Intel IA-32(i386) compatible architecture with PCI local bus
• RAM - minimum 32 MiB, maximum 1 GiB; 64 MiB or more recommended
• Non-volatile storage medium - standard ATA/IDE interface controller and drive (SCSI and
USB controllers and drives are not supported; RAID controllers that require additional drivers
are not supported; SATA is only supported in legacy access mode) with minimum of 64 Mb
space; Flash and Microdrive devices may be connected using an adapted with ATA interface
MIPS Hardware requirements
• Supported systems - RouterBOARD 500 series (532, 512 and 511)
• RAM - minimum 32 MiB
• Non-volatile storage medium - onboard NAND device, minimum 64Mb
Hardware needed for installation time only
• Floppy-based installation - standard AT floppy controller and 3.5'' disk drive connected as the
first floppy disk drive (A); AT, PS/2 or USB keyboard; VGA-compatible video controller card
and monitor
• CD-based installation - standard ATA/ATAPI interface controller and CD drive supporting "El Torito" bootable CDs (you might need also to check if the router's BIOS supports booting
from this type of media; if El Torito is not supported by the BIOS, you can still boot up from
the CD using Smart Boot Manager Floppy); AT, PS/2 or USB keyboard; VGA-compatible
video controller card and monitor
• Floppy-based network installation - standard AT floppy controller and 3.5'' disk drive
connected as the first floppy disk drive (A); PCI Ethernet network interface card supported by
MikroTik RouterOS (see the Device Driver List for the list)
• Full network-based installation - PCI Ethernet network interface card supported by MikroTik
RouterOS (see the Device Driver List for the list) with PXE or EtherBoot extension booting
ROM (you might need also to check if the router's BIOS supports booting from network)
Configuration possibilities
• Local teminal console - AT, PS/2 or USB keyboard and VGA-compatible video controller card
with monitor
• Serial console - any (you may choose any one; the first, also known as COM1, is used by
default) RS232 asynchronous serial port, which is by default set to 9600bit/s, 8 data bits, 1 stop
bit, no parity, hardware (RTS/CTS) flow control
• Telnet - telnet server is running on 23 TCP port by default
• SSH - SSH (secure shell) server is running on 22 TCP port by default (available only if security
package is installed)
• MAC Telnet - MikroTik MAC Telnet potocol server is by default enabled on all Ethernet-like
interfaces
• Winbox - Winbox is a RouterOS remote administration GUI for Windows, that uses 8291 TCP
port. It may also connect routers by their MAC addresses
Hace unos días adquirí una tarjeta DH55HC para meterle un procesador Intel Core i7 860 a 2.86 Ghz, para esto instalé la versión de Ubuntu Server 8.04 con el kernel 2.6.24-26, todo funcionó bien a excepción de la tarjeta de red la cuál no fué detectada por el kernel de linux, por lo que me metí a la página de Intel para checar que dispositivo de red incluía esta tarjeta madre y buscar el driver, esto ya que Intel le da soporte a Linux.
La tarjeta de red Ethernet Gigabit incluída es la Intel® 82578DC, por lo que buscando los drivers en la página de Intel encontré los correctos para Linux 2.6.18 o superior y los cuáles pueden descargarse de la siguiente URL:
El proceso de instalación es muy simple y lo pongo a continuación:
#Creamos directorio de instalación mkdir-p ~/drivers/ethernet cd ~/drivers/ethernet #descargamos drivers wget http://downloadmirror.intel.com/15817/eng/e1000e-1.2.20.tar.gz #descomprimimos drivers sudotar-xzvf e1000e-1.2.20.tar.gz #entramos al directorio dónde está el código fuente cd e1000e*/src #compilamos e instalamos los drivers cómo módulo en el directorio del kernel utilizado sudomakeinstall #levantamos el módulo sudo modprobe e1000e sudo depmod -a #si damos ifconfig eth0 deberíamos de poder ver la interfaz intel ethernet gigabit ifconfig eth0
Hace un par de meses instalé un conmutador de Voz sobre IP a un cliente el cuál realiza en promedio cerca de 150 llamadas diarias, por lo que me solicitó que en el conmutador se grabaran las llamadas que recibiera e hiciera, esto quedo funcionando bien, el detalle que en ese tiempo se me pasó agregar un parámetro para que después de finalizada la grabación copiara el archivo de la llamada grabada a una carpeta con la fecha actual de la grabación, esto para ir organizando las llamadas, pero como esto no se hizo 40 días después obviamente tenía miles de llamadas grabadas por lo que revisar una por una fue complicado.
Por lo que se me ocurrió rápidamente hacer un script en PHP que listara la información por fecha y en base a la fecha del archivo crear una carpeta si es que este directorio no existiera y mover ahí el archivo grabado.
En el código solo modificar el directorio de búsqueda y el directorio dónde se crearán las carpetas y moverán los archivos, obviamente este script puede funcionar para cualquier tipo de archivo pero aquí lo hice para que busque archivos wav, cree un directorio de la fecha del archivo si esta no existe y mover ahí el archivo, y asi consecutivamente con todos los archivos.
Espero este script pueda serle de utilidad a alguien más y cualquier comentario hacérmelo llegar..
El desarrollo de Asterisk está creciendo a pasos agigantados y también la cantidad de software alrededor de esta plataforma que ya es un Killer App, por lo que buscando hace unos días información sobre USRP encontré información sobre OpenBTS y de ahí di con un vídeo en youtube sobre como interceptar llamadas entre teléfonos celulares, esto mediante un dispositivo USRP el cuál toma la función de un AP GSM, por lo que los móviles se conectan a estos AP pensando que son los verdaderos de Telcel o Movistar, pero lo que no saben es que en realidad es que son Fake AP que si permiten hacer llamadas, más no recibir obviamente, pero las llamadas realizadas son monitoreadas por el sistema Fake que se encuentra en medio.
En youtube se puede encontrar un video que explica aun más este nuevo concepto:
Buscando alternativas a la conexión de "Infiernitum" y otros proveedores que hay aquí en México y que dejan mucho que desear, encontré por casualidad el servicio de Tangennte.
Lo interesante de este nuevo proveedor de Internet es que ofrece servicios de banda Ancha de 3 Mbits de bajada con 2 Mbits de Subida, un servicio que pocas veces podemos ver con ese ancho de banda de subida, pero lo más interesante es su precio $391.00 mensuales ya con IVA incluído y otros impuestos.
Hace un rato revisando mi listado de llamadas perdidas desde el CDR de FreePBX quise regresar algunas llamadas, ya que los números eran de algunos amigos, por lo que comencé a marcar desde mi extensión sus números, pero algo que se me hizo poco ilógico es ¿ Cómo marcar a la antigüita si ya tengo un sistema Asterisk ?, lo primero que pensé fué un sistema Click2Dial, imaginé que primero tendría que programar algo adicional al CDR, pero imaginé que a lo mejor ya habría un plugin en Firefox que ya resolviera este detalle, por lo que me metí al sitio de Addons de Firefox a buscar un plugin y pude encontrar Asterisk Click2Dial.
Asterisk Click2Dial
Solo basta agregar el plugin como extensión de firefox, reiniciar firefox y configurar los parámetros de Asterisk Click2Dial.
En este caso preferí usar el modo AMI para hacer las llamadas, por lo que tuve que introducir el host del servidor de Asterisk, Puerto, Login, Password, Contexto y a que extensión mandaría el número marcado.
Los primeros parámetros los podemos configurar en el archivo de /etc/asterisk/manager.conf.
Ahora solo seleccionar cualquier número y presionar el botón derecho para luego elegir llamar al número seleccionado.
Hemos dividido nuestro curso de Telefonía de Voz sobre IP basada en la plataforma Asterisk PBX en 2 cursos, básico-principiantes e intermedio-avanzado, los cursos están diseñados para que el asistente con el curso de principiantes conozca desde los aspectos básicos de telefonía hasta los conocimientos principales para poder integrar un conmutador de voz sobre IP y ponerlo en producción, dónde podrá integrar un conmutador mediante tarjetas de telefonía Sangoma, Digium así como configurar opciones como son IVRs, Grupos de Marcación, Extensiones, Rutas de llamadas entrantes, salientes, bloqueo de llamadas, correos de Voz, etc .
El curso intermedio avazando se enfoca en cuestiones avanzadas de la telefonía de Voz sobre IP como son integración de Asterisk con CRM, desarrollo de aplicaciones, integración de bases de datos, texto a voz y reconocimiento de voz, videoconferencia, domótica y casas inteligentes entre, monitoreo entre otros temas avanzados que le darán al usuario mayores conocimientos en la integración de soluciones de Voz sobre IP más allá de un conmutador IP.
Para información del Temario, Fechas y Costos puede obtenerse mayor información en el siguiente PDF
El Software enfocado para empresas tales como los ERP (Enterprise Resource Planning) y los CRM (Customer Relationship Management) tienden a ser únicos. Esto debido a que cada empresa los utiliza de diversa manera, por lo que cada Software ERP y CRM deben ser personalizados de acuerdo a las necesidades de cada organización. Tradicionalmente esto implica desarrollar un Sistema ERP o CRM a la medica para los requerimientos específicos de una organización o la otra opción, comprar un Sistema ERP o CRM existente y personalizarlo.
Ambas opciones tienen significantes detalles.
Software hecho en casa
Un desarrollo hecho en casa generalmente tiende a iniciar desde cero, partiendo de la filosofía de "Nosotros sabemos que necesitamos, asi que hagámoslo", "Hacerlo" en desarrollo de software podría resultar caro y riesgoso, y la mayoría de los proyectos de software hechos en casa últimamente fallan en el conocimiento de las necesidades del usuario.
Pero el más grande riesgo actualmente es "saber lo que tu necesitas", incluso si el desarrollo conoce las necesidades al tiempo que este es desarrollado, ya que quizá un software hecho en casa pueda no seguir las mejores prácticas de la industria o no anticipar los planes a largo plazo de la organización.
Tanto la tecnología y los negocios necesitan cambios, asi que la organización tristetemente tendrá que mantener los cambios del software y cubrir los costos que implica. Estudios muestran que los costos de mantenimiento a largo plazo de un software propio incluso son tres o cuatro veces más del costo original del software.
Software Comercial
Comprar un ERP o CRM Comercial de algún proveedor presenta un conjunto de detalles diferentes. Al principio esta opción aparentemente debería eliminar los riesgos de un software hecho a la medida, pues de inicio obtiene las mejores prácticas de la industria y lo más último en tecnología, hace un lado los costos del desarrollo inicial el software a traves de los distribuidores y hace al distribuidor responsable por el mantenimiento a largo plazao del software.
Aunque en realidad un ERP o CRM comercial podría ser más caro y difícil de personalizar, aparte que podría dejar al usuario vulnerable a depender de un solo proveedor.
El software comercial requiere de un licenciamiento, incluso antes de que la organización sepa si realmente el software cumple con sus necesidades.
El software comercial está basado en la visión del proveedor de lo que podría ser una compañía "ideal", si esa visión se desvía de la realidad del usuario, entonces ahí tenemos una limitacion para cambiar el software esto porque no se tiene acceso al código fuente del software.
Finalmente, si el proveedor es comprado por otra compañía, se sale del negocio o simplemente descontinúa el producto, entonces el usuario se quedará sin algún tipo de soporte para sus aplicaciones.
La alternativa Open Source Code (Software de Código Fuente Abierto)
El Código Abierto brinda una alternativa la cuál direcciona muchos de los problemas clave tanto del software comercial como de software hecho a la medida. De inicio el Open Source ofrece al usuario un código base disponible libremente como punto de inicio. El usuario puede obtenerlo gratis y libremente para probarlo, y saber si cumple con sus requerimientos, sin correr el riesgo de pagar el costo de licenciamiento de un software que podría no funcionarle.
Si ninguna modificación es requerida, el software de código abierto puede ser implementado rápidamente tal como los software comerciales empaquetados.
Si es requerida la adecuación del software, el usuario ya tiene un avance significativo con un existente código base desarrollado, por lo tanto las empresas pueden continuar con la personalización del software a traves de su propio personal o hacer uso de la experiencia de la comunidad de desarrolladores.
La ventaja de un proyecto código abierto es que trae el conocimiento de los requerimientos del negocio debido a la contribución de muchas organizaciones, reduciendo significativamente los típicos riesgos de un software hecho a la medida.
La comunidad de código abierto también ofrece múltiples usuarios y desarrolladores que colaboran en el desarrollaro y pruebas de su software.
El resultado neto es, mejor software en menos tiempo.
A largo plazo el software de código abierto ofrece al usuario el control de un software personalizado y también de recursos externos que solo están disponibles en software comerciales.
Con el código fuente en la mano, el usuario puede decidir sobre un soporte y actualización futura.
Aquí nadie descontinuará el software, ya que el software comparte las mismas raíces del software libre, por lo que las organizaciones pueden obtener soporte y actualizaciones de la comunidad open source o adquirir soporte profesional de múltiples distribuidores en la comunidad.
Asi que el riesgo de llegar a ser abandonado debido a la perdida del distribuidor o de un empleado llave son reducidos significativamente con el código abierto.
Comentarios Recientes