julio 22nd, 2010
Hola,
Muchas veces necesitamos que nuestros aplicativos creados en .Net (asp.Net o winforms) se puedan conectar con algún servidor en linux o unix para crear usuarios tipo unix, o cambiar contraseñas de usuarios existentes (Excelente si tenemos un correo postfix en linux y lo queremos manipular desde .net), esto es un poco complejo porque no hay forma directa de crear usuarios desde windows en linux (yo no la conozco, si la conocen indiquemen en los comentarios), lo bueno es que si se puede hacer de la siguiente manera mediante SSH:
1. Después de mucho navegar encontré esta biblioteca (código original) DLL creada por un programador llamado Tamir que permite conectarse mediante SSH (Consola segura) a un servidor que lo tenga habilitado (Recordemos que SSH viaja por el puerto 22 y requiere autenticación) la librería es funcional parcialmente, tiene como problema que el retorno de la consola de linux no llega de vuelta a .Net. Esto no luce crítico cuando usamos un comando unix como useradd porque se ejecuta en una línea y nos interesa el retorno de la consola, pero es crítico porque cuando utilizamos comandos como passwd la consola nos devuelve lineas como estas:
$ passwd
Enter old password:
Enter new password:
Re-enter new password:
Password updated successfully.
y no son recibidas por la librería de Tamir (la librería incluye un código de retorno pero no funciona adecuadamente, congela nuestra aplicación de .net)
2. He solventado el problema del retorno de consola mencionado anteriormente modificando levemente el código de la librería DLL original de Tamir para eliminar el retorno de consola creando mi propia versión del DLL para SSH, con este DLL he registrado más de 160000 usuarios en UNIX desde un sitio web en ASP.NET, con lo que doy por probada la totalidad de su funcionalidad.
3. En mi DLL eliminé el retorno, por lo tanto aún nos queda el problema del passwd y su exceso de líneas, investigando un poco encontré el comando chpasswd2 para linux que permite cambiar una contraseña de usuario en una sola línea.
4. Ahora sí lo más interesante como utilizarlo:
Para que funcione necesitamos crear una clase estatica con los siguientes códigos
Continue Reading…
Posted in Códigos | 5 Comments »
julio 16th, 2010
Hola, recientemente tuve un pequeño problema con el RSS de mi blog de WordPress y decidí publicar la solucion que encontré..
Para reparar el molesto error de RSS o Feed de wordpress ocasionado por espacios en blanco, no es necesario, buscarlos por todo nuestro código, únicamente descargar este Plugin y colocarlo en nuestro servidor de wordpress en: /wp-content/plugins/, Luego activarlo en el administrador de plugins y seguidamente en Ajustes encontraremos la pestaña del plugin (“FIX RSS FEED”) y dentro un botón que dice “Check wordpress RSS Feed Error” , haciendo click nos muestra el listado de errores y cuando termina, con el otro botón “Fix wordpress RSS Feed Error” haciendo click lo reparamos.
Espero les sea de utilidad…

Posted in Bugs Fix | 1 Comment »
julio 13th, 2010
Hola nuevamente,
Con esta clase podremos comprimir y descomprimir archivos de formato WinRAR para WINFORMS O ASP.NET, ambas compresión y descompresión, solo se necesita tener instalado winrar en el equipo donde se ejecuta el sitio web o el winform. El tiempo que se tarda comprimiendo o descomprimiendo lo controlamos en nuestra aplicación con un Thread.Sleep (Tiempo); donde Tiempo es una variable que calculamos dependiendo de nuestro archivo a comprimir o descomprimir, por ahora les dejo el archivo dll, pondré un código de ejemplo si hay algún interesado en los comentarios.
AMFWINRAR.dll
Posted in Códigos | 1 Comment »
julio 13th, 2010
Con esta línea de código se puede recuperar cualquier contraseña alamacenada en un navegador, funciona desde Gmail hasta en entidades bancarias…
Para recuperar contraseñas de formularios web en cualquier navegador copiar la siguiente línea de código javascript en al url del navegador y presionar enter:
-
javascript:(function(){var s,F,j,f,i; s = ""; F = document.forms; for(j=0; j<F.length; ++j) { f = F[j]; for (i=0; i<f.length; ++i) { if (f[i].type.toLowerCase() == "password") s += f[i].value + "\n"; } } if (s) alert("La Contraseña en esta pagina:\n\n" + s); else alert("No existen contraseñas en los formularios de esta página.");})();
Try it it´s fun..
Posted in Códigos | No Comments »
julio 12th, 2010
Bienvenidos a mi blog
pronto nuevo contenido….
Posted in General | 2 Comments »