ss_blog_claim=f608201a5759a78f27cb629c1a6d9de0

Wednesday, March 12, 2008

Ejecutar como (Run As)

Ejecución aplicaciones como otro usuario

En algunas ocasiones es necesario ejecutar aplicaciones con permisos administrivos o como si otro usuario lo estuviera haciendo. Así, por ejemplo, si estuvieramos realizando tareas administrativas también podríamos cargar el navegador web con los vínculos o marcadores de nuestra sesión de uso común. Esto lo realizamos con la opción Ejecutar como... del menu contextual sobre cualquier aplicación.

Automatización de la ejecución de aplicaciones como otro usuario

Si quisiéramos automatizar este tipo de ejecución podemos crear archivos de ejecución por lotes (*.bat) que invoquen a la aplicación RunAs. Ej: Para el caso de querer ejecutar el programa MSN Messenger como si fuéramos el usuario usuario2 se ingresaría la instrucción: runas /user:localhost\usuario2 "C:\Archivos de programa\MSN Messenger\msnmsgr.exe". A continuación nos pediría la contraseña de dicho usuario.

Automatización del ingreso de la contraseña para la ejecución de aplicaciones como otro usuario

Podemos automatizar aún más este tipo de ejecución con una aplicación que envíe el password solicitado. SANUR es una aplicación que implementa el concepto de tuberías (pipes) para conseguir este fin. Para que no tengamos que emplear la ruta absoluta del programa SANUR agregamos dicha ruta a la variable de entrono PATH. El comando a ejecutar quedarías así: runas /user:localhost\usuario2 "C:\Archivos de programa\MSN Messenger\msnmsgr.exe" | SANUR clave2.

Fuentes:

RunAs
SANUR

Tuesday, March 11, 2008

Tuneando el Windows XP

Para redactar este artículo requiero un editor de textos decente como es el Notepad++, lo instalaré desde dispositvo extraible. Al colocar la memoria USB en la laptop aparece un cuadro diálogo que me sugiere acciones a tomar. La acción a tomar será cerrar ese mensaje y evitar que vuelva a aparecer. ¿Cómo se hará eso? Google debe saber quién lo ha hecho. Entonces me voy a proteger con un buen antivirus y un firewall antes de sumergirme el internet. NOD32 (AVGFree era mi engreido hasta que me falló, utilizo un NOD32 Crackeado) y ZoneAlarm son las aplicacione de mi elección. El Firewall de Windows es totalmente inflexible, no brinda información detallada e internamente debe ser una coladera.

Preparándonos para navegar en internet

Instalación de Firewall (ZoneAlarm): Instalo ZoneAlarm y acepto la petición de reiniciar el equipo. Al ZoneAlarm le agrego mi red doméstica Firewall > Zones y Add >> Subnet
Zone: Trusted
IP Address: 192.168.1.0
Subnet Mask: 255.255.255.0
Description: CyberNet
Hacemos Click en Apply.

Instalación de Antivirus (NOD32): Instalo el NOD32, instalo el Crack, reinició la compu. También le presentamos el NOD32 al ZoneAlarm para que le permita realizar los updates.

Instalación de Navegador Web (Firefox): Istalamos Firefox. Le presentamos el Firefox al ZoneAlarm (Allow y Remember). Le decimos a Firefox que no verifique si es el navegador por defecto, ya que es el único. Mucho menos que importe vínculos desde Internet Explorer, ¿se acuerdan de ese programa? Borramos los vínculos que ya vienen definidos y establecemos la página en blanco (about:blank) como página por defecto (Home). Tools > Options > Main y en Home Page colocamos about:blank. Además que siempre pregunte donde guarda las descargas.

Desinstalación de software que no utilizaremos

Inicio > Panel de Control > Agregar o quitar Programas > Agregar o Quitar componentes de Windows y le quitamos el check a:
- Internet Explorer
- MSN Explorer
- Outlook Express
- Reproductor de Windows Media
- Windows Messenger
- Accesorios y utilidades > Juegos
¿No nos sentimos mucho más limpios?

Ajuste de Windows XP para rendimiento óptimo

Instalación de drivers de la tarjeta de aceleración gráfica: Vamos a acelerar el windows. Primero al redactar este documento he estado en una interfaz gráfica lenta debido a que no instalado el driver de la tarjeta aceleradora de gráficos. Procedemos a instalar este driver, es importante porque delegamos las tareas de procesamiento gráfico a esa tarjeta y el procesador se libera de dicha carga. Reiniciamos.

Desactivación del Restaurador de sistema: Ante tantas instalaciones y modificacioes podríamos estar dañando nuestro equipo, por eso Microsoft nos brinda la herramienta de Restauración de Sistema. Y cuando la utilizamos siempre nos ha ayudado, verdad? La verdad que no sirve para nada, nunca recupera nada y además consume recursos de forma constante, tanto de memoria con su monitoreo como de espacio en disco con sus registros. Click derecho sobre Mi PC y click sobre Propiedades. Bajo la pestaña de Restaurar Sistema hacemos click en Desactivar Restaurar sistema en todas las unidades. Click en Aplicar.

Establecimiento de las preferencias para Óptimo Rendimimiento: Bajo la pesataña de Opciones avanzadas en el panel de Rendimiento hacemos click en el botón de Configuración y seleccionamos Ajustar para obtener el mejor rendimiento.

Desactivación de sonidos: Inicio > Panel de Control > Dispositivos de sonido y audio. Guardamos la configuración original. Y seleccionamos la configuración sin sonidos. Recordemos que los sonidos se producen al ejecutar un archivo de sonido. La búsqueda del archivo y su reproducción comprometen el tiempo más lento en una computadora ya que se trata de un acceso a disco duro (elemento mecánico).

Para mayor comodidad

Desactivación de ejecución automática (USB y CD-ROM): Ya en el Firefox, googleamos en blanco y establecemos una búsqueda sin filtros en las preferencias y el google in english. Googleamos: "disable autorun usb". Uno de los links nos dice que hagamos Inicio > Ejecutar : "gpedit.msc". Configuración del equipo > Plantillas administrativas > Sistema y en el panel derecho le damos a Desactivar reproducción automática. La dejamos Habilitada y para Todos los equipos (cdrom y usb).

Desactivación del asistente de limpieza de escritorio: Click derecho sobre el escritorio, click en Propiedades y click en la pestaña de Escritorio. Click en Personalizar escritorio. Le damos check a Mis documentos, Mi PC, Mis sitios de red. Le quitamos el check a Ejecutar Asistente para limpieza de escritorio cada 60 días. Y aprovechamos para colocar un papel tapiz de nuestra preferencia.

Desactivación de alertas y actualizaciones autommáticas: Click en el escudo del tray. Abrir Centro de seguridad. Hacemos click en Cambiar la forma en que el Centro de seguridad me alerta y desactivamos las tres casillas. Click en Actualizaciones automáticas y seleccionamos Desactivar Actualizaciones automáticas. El Firewall de Windows ya se desactivo al detectar un mejor firewall como es el ZoneAlarm.

Estableciendo la forma de logueo: sería no mostrar los nombres de los usuarios en la pantalla de logueo. Inicio > Panel de Control > Cuentas de usuario. Cambiar la forma en la que los usuarios inician y cierran su sesión. Le quitamos el check a Usar la pantalla de Bienvenida, con esta opción conseguimos también que la combinación de teclas Ctrl+Alt+Supr invoquen a un tablero de opciones muy útiles donde encontramos desde el control de procesos hasta el bloqueo de la sesión. Es aconsejable establecer una contraseña para su usuario administrador, activar la cuenta de invitado, crear una cuenta de usuario limitado con contraseña.

Mejorando el manejo de archivos comprimidos: Para los archivos comprimidos (*.zip, *.z, *.rar, etc) empleemos 7Zip en lugar del manejador integrado a Windows que es curiosamente lento. WinZip se ha venido haciendo más complejo y ha hecho que de ese amor que teníamos algunos por esa aplicación sólo quede la costumbre por los formatos de compresión. WinRar suele ser una alternativa imprescindible para el manejo de arhivos rar cortados. Ya que maneja los archivos temporales con mejor eficiencia que el 7zip. Al parecer es un manejo particular del formato rar.

Mejorando el Menú Inicio

Click en Propiedades del menu contextual sobre el botón Inicio

Establecer accesos directos a Navegador Web y Cliente de Correo Electrónico: Bajo la pestaña de Menú Inicio hacemos click en el botón Personalizar. Para Internet seleccionamos Firefox. Para Correo electrónico podrías instalar Thunderbird y seleccionarlo de forma similar.

No mostrar documentos recientes: Click en la pestaña de Opciones avanzadas. Deseleccionamos Mostrar los documentos abiertos recientemente además de aprovechar en borrar la lista.

Esconder elementos del menú inicio poco útiles: Retiramos de los Elementos del menú inicio:
- Ayuda y soporte técnico
- Buscar
- Mi música > No mostrar este elemento
- Mis documentos > No mostrar este elemento
- Mis imágenes > no mostrar este elemento

Monday, March 10, 2008

¿Cómo firmar un Java Applet?

En este artículo explicaremos como firmar un applet con un certificado propio o uno CA. Para el desarrollo se emplea las herramientas disponibles en el Kit de Desarrollo jdk1.6.0_04. Llamaremos %JPATH% al directorio donde se encuentran los ejecutables del JDK, por ejemplo "C:\Archivos de programa\Java\jdk1.6.0_04\bin".

En Netbeans he modificado una aplicación que usa librerías que implementan el protocolo IAX2 y el resultado final es un softphone desplegable en una simple página html.


Agregar la ruta de los binarios de Java a la variable de entorno PATH

Para poder trabajar con los ejecutables del JDK desde cualquier directorio agregaremos la ruta %JPATH% a la variable de entorno PATH. Seleccionamos Propiedades dentro del Menu contextual sobre Mi PC. Bajo la pestaña de Opciones avanzadas hacemos click sobre el botón Variables de entorno. Buscamos y hacemos click sobre Path entre las Variables de sistema, luego hacemos click sobre el botón Modificar y en el Valor de la variable agregamos al final un punto y coma (";") seguido de %JPATH%.


Creación de la llave

Usaremos el algoritmo RSA y el alias cg1key.

C:\>keytool -genkey -keyalg rsa -alias cg1key

Escriba la contraseña del almacén de claves: ********

¿Cuál es son su nombre y su apellido?

[Unknown]: Franco Cedillo

¿Cuál es el nombre de su unidad de organización?

[Unknown]: IT

¿Cuál es el nombre de su organización?

[Unknown]: CyberGod

¿Cuál es el nombre de su ciudad o localidad?

[Unknown]: Lima

¿Cuál es el nombre de su estado o provincia?

[Unknown]: Lima

¿Cuál es el código de país de dos letras de la unidad?

[Unknown]: PE

¿Es correcto CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE?

[no]: si



Escriba la contraseña clave para

(INTRO si es la misma contraseña que la del almacén de claves): ENTER



Exportación de la llave

C:\>keytool -export -alias cg1key -file cg1key.crt

Escriba la contraseña del almacén de claves:

Certificado almacenado en el archivo


Compilación de Applet

Basta con colocarse en el directorio build dentro de la ruta de nuestro projecto. Allí debemos ubicar las bibliotecas JAR empleadas y un archivo con el texto que requerimos en el manifiesto. El manifiesto es un archivo de texto que puede tener la siguiente estructura:

Manifest-Version: 1.0

Ant-Version: Apache Ant 1.7.0

Created-By: 10.0-b19 (Sun Microsystems Inc.)

X-COMMENT: Main-Class will be added automatically by build

Class-Path: inifile.jar jiaxc_windows_x86.jar jiaxc_windows_x86_md5.jar jiaxclient.jar libjiaxc.jar swing-layout-1.0.jar

Para este ejemplo he llamado mymanifest al archivo de texto que será agregado como manifiesto al archivo JAR que generaré. En la línea de comando ejecutamos:

...\build>jar cvfm jiaxTest.jar mymanifest -C classes .

manifest agregado

agregando: Click2Call.gif (entrada = 6574) (salida = 6537) (desinflado 0%)

agregando: IaxTestApplet.class (entrada = 3062) (salida = 1507) (desinflado 50%)

agregando: PhonePanel$1.class (entrada = 1193) (salida = 652) (desinflado 45%)

agregando: PhonePanel$2.class (entrada = 766) (salida = 471) (desinflado 38%)

agregando: PhonePanel$3.class (entrada = 698) (salida = 426) (desinflado 38%)

agregando: PhonePanel$4.class (entrada = 698) (salida = 429) (desinflado 38%)

agregando: PhonePanel$Listener.class (entrada = 4416) (salida = 1957) (desinflad
o 55%)

agregando: PhonePanel.class (entrada = 14948) (salida = 6090) (desinflado 59%)


Firma de bibliotecas JARs necesarias

...\build>jarsigner inifile.jar cg1
key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.



...\build>jarsigner jiaxc_windows_x86.jar cg1key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.



...\build>jarsigner jiaxc_windows_x86_md5.jar cg1key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.



...\build>jarsigner jiaxclient.jar cg1key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.



...\build>jarsigner libjiaxc.jar cg1key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.



...\build>jarsigner swing-layout-1.0.jar cg1key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.



...\build>jarsigner jiaxTest.jar cg1key

Enter Passphrase for keystore: *******



Warning:

The signer certificate will expire within six months.


Verificación de Firma o Signado

Verificaremos uno de todos los JARs que hemos signado.

...\build>jarsigner -verify -verbose -certs jiaxTest.jar



857 Fri Mar 07 13:44:46 COT 2008 META-INF/MANIFEST.MF

762 Fri Mar 07 13:44:48 COT 2008 META-INF/CG1KEY.SF

913 Fri Mar 07 13:44:48 COT 2008 META-INF/CG1KEY.RSA

0 Fri Mar 07 13:39:52 COT 2008 META-INF/

smk 6574 Wed Mar 05 17:41:44 COT 2008 Click2Call.gif



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 3062 Wed Mar 05 17:41:44 COT 2008 IaxTestApplet.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 1193 Wed Mar 05 17:41:44 COT 2008 PhonePanel$1.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 766 Wed Mar 05 17:41:44 COT 2008 PhonePanel$2.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 698 Wed Mar 05 17:41:44 COT 2008 PhonePanel$3.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 698 Wed Mar 05 17:41:44 COT 2008 PhonePanel$4.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 4416 Wed Mar 05 17:41:44 COT 2008 PhonePanel$Listener.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]



smk 14948 Wed Mar 05 17:41:44 COT 2008 PhonePanel.class



X.509, CN=Franco Cedillo, OU=IT, O=CyberGod, L=Lima, ST=Lima, C=PE (cg1key)

[certificate will expire on 5/06/08 12:54]





s = signature was verified

m = entry is listed in manifest

k = at least one certificate was found in keystore

i = at least one certificate was found in identity scope



jar verified.



Warning:

This jar contains entries whose signer certificate will expire within six months.


Desplegado de Applet

Finalmente incluímos el código de llamada al Applet desde una sencilla páigna HTML.


Fuente