Rincón Informático

Un rincon para hablar sobre GNU/Linux, seguridad informatica, y mas!!

Archive for febrero, 2009

Seguridad Informatica Norma ISO 27001

Posted by Epsilon On febrero - 27 - 2009

Hoy tuve la gran fortuna de asistir a una charla sobre seguridad informática, y mas específicamente sobre la Norma ISO 27001, dicha conferencia a pesar de ser muy empresarial,  fue una pequeña introducción al extenso mundo de las certificaciones y  gestiones de calidad en , con respecto a la seguridad de la información, así que con esta entrada espero darles un pequeño abre bocas a este tema  e invitarlos a que se anime a investigar y a leer sobre esta norma que es muy interesante y  que tiene que ver con nosotros los  informáticos.

Antes de entrar a fondo, tengo que aclarar algo que muchos individuos piensan acerca de la seguridad informática, y sobre todo los altos mandos de las empresas. La seguridad informática no es periódicamente Backups, ni tener instalado un excelente antivirus actualizado en los . Esto es un error grave, ya que dichos procesos son herramientas de la seguridad de la información. Ahora ustedes dirán: ¿si eso no es la seguridad Informática, entonces que es?

La seguridad informática, es implementar controles, políticas y reglas, que ayuden a una mejor protección de la información, estas políticas generalmente se ordenan desde la alta gerencia o la dirección de calidad. ¿Pero que compone la S.I?

s.i

Principios de la Seguridad Informática.

  • Confidencialidad: Tiene como propósito asegurar que solo la persona correcta acceda a la información.

  • Integridad: La información debe estar en su totalidad.

  • Disponibilidad: Esta información debe permanecer disponible 24/7 es decir que se podra acceder a cualquier hora ( en teoría).}

Ahora debemos tener unos conceptos básicos claros, para poder entender mejor, y no confudir las cosas:

  • Amenaza: Cualquier agente capaz de aprovechar las fallas o vulnerabilidades en un sistema informático.

  • Vulnerabilidad: Punto en el cual un recurso es susceptible a un ataque

  • Riesgo: Probabilidad de que las amenazas exploten puntos débiles.

  • Contra medidas: Conjunto de disposiciones establecidas por la organización para reducir el riesgo

Teniendo estos conceptos claros, podemos responder a la pregunta que muchos se estarán preguntando en este momento: ¿que es la norma ISO27001?

Es una guía metodológica, que nos ayuda a diseñar controles necesarios de seguridad que permiten proteger los activos de información, basada en el análisis de riesgos, igualmente implementa, establece, opera, monitoriza, revisa, mantiene y mejora la seguridad de la información en cualquier empresa.

Aquí se abre una puerta muy grande de conocimiento, los invito a que estudien a fondo este tema el cual es muy interesante y sobre todo IMPORTANTE

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Especial de seguridad, Contraseñas. (Parte 2)

Posted by SpiderM@N On febrero - 26 - 2009

Continuamos con este pequeño “Especial” (Lo pongo en comillas por que esto solo lo hacen los blogs de verdad) de reflexión sobre los usos de las contraseñas. En la anterior entrega resolvimos de las tres dudas que nos asaltaban en cuanto al manejo de las contraseñas en los sistemas de autenticación que la requieren, en este intentare explicar un par de métodos que existen para que nuestras combinaciones sean mas robustas.

¿Existe alguna técnica para volver contraseñas “débiles” en “robustas”? Si. En realidad hay muchas maneras de hacerlo. Personalmente he desarrollado uno basado en la memoria de actos motores, sé que mucha gente también usa este método, en realidad TODO el mundo lo usa, solo que no le han puesto nombre.

¿En que consiste? es de los mas sencillo. Primero que todo supongamos que somos de los “malos” y estamos tratando de encontrar la contraseña de Venom (Si, uno de mis mayores enemigos) pero Venom (que no es tan bobo) a “robustizado” (no creo que esa palabra exista) su forma de crear contraseñas para sus cuentas; tenemos los siguientes :

Nombre Completo: Venom Albeiro Rodrigues.

Fecha de Nacimiento: 8 de Enero de 1980. (08-01-1980)

Lo primero que cualquier persona (de los malos) intentaría seria combinar los nombres de Venom con su fecha de nacimiento, podría ser algo como “veno1980″ ó “albe0801″ hay muchas formas de intentar sin embargo lo mas probable es que dieran con la contraseña que usa Venom para ingresar a su equipo de trabajo. Si Venom conociera mi forma de generar contraseñas muy seguramente no habría sido víctima de un ataque de este tipo, mi forma es sencilla pero le puede servir a algunas personas.

Yo tomo extremos de teclas, y las combino con números, si, ya se que la primera vez es complicado pero luego de un tiempo, MIS MANOS escriben la contraseña, pero YO NO LA RECUERDO. Veamos un ejemplo:

“A1ñ0S2l9″

¿Una contraseña ordinaria?, NO. cumple con CASI todas las recomendaciones de seguridad:

Mínimo 8 caracteres

No es una palabra definida

Letras Mayúsculas

Letras Minúsculas

Números

Caracteres especiales.

¿Caracteres especiales? SI. Es que yo la escribo con todo y comillas.

La generación fue sencilla, primero dígito un símbolo cualquier en esta caso “comillas” pero pudo haber sido un “*” o los “()” luego y en mayúscula tomo la primera tecla mas alejada de mi mano izquierda, pero de la segunda fila, y luego dígito el NUMERO que esta encima de ella; enseguida hago lo mismo pero en minúscula para mi mano derecha y así sucesivamente…por ultimo cierro con el carácter especial y listo.

Ahora si ustedes me preguntan si la recuerdo, la respuesta será negativa, pero lo que si se es que seré capaz de escribirla en el teclado del computador (gracias a mi memoria de actos motores, o motriz); y en últimas eso es lo que me interesa.

En la próxima y ultima entrada veremos un método ESTÁNDAR llamado SFSP (Simple Formula for Strong ) donde se aplican muchos conceptos y vemos muchas formas de generar contraseñas “seguras”.

PD: La contraseña de ejemplo NO obedece a ninguna de la vida real, de hecho ya no recuerdo que contraseña era….

PD1: Que pena tanto texto en la entrada, prometo no volver a hacerlo a menos que sea completamente necesario.

PD2: Si alguien se llama Venom Albeiro Rodrigues, le pido disculpas por usarlo en el ejemplo, pero para recompensarlo le puedo regalar hosting.

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , ,

Aumentar el rendimiento de tu GNU/Linux

Posted by Epsilon On febrero - 26 - 2009

Una de las novedades del   2.6 ademas de muchas mas, es el manejo que se le puede dar a la memoria virtual, es decir, la gestion por parte del que este le puede dar a la misma,  ¿Pero que es la memoria virtual? una definicion muy coloquial seria:

La memoria virtual, es una memoria la cual se utiliza cuando la memoria RAM se agota, es decir, lo que nosotros los Linuxeros llamamos la swap. si necesitan mas informacion pueden visitar la wiki o google xD

El proceso por el cual la RAM transfiere datos a la Swap, se denomina SWAPPING, sin embargo si nuestro PC hace este proceso continuamente, ps perdermos recursos, aumentara la carga de nuestro disco duro, y por consiguiente nuestro sistema se notara lento y pesado. pero tranquilos que todo tiene solucion, por lo menos en GNU/Linux,  hay varias alternativas, una de ellas con software que administre la memoria virtual, y la otra es modificando un valor de un archivo de configuracion del sistema, aca mostraremos como hacer la segunda opcion, y la primera queda de tarea por si alguien conoce un buen soft que cumpla esta funcion.

Lo primero que debemos hacer es verificar el valor que tenga el parametro “swappiness”, de esta forma, abrimos una consola y ponemos:

cat /proc/sys/vm/swappiness

Este valor estara en un rango entre 0-100, generalmente los sistemas operativos lo tienen en 60 por defecto  este numero refleja,  la tendencia que tiene el kernel a transferir memoria no usada a la partición de intercambio. A valor más alto, más swapping. lo que vamos hacer es  reducir este numero para que  no se utilice siempre la swap, sino que se utilice cuando en realidad se necesite, para cambiar este valor en cualquier momento y solo por esta sesion se puede hacer esto como root:

sysctl vm.swappiness=10

El cambio debe ser notado de forma inmediata, podemos abrir una aplicacion algo pesada como openoffice y  esta debe tomar menos tiempo en cargarse, si  viste el cambio y quieres cambiar este valor de forma permante debemos editar el archivo /etc/sysctl.conf y agregar la siguiente linea guardar y cerrar:

vm.swappiness=10

Con esto tendremos un sistema mas veloz, y  sin tanta carga para nuestro disco duro, espero que lo prueben y me cuenten sus resultados

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Que opinan los Linuxeros de Windows 7

Posted by Epsilon On febrero - 25 - 2009

windows-vs-linux

Hoy mientras hacia mi lectura matutina de mis feed, me encontre con un articulo muy interesante, no acostumbro publicar otros articulos, pero sin embargo creo que este vale la pena, debido a que en ocaciones he escuchado y leido opiniones de colegas Linuxeros que hablan sobre Windows 7, y la mayoria de estas son a favor del proximo Windows. Incluso el mismo Linus Torvals lo dijo en una entrevista:

El hecho de que Windows 7 sea mejor que Vista dice mucho. Microsoft tendrá una enorme ventaja publicitaria, debido a que los consumidores compararán el producto con Vista, concluyendo que es bueno. ¿Quizás Microsoft lo hizo a propósito?”, se preguntó Torvalds.

Estas declaraciones  generaron mucha controversia,  puesto que es una estrategia de mercadeo maquiavelica pero no imposible, con esa jugada microsoft podria aumentar sus ventas y por ende sus usuarios.

Sin embargo, este no es el tema de la entrada,  ya que este tema tiene mucho de donde cortar,  lo que queria mostrarles a todos los lectores,  un articulo  donde un Linuxero hace  un profundo analisis sobre windows 7 y alguna veces comparandolo con ubuntu. El articulo esta en ingles y es bastante extenso pero muy etretenido, asi que  lo comparto con ustedes para que saquen sus propias conclusiones.

LEER ARTICULO

Etiquetas: , , , , , , , , , , , , , , , , , , ,

Eliminar la basura de tu GNU/Linux

Posted by Epsilon On febrero - 25 - 2009

Navegando  en la abundancia de la , me encontre  con una herramienta bastante interesante que puede ser de mucha utilidad para nosotros los Linuxeros de nivel medio. Se trata de BleachBit, una aplicacion que nos ayuda a eliminar todos esos archivos innecesarios que lo unico que hacen es ocupar espacio en el disco duro. Muchos lectores pensaran ¿Interesante?, efectivamente me parecio muy interesante puesto que por lo menos yo, nunca habia visto una herramienta de ese tipo en GNU/Linux, mientras que en este tipo de herramientas  abundan, hay de todos los colores, olores y sabores.

La instalacion es muy sencilla solo basta visitar la pagina de descargas y bajar el paquete para tu ,  e instalarlo como cualquier otro paquete, en debian seria asi:

dpkg -i nombredelpaquete.deb

Para iniciar tenemos que ir al menu -  herramientas del sistema – BleachBit, podemos notar que  hay dos entradas en el menu, la primera es BleachBit y la otra BleachBit as root, la explicacion es muy sencilla, algunos archivos para borrarse necesitan privilegios de root, por esta razon algunas veces es mejor correr la aplicacion como root.

bleachbit

El manejo es muy sencillo, a la izquierda estan los archivos de la mayoria de aplicaciones  que se pueden borrar y que no son necesarios como logs, cache, archivos temporales etc. Y por ultimo  le damos click en borrar y el hace todo su proceso. Me parece algo importante tener nuestro sistema limpio de archivos basura, por que como dice mi colega “todo sistema operativo, genera basura, sea el que sea”,  y esto afecta nuestro espacio en el disco,  y en algunos caso el rendimiento de nuestro PC

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Especial de seguridad, Contraseñas. (Parte 1)

Posted by SpiderM@N On febrero - 24 - 2009

En Rincón Informático venimos hablando de el tema de seguridad en las contraseñas , bien sea por que hemos tenido malas experiencias (por lo menos yo). Este es un pequeño especial de partes (y posiblemente un laboratorio) en el que intentare abordar este tema y dar un par de trucos para reforzar nuestras contraseñas.

Desde que nos sentamos al frente de un computador debemos escribir una contraseña, un nombre de usuario, un Enter (Tecla) o algunas veces nada…La seguridad de la informática abarca muchos aspectos, TODOS ellos nos afectan directamente a los usuarios de la información, pero y ¿quien es usuario de información? la respuesta resalta por su simplicidad; TODOS.

Para acceder a la información los humanos nos ideamos unos métodos de autenticación los cuales – En teoría – permiten identificar que la persona que dice que es, sea quien dice ser. El mas usado es el de nombres de usuario y contraseñas. Si, de todos los métodos posibles los humamos escogidos el menos humano de todos, pero llevamos tantos años usando esta manera de demostrar quienes somos que ya es normal que debamos “recordar” contraseñas a diestra y siniestra, pero ¿realmente es seguro el sistema de contraseñas?, ¿Que tan fácil puede ser encontrar la contraseña de alguien? y por último ¿Existe alguna técnica para volver contraseñas “débiles” en “robustas”? .

Para la primera pregunta que nos surge, tenemos dos respuestas y booleanas, SI y NO. ¿Cuando es positiva?, la respuesta es afirmativa cuando usamos contraseñas “robustas” y nombres de usuario nemotécnicos o impersonales, esta ultima parte es a la que la gente MENOS atención le presta y es de suma importancia, el sistema de contraseñas NO ES SOLO la contraseña es el nombre de usuario y la contraseña, ambos campos tienen algunas veces la misma importancia. Por otro lado la respuesta es negativa cuando usamos contraseñas “débiles” y nombres de usuario personales, Ejemplo: si mi nombre es José, mi nombre de usuario es “jose” y mi contraseña “micasita” ó “1234″.

NOTA: Cuando digo que los nombres de usuario son tan importantes como las contraseñas, aplica en algunos casos, por ejemplo el usuario “Administrador” o “admin” es un tipo de usuario que SIEMPRE sera víctima de ataques, por ello SIEMPRE es recomendable que este usuario o no exista o se renombre a algo mas nemotécnico o a algo que no tenga nada que ver con el nombre de una persona o una cosa; un buen ejemplo de ello lo vi en una empresa donde tenían un dominio y el usuario administrador del dominio era la conjunción de dos números telefónicos y un par de pequeñas descripciones de cada, en total 14 números y 6 letras acomodados aleatoriamente…para este ejemplo es MAS IMPORTANTE el nombre de usuario que la misma contraseña.

En resumidas cuentas la seguridad del sistema de autenticación por medio de nombres de usuario y contraseñas SOLO depende de nosotros mismos, ya que de por si el mismo ha demostrado que es seguro.

Para terminar la entrada de hoy solo quiero dejar una imagen (algunos dice que una imagen vale mas que mil palabras y entonces no leen) con la que pueden irse haciendo una idea de la seguridad de sus contraseñas.

password.jpg

La primera columna, traduce como la longitud de la contraseña, la segunda la cantidad de tiempo que se tardarían en encontrarla si esta fuese una combinación de caracteres, Letras MAYÚSCULAS, letras minúsculas, números y símbolos extras (#$%…ETC.); y la ultima columna mide el tiempo en encontrar una contraseña escrita solo en letras minúsculas.

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Curso de Python Capitulo IX

Posted by Epsilon On febrero - 24 - 2009

En este capitulo aprenderemos a manejar las cadenas de caracteres en Python, como siempre una definicion  de la wiki antes de entrar en materia:

En matemáticas o en programación, una cadena de caracteres, palabra, ristra de caracteres o frase (string en inglés) es una secuencia ordenada de longitud arbitraria (aunque finita) de elementos que pertenecen a un cierto alfabeto. En general, una cadena de caracteres es una sucesión de caracteres (letras, números u otros signos o símbolos).

Creo que   con esta definicion quedo muy claro el concepto, en Python  las cadenas de caracteres se  manejan de forma similar a  las tuplas, para declarar una string   se hace de la siguiente manera:

nombre=”rincon informatico”
nombre=’rincon informatico’

Notese que  es irrelevante las comillas que se usen al momento de declarar la cadena, pueden ser simples o dobles. Igual que en las tuplas podemos saber el tamaño de una cadena, utilizando la funcion len(), la cual ya explicamos anteriormente. Para acceder a una porcion de la cadena lo hacemos de la misma forma que las tuplas: ejemplo:

nombre=’rincon informatico’
print nombre[1:4] ->inc
print nombre[:4]   ->rinc
print nombre[4:]   ->on informatico

Hay que recordar que las strung no se pueden modificar despues de ser inicializadas, pero esto no quiere decir que la variable string no pueda tomar otro valor, es decir se puede cambiar  toda una cadena mas no, una parte.

Operadores con String.

  • Concatenacion: Para concatenar cadenas usamos el operador + ( Para los que no saben, concatenar significa unir varias cadenas).
  • Multiplicacion: En Python podemos multplicar una cadena las veces que deseamos, empleando el operador *, el resultado de multiplicar una cadena por un entero, dara la cadena repetida el numero de veces que se determino en el entero, es decir:

nombre=’rincon informatico’*3 -> rincon informaticorincon informaticorincon informatico

Listo eso  fue  todo sobre las cadenas, se puede hacer mucho con ellas, espero que practiquen y hayan ententido,  y escriban cualquier duda que tengan

Etiquetas: , , , , , , , , , , , , , , , , , ,

Hablemos de SAP.

Posted by SpiderM@N On febrero - 23 - 2009

Inicialmente pensaba hablar del tema de Roles, perfiles y de SAP, en algo que YO llamo hardering en accesos a SAP, sin embargo hablar de una Aplicación/Solución que para muchos es desconocida puede ser desmotivante y pasar completamente desapercibida, así que decidí comenzar desde el principio.

sap-logo

¿Qué es SAP? SAP, como tal, es el nombre de una empresa desarrolladora de software, para ser más exactos es la tercera (3) casa proveedora independiente de paquetes en la escala mundial (después de Microsoft y Oracle) sus productos están totalmente orientados a las empresas, o mejor, a la planificación de los recursos empresariales, el principal paquete de software de esta empresa es SAP ERP, sin embargo su catalogo es bastante amplio y encontramos programas adicionales al ERP (adicionales o independientes) pero TODO orientado a la administración de las empresas.
SAP ERP, ve lo que nosotros (los latinos) llamamos departamentos, como PROCESOS de una compañía e igualmente así los implementa en sus productos.  Entre ellos tenemos:

FI (Gestión Financiera y contable)
CO (Costos o Control)
TR (Tesorería)
PM (Administración de Mantenimiento)
PP (Administración de producción, control de piso)
SD (Ventas y distribución)
QM (Gestión de Calidad)
HR (Recursos humanos, personal)

Todos estos procesos son manejados por los usuarios de la compañía, el departamento de TI, entra en dos (2) módulos (estos no son procesos como tal) ABAP (lenguaje sobre el que está escrito SAP) y BC (Administración del sistema).

Yo que hago parte de TI, tengo que ver con estos dos últimos módulos y cada día debo enfrentarme a 3 mandantes de SAP.

¿Mandates?  SAP ERP maneja el concepto de Mandantes, un mandante es un AREA DE TRABAJO a la que se conecta el usuario y trabaja.  Se puede comparar con conectarse a una página web, digitar un nombre de usuario, una contraseña y acceder a lo que puedes hacer en ella, publicar notas, modificar el código o simplemente ver lo que hay en la pagina.

Técnicamente SAP es muy completo, lo encontramos en muchas plataformas de hardware y en casi todos los sistemas operativos del mercado (UNIX; /Linux, Windows, AIX, HP-UX, ETC.).  Puede ejecutarse sobre muchas bases de datos, MSSQL, MaxDB, productos de ORACLE.   ABAP es un lenguaje MUY fácil de aprender, incluye sentencias Open SQL que lo hace más sencillo aun.

SAP ERP, se volvió muy popular por su innovación de 3 capas.   ¿Qué quiere decir 3 capas?, anteriormente SAP ERP era conocido como SAP R/3, la R significa que es un sistema de procesamiento en línea, quiere decir que si almacenas datos puedes visualizar lo que afectan inmediatamente después de guardar:

Ejemplo:

Supongamos que en la empresa Osborn Corp. (la empresa de un enemigo de SpiderMaN) tienen SAP; necesitan hacer una entrada de mercancía, apenas el auxiliar de bodega termina de digitar lo que entro a su bodega, el personal de contabilidad puede entrar a mirar las cuentas afectadas por dicho movimiento,  Eso es procesamiento en línea.

El 3, es de las capas, en resumidas cuentas, SAP ERP necesita de 3 fases de operación, el primero es el SAP GUI, del que ya hemos hablado; el segundo es el servidor de aplicación (aquí se procesan las tareas de usuario) y la ultima capa es la Base de datos.  Ojala tenga oportunidad de hablar un poco más sobre los aspectos técnicos de SAP ERP, por ahora con este brochazo es suficiente.

¿Software Libre?, JAMAS, SAP ERP no es gratis, ni siquiera es económico, un proyecto de implementación de SAP ERP puede durar un año (todo saliendo según el cronograma) y puede costar alrededor de un Millón de dólares; sino, mas.

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Como evitar el robo de tu identidad digital en la red

Posted by Epsilon On febrero - 20 - 2009

seguridad

Cuando un individuo entra a formar parte de la red mas grande del mundo, comete un error grave al no preocuparse por su identidad personal, su privacidad e incluso su dinero.

Es increíble ver como tantas personas pierden su identidad en la red diariamente, y muchos creerán que esto es debido a que la red esta inundada de hackers esperando a una victima para robar, sin embargo esta afirmación es completamente falsa, por que los verdaderos hackers se ocupan en cosas mas interesantes y productivas que robar un correo electrónico, Hoy en día es muy común ver en la Internet sujetos con pocos conocimientos llamados “lamers” los cuales tienen como único objetivo creerse y hacer que las demás personas crean que son Hackers. ¿Y como logran esto? Muy sencillo a través de robo de correos e identidades de otras personas. Ahora ustedes preguntaran ¿ Si tienen pocos conocimientos, como lo logran? La mayoría de las veces se aprovechan de la ignorancia de los usuarios comunes, pero otras veces el mismo usuario le facilita el trabajo debido a su poca importancia que le presta a la seguridad de su identidad y de sus datos privados. Es triste ver en la red que las contraseñas mas utilizadas son palabras tan obvias y fáciles de adivinar como:

1234
password

¿Pero como podemos prevenirnos?

Antes que nada debemos saber que es identidad digital y saber cual es la diferencia entre esta y la identidad electrónica. encontre una buena definicion en la red

La Identidad Digital está formada por todos aquellos datos y servicios utilizados por un único individuo, que se encuentran relacionados o pertenecen a Internet, y definen al mismo dentro de la red. Se diferencia con la identidad electrónica por que esta esta última tiene como característica utilizar una sola tarjeta o identificación para acceder a ciertos servicios que existen en el mundo físico.

Ya teniendo claro que es lo que debemos cuidar, podemos hacer esta serie de tips para proteger un poco mas nuestros datos privados:

  1. Poner contraseñas fuertes, que incluyan: letras, números, y símbolos, de forma combinada.

  2. utilizar contraseñas que no se relacionen con el usuario o su vida privada, ya sea personal o laboral. Ni tan tontas como 1234.

  3. No se debe usar la misma contraseña para todas las cuentas o servicios. Esto podría resultar un error fatal que no debe cometerse.

  4. Recordar cerrar sesión cuando estemos en un PC Publico

  5. No Links de dudosa procedencia.

  6. No tener en la pregunta secreta algo muy evidente que cualquier persona allegada tuya pueda saberlo.

Es muy importante cuidar nuestro email, por que si un atacante logra entrar a el, inmediatamente podrá acceder a los demás servicios que estén relacionados con dicho email mediante el uso de la opción “olvidar contraseña”,estos servicios son: facebook, hi5, foros, entre otros.

Por ultimo, sobra decir que concienticemonos un poco sobre la seguridad y el riesgo que corremos en la Internet, y no esperemos que pase algo grave para tomar precauciones como le paso a Van Der Hernst. Esta semana, evitémonos dolores de cabeza.

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Extension capitulo VIII curso de Python

Posted by Epsilon On febrero - 19 - 2009

Debido al cansancio y porque no, a la falta de concentracion,  se me paso por alto 2 operaciones con las tuplas que son de mucha utilidad a la hora de programar en Python.

La primera operacion sobre la cual hablare en esta extension del curso, se trata de una estructura que nos ayuda a recorrer una tupla, esta estructura repetitiva es llamada for-in, algunos la conoceran de otros lenguajes, sin embargo aunque hacen lo mismo y son similares tienen sus diferencias. Su sintaxis es:

for variable in tupla:
print variable
print “\n”

Como se puede observar,  esta estructura necesita declarar una “variable”,  despues  la palabra reservada “in” y por ultimo la tupla la cual deseamos recorrer. esta  estructura hace lo mismo que el WHILE, pero  un poco mas sencilla y corta.

La segunda operacion que se me habia olvidado comentarles ( de verdad lo siento, no se por que se me paso), se trata de que  en Python podemos tomar porciones de una tupla y guardarlas en otra, por ejemplo, tenemos la siguiente tupla:

tupla=(1,2,3,4,5)
tupla2=tupla[0:3]

la tupla2 tomaria los valores de 1, 2, 3, respectivamente, sin embargo no es necesario indicar el rango completo solo una parte, de esta forma, remotando el mismo ejemplo anterior:

tupla=(1,2,3,4,5)
tupla2=tupla[:3]

Esto nos daria como resultado los mismos valores  de la instruccion anterior (1,2,3), la modificacion  que se le hizo fue decir que guardara  en la tupla nueva los valores desde 0  hasta la posicion 3,  y si se quisiera hacer desde la posicion 3 hasta el final solo bastaria con esto:

tupla2=tupla[3:]

Y listo con esto aprendimos a recorrer y a tomar porciones de tuplas. Ahora como este tema fue un poco corto y les planteare un ejercicio por si quieren hacerlo lo dejan  en los comentarios.

EJERCICIO

Se tiene una tupla de las edades de  10 individuos que asistiran a una fiesta. se necesita realizar un programa que  determine cuantas personas  son mayores de 18 años,  para poder ir a la fiesta. xD Algo sencillo pero para practicar esta bien.

Etiquetas: , , , , , , , , , , , , , , , , ,

Curso Python capitulo VIII

Posted by Epsilon On febrero - 18 - 2009

En esta etapa del curso, ya hemos cogido un poco de experiencia y practica en este maravilloso lenguaje, ya no somos los mismos inquietos que empezamos hace algunos dias sin saber nada de Python, ya por lo menos tenemos unas buenas bases y  conocimientos y conceptos necesarios para trabajar este lenguaje.  Hay que aclarar que para ser buenos programadores necesitamos   mucha practica,   por algo existe aquella frase que dice “La practica hace al maestro”.

En el capitulo de hoy vamos aprender un tema y una estructura muy importante  se trata de las , pero que son las tuplas en python??

Una tupla es una colección de datos no necesariamente del mismo tipo que se los accede por medio de subíndices. es decir, es una variable que puede almacenar varios valores.

Algunos diran, a eso es   a lo que se le llama a un vector en otro lenguaje, y ps en parte, pero hay algo que los diferencia mucho uno del otro para ver la diferencia miremos la definicion de un vector dada por la wiki:

En programación, un vector, matriz, array, arreglo o alineación es un conjunto o agrupación de del mismo tipo cuyo acceso se realiza por índices.

Ahora si se puede ver claramente cual es la diferencia. esta radica en  que un vector, agrupa datos datos TODOS del mismo tipo, mientras que una tupla, agrupa  datos de cualquier tipo. Ahora bien  la sintaxis de una tupla es la siguiente:

tupla=(“rincon informatico”,20,30.4)

Con esta linea de codigo hemos definido una tupla de 3 elementos, compuesta por una cadena de caracteres, un numero entero, y por ultimo un numero real. veamos graficamente  que es  en realidad una tupla, y la forma de guardar los datos:

prueba

Como lo pueden ver en la figura anterior, los elementos de la tupla comienzan a enumerarse desde cero para nuestro caso tenemos lo siguiente:

  • tupla[0]=rincon informatico
  • tupla[1]=20
  • tupla[2]=30.4

Hay que resaltar que para  imprimir los datos de una dupla se puede hacer de muchas formas, una de ellas es  como lo hice anteriormente, indice por indice, otra forma es mediante un while,  que vaya desde cero hasta el tamaño de la tupla y la forma mas sencilla es simplemente  print tupla, con esta instruccion mostrara toda la tupla en pantalla. Por otra parte  si desean saber el tamaño de la dupla  existe una funcion llamada len que devuelve el tamaño de la tupla ( es muy util cuando se hacen while), se implementa asi:

tamaño=len(tupla)

Por ultimo, cabe mencionar que la caracteristica mas importante de las tuplas aparte de que guardan diferentes tipos de valores, es que despues de creada la tupla, no se puede modificar, agregar o eliminar datos de la misma, esta es otra diferencia  con respecto a los vectores.

Ahora si vamos con el ejemplo del dia:

Vamos a realizar un programa que almacene los dias de la semana en una tupla y lo vamos a imprimir de las tres formas disponibles,  nuestro codigo quedara asi:

#!/usr/bin/env python
tupla=(“lunes”,”martes”,”miercoles”,”jueves”,”viernes”,”sabado”,”domingo”)

#forma sencilla
print “forma sencilla \n”
print tupla;

#con el while
print “\n”
print “con el while \n”
indice=0
while indice<len(tupla):
print tupla[indice]
indice=indice+1

#forma manual
print “\n”
print “forma manual \n”
print tupla[0]
print tupla[1]
print tupla[2]
print tupla[3]
print tupla[4]
print tupla[5]
print tupla[6]

Y por ultimo una imagen para ver como muestra en pantalla:

python

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , ,

Un buen Firewall para Windows.

Posted by SpiderM@N On febrero - 17 - 2009

Windows es inseguro. Y puedo decirlo con la certeza de haber leído, escuchado, visto y vivido en carne propia los problemas de utilizar Sistemas operativos Windows en sus versiones para Equipos de escritorio como para equipos que presten servicios.
Cabe anotar que Microsoft no es que haya decidido hacer sus Sistemas Operativos así (aunque algunas veces me lo pregunto y no logro responder de forma negativa…) sino que el consumismo y la curiosidad hacen que este paquete de software sufra cuanto intento de ataque se haga.
Es entonces cuando surgen oportunidades de negocio para otras compañías, y las que tienen que ver con poco a poco comienzan a surgir, esta vez les presento a Online – Armor, un software de aplicado como para sistemas operativos desarrollados para Windows.
¿Y es que hay que usar otro antivirus? Esa pregunta me la hizo una “Jefe de Operaciones” de IT cuando le mostré el software y se lo instale en uno de sus servidores, SI, leyeron bien SERVIDORES, este software lo he probado a ese nivel y funciona MUY bien; por otro lado ese día por poco me da una angina de pecho con semejante pregunta.

Online-Armor viene en dos versiones una gratis y la otra de pago, la de pago cuesta alrededor de 40 dólares (que tampoco es mucho) la gratis toma unos 10 minutos máximo descargarla desde la pagina de TALL EMU, empresa que desarrolla el software. Dentro de las mejores características de la versión libre (la que he probado) tenemos:

Firewall (razón de ser del software)
Execution protection (Protección de ejecución de programas)
Keylogger Detection (Algunos tipos de Keyloggers)
Script/Worm protection (Protección contra Gusanos y )
Process Guard (Guardián de procesos)

A nivel personal el Guardián de procesos es el que “vende” el software, esta característica hace que te sientas un poco más seguro porque esta “monitoreando” lo que hace cada programa que tienes abierto, si necesita entrar a internet, o si necesita hacer uso de del Explorer o de cualquier otra librería que este en el sistema.
Inmediatamente después de instalar el firewall este entra en un modo “aprendiendo” en el que detecta lo que se está ejecutando en el PC, luego pide que se reinicie el equipo y de ahora en adelante saldrán ventanas como esta:

untitled-1

Como vemos está informando sobre la ejecución de un programa, y se puede correr en 3 modos diferentes (en la versión paga se puede usar el modo instalación).

Recordar la decisión

Confiar en el programa (no avisa si hace otras cosas, EJ: usar Internet)

Ejecutar en modo seguro (con permisos restringidos)

Este software es una EXCELENTE solución para cuando somos usuarios de Windows, no me queda más que decir que explórenlo y disfrútenlo.

Desacargar Online Armor

Etiquetas: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,