Saber Información de los usuarios a través de un web service

La empresa MaxMind tiene disponible APIS para poder obtener información del País, ciudad, Región, Latitud y Longitud de los visitantes. A través de la IP.
La empresa cuenta con dos versiones, la gratuita, que es la que usamos en el ejemplo posterior y la de paga, donde esta última ofrece una exactitud mayor, además de estar actualizada en su base de datos cada semana.
Dichas APIS se encuentran disponibles para los siguientes lenguajes de programación: (C, Perl, PHP, Java, Python, C#, Ruby, MS COM, VB.NET, Pascal, JavaScript. Para nuestro ejemplo utilizaremos JavaScript

Ejemplo del código:

?Ver código JAVASCRIPT
<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
<br>Código del País:
<script language="JavaScript">document.write(geoip_country_code());</script>
<br>Nombre del País:
<script language="JavaScript">document.write(geoip_country_name());</script>
<br>Ciudad:
<script language="JavaScript">document.write(geoip_city());</script>
<br>Region:
<script language="JavaScript">document.write(geoip_region());</script>
<br>Nombre de la Region:
<script language="JavaScript">document.write(geoip_region_name());</script>
<br>Latitud:
<script language="JavaScript">document.write(geoip_latitude());</script>
<br>Longitud:
<script language="JavaScript">document.write(geoip_longitude());</script>
<br>Código Postal:
<script language="JavaScript">document.write(geoip_postal_code());</script>

Restablecer cuenta administrador en MAC OX

Si se nos ha olvidado el password de la cuenta de administrador, este password puede restablecerse de dos maneras.

A continuación los pasos dependiendo de la versión .

En versión 10.5 Leopard
Reniciar la  Mac
1. Después del sonido de inicio( o bien cuando la pantalla se encuentre en gris, si el sonido de inicio se encuentra desactivado), presionar las teclas Apple+S on en el teclado para entrar en el modo de usuario “single”.
2. Teclear mount -uw / y presionar enter // esto nos permitirá montar la unidad de ficheros
3. Teclear launchctl load /System/Library/LaunchDaemons/com.apple.DirectoryServices.plist y presionar Enter.
4. Teclear ls /Users y presionar Enter // nos listara los nombres de usuarios de las cuentas del sistema
5. Teclear dscl . -passwd /Users/username password and replace “username” // donde username es el nombre de usuario y password es el la nueva contraseña a ingresar
6. Teclear el comando rebbor y presionar enter

En versión 10.5 Leopard

1.Reniciar la  Mac

2. Después del sonido de inicio( o bien cuando la pantalla se encuentre en gris, si el sonido de inicio se encuentra desactivado), presionar las teclas Apple+S on en el teclado para entrar en el modo de usuario “single”.

3. Teclear mount -uw / y presionar enter // esto nos permitirá montar la unidad de ficheros

4. Teclear launchctl load /System/Library/LaunchDaemons/com.apple.DirectoryServices.plist y presionar Enter.

5. Teclear ls /Users y presionar Enter // nos listara los nombres de usuarios de las cuentas del sistema

6. Teclear dscl . -passwd /Users/username password and replace “username” // donde username es el nombre de usuario y password es el la nueva contraseña a ingresar

7. Teclear el comando rebbor y presionar enter

Con versión 10.4 Tiger

  1. Prender o reiniciar la Mac.
  2. Después del sonido de inicio (o bien cuando la pantalla se encuentre en gris, si el sonido de inicio se encuentra desactivado), presionar las teclas Apple+S on en el teclado para entrar en el modo de usuario “single”.
  3. Teclear sh /etc/rc y presionar Enter.
  4. Teclear passwd username donde username es el nombre de usuario al cual deseamos cambiar la contraseña. Posteriormente se pedira la nueva contraseña, se ingresa y pedirá nuevamente la confirmación, una vez tecleado Enter la contraseña estará restablecida.
  5. Teclear Enter o Reboot y el sistema acatará los nuevos cambios.

Eliminando el archivo de configuración “Setupdone”, para cualquier Mac OS X.

Nota.- Este método no es propiamente un método para restablecer la contraseña, si no que elimina el archivo de configuración “AppleSetupDone”, que es creado al terminar una instalación de Mac, lo que ocasione que el sistema operativo piense que va a ser configurado por primera vez. Los datos serán preservados siempre y cuando después de realizar estos pasos no se escoja la opción de transferir o o migrar información a la Mac.

  1. Prender o reiniciar la Mac.
  2. Después del sonido de inicio (o bien cuando la pantalla se encuentre en gris, si el sonido de inicio se encuentra desactivado), presionar las teclas Apple+S on en el teclado para entrar en el modo de usuario “single”.
  3. Teclear mount -uw / y presionar Enter.
  4. Teclear rm /var/db/.AppleSetupDone y presionar Enter.
  5. Teclear shutdown -h now  y presionar Enter o Reboot.

More >

Desarrollar código Flex usando el editor TextMate

El “bundle” existente para codificar Flex en TextMate se encuentra en revisión, es decir aún no pertenece a los “bundles”, sin embargo este puede ser de mucho uso.

Los pasos son los siguientes:

export LC_CTYPE=en_US.UTF-8
mkdir -p /Library/Application Support/TextMate/Bundles/
cd ~/”Library/Application Support/TextMate/Bundles/”
svn co http://svn.textmate.org/trunk/Review/Bundles/Flex.tmbundle
osascript -e ‘tell app “TextMate” to reload bundles’

To install via Git:

cd ~/”Library/Application Support/TextMate/Bundles/”
git clone git://github.com/simongregory/flex-tmbundle.git “Flex.tmbundle”
osascript -e ‘tell app “TextMate” to reload bundles’

Para más información:
Blog de Simon Regory
ttp://svn.textmate.org/trunk/Review/Bundles/Flex.tmbundle/

Libro “Integrando AJAX & PHP” a la venta

El libro “Integrando AJAX & PHP” se encuentra ya publicado en la siguiente liga:

VER PUBLICACIÓN

El objetivo de dicha edición es:
Proveer las herramientas necesarias para que el profesional desarrolle o integre aplicaciones web de segunda generación, conocidas como web 2.0. Con ayuda de lenguaje de programación PHP en la parte de servidor y AJAX em la generación de Aplicaciones Ricas para la Internet (RIA).

Support independent publishing: Buy this e-book on Lulu.

Obteniendo código JSON a partir de una tabla en MySQL.

Es posible que dentro de nuestras aplicaciones PHP tendamos que requerir datos a partir de tablas en formato JSON. Para el intercambio de información o bien para aplicaciones específicas que necesiten analizar datos en este formato.

JSON (JavaScript Object Notation) es un formato para intercambio de datos ligero. Fácil
de lectura y escritura para los humanos y fácil para las máquinas analizar y generar.
Aunque JSON es un formato de texto es completamente independiente de cualquier
lenguaje sin embargo usa convenciones que son familiar a programadores de lenguajes
provenientes de la familia del lenguaje de programación C, incluyendo C++, C#, java,
JavaScript, Perl, Python y mpara intercambio de datos.

A continuación una función en PHP que nos devuelve automáticamente los datos contenidos en una tabla en formato JSON. En este caso para el acceso a la Base de datos nos encontramos utilizando código del programa: ezSQL_mysql por: Justin vincent (http://php.justinvincent.com)
More >

Trucos de compilación con GCC Parte I

En un post anterior mostramos como obtener el bytecode a partir de un código en C.
Ahora mostraremos diversas cualidades de GCC que explotaremos para generar el código máquina, código objeto y código ejecutable.

El programa que se utilizaré para los fines prácticos es el siguiente, que llamaremos shellcode.c:
More >

Configuración de Interfaces de red virtuales en VMware Fusion

VMware Fusion es un producto de la empresa VMware para virtualizar sistemas operativos en cualquier MAC con procesador Intel.

En ocasiones es necesario cambiar la configuración de interfaces de red, estas propias para cada sistema operativo virtualizado. A continuación la serie de comandos necesarios a ejecutar en una terminal para poder realizar los cambios necesarios.

vim /Library/Application\ Support/VMware\ Fusion/vmnet1/dhcpd.conf /* editamos dhcod.conf de la interfaz seleccionada realizando los cambios a nuestra conveniencia */

/Library/Application\ Support/VMware\ Fusion/boot.sh –stop

rm /Library/Application\ Support/VMware\ Fusion/locations

/Library/Application\ Support/VMware\ Fusion/vmware-config-net.pl
/*aquí el script realizará las configuraciones necesarias*/

/Library/Application\ Support/VMware\ Fusion/boot.sh –start

Obtener un areglo de caracteres, a partir de una cadena de texto.

El siguiente código es útil cuando se requiere formatear una cadena de caracteres en texto e insertar cada palabra en una celda, dentro de una tabla HTML.
More >

Diez mejores prácticas de seguridad para cómputo personal.

Documento en inglés donde mostramos diez mejores prácticas para evitar amenazas de seguridad en computadores personales.

10 Best Sec Practices

Seguridad Básica para redes 802.11

El siguiente documento se encuentra basado en la recomendación que proporciona la NSA para asegurar redes que se encuentren dentro del estándar IEEE 802.11.

Seguridad Básica para 802.11