Feeds:
Entradas
Comentarios

Si bien muchas veces nuestros servidores instalados, por default vienen con la característica de permitir el listado de directorios, en ocasiones este puede convertirse en un problema de seguridad , por lo que seria conveniente que restrinjamos esa opción.

Apache

Para apache tenemos 3 métodos distintos:

image

 

Método 1

El primer método precario y hasta un grado tedioso es colocar un archivo index.html | index.php | index.htm a cada uno de los directorios donde no queremos que se listen los archivos.

image

en el ejemplo coloque un archivo index.html en el directorio images, para que no se listaran los archivos del mismo.

 

Método 2

El siguiente método consiste en crear un archivo .htaccess para ello abrimos un símbolo de sistema, nos movemos al directorio raíz de nuestro sitio (en este caso prueba) y escribimos la siguiente línea:

echo Options -Indexes > .htaccess

image

con esto evitaremos que cualquier directorio que se encuentra debajo del directorio principal liste los archivos, apareciendo lo siguiente:

image

de esta forma hasta podemos seleccionar que tipo de archivos queremos que se listen y cuales no; para mayor información:

http://www.enespanol.com.ar/2006/04/03/tutorial-de-htaccess/
http://mundogeek.net/archivos/2005/05/04/htaccess/
http://www.webmasterlibre.com/2006/09/04/los-htaccess/

Método 3

Este método es directamente en archivo de configuración de apache (en mi caso estoy utilizando XAMPP, por lo que mi archivo de configuración es C:\xampp\apache\conf\httpd.conf ).

Abrimos el archivo de configuración de apache con nuestro editor favorito (Notepad++) y buscamos la linea “Options Indexes FollowSymLinks

image

modificaremos la línea agregando un “-“ al inicio de “Indexes”, quedando de la siguiente forma: “Options -Indexes FollowSymLinks

image

Guardamos el archivo y reiniciamos nuestro servidor apache.

IIS (Versión 7)

En IIS la cosa es sencilla (Al estilo Microsoft) , primero probaremos si nuestro IIS tiene habilitada la característica de listado de directorio

image

En este caso podemos comprobar que si, por lo que iremos al panel de configuración de Internet Information Services (IIS) , para ello abrimos un explorador y colocamos la siguiente ruta: “Panel de control\Sistema y seguridad\Herramientas administrativas” , una vez echo esto , damos doble clic sobre “Administrador de Internet Information Services (IIS)” una vez en el Administrador nos ubicamos en el sitio en el que queremos evitar el listado de directorios, en este ejemplo es el Default Web Site.

image

 

Damos sobre clic sobre el icono image se abrirá la siguiente ventana:

image

Aquí daremos clic sobre la opción de deshabilitar :

 

image

Y listo :) , con eso tendremos nuestro listado de directorios deshabilitado

image

 

Si queremos manejar los errores de nuestro servidor para personalizar nuestras paginas, podemos visitar los siguientes links:

http://www.psicobyte.com/html/taller/errores.html

 

Fuente:

Listado de archivos apache:

http://httpd.apache.org/docs/2.2/mod/core.html#options

http://www.respuestaexpress.com/566/seguridad-evitar-listado-directorios-varios-metodos/
http://sauaslp.wordpress.com/2011/01/04/ocultar-listado-de-archivos-en-iis/

Los códigos de estado HTTP en IIS 7.0 y 7.5 de IIS
http://support.microsoft.com/kb/943891

http://support.microsoft.com/kb/324064#6

Configuración básica de Apache.
http://www.alcancelibre.org/staticpages/index.php/como-apache
 
Proteger directorios en el Servidor
http://www.forosdelweb.com/f58/proteger-directorios-servidor-151498/

Este post es algo sencillo y fue inspirado por un comentario en este blog. (Windows 7 , IIS 7)

Para modificar el puerto por default (80) del “Default Web Site” que es el sitio que se crea al instalar IIS debemos seguir los siguientes pasos:

 

1.- Panel de control->Sistema y seguridad->Herramientas administrativas , doble clic en Administrador de Internet Information Services (IIS).

 

image

 

2.- Dentro del Administrador de Internet Information Services (IIS) , navegamos hasta el “Default Web Site” .

 

image

3.- Del lado derecho en el panel de acciones presionaremos en la opción de Detener.

 image

4.- A continuación daremos clic en Enlaces

image

5.-  Seleccionamos la primer opción “http” y presionamos el botón Modificar

image

Cambiamos el puerto 80 por otro (ejemplo el puerto: 3000)

image

Damos clic en aceptar y en cerrar.

 

6.- Presionamos en Iniciar , para iniciar nuestro sitio.

 

image

Para asegurarnos que todo salió correctamente escribimos en nuestro explorador: http://localhost:3000 y nos mostrara la siguiente pantalla

 

image

Espero les sea de ayuda ;)

Para comprender, los diferentes tipos de escaneo de puertos, primero debemos saber como se establece una conexión TCP por medio del “three Way Handshake”

Three Way Handshake

image

En la ilustración se observa lo siguiente:

  1. El cliente (Computer A) inicializa la conexión con el servidor (Computar B) enviando solamente un paquete con la bandera syn.
  2. El servidor responde con un paquete con el syn y una bandera ack.
  3. Como paso final el cliente responde al servidor con un solo paquete ack.

Si estos tres pasos se han completado sin complicaciones,entonces una conexión TCP ha sido establecida entre el cliente y el servidor

Ahora procedamos a describir los tipos de escaneos:

Stealth Scan/half-open/Escaneo Sigiloso:

image

1.-El cliente envía un único paquete SYN al servidor en el puerto que desea escanear

2.-

Abierto:

Si el puerto está abierto entonces el servidor responde con un paquete SYN / ACK.

Cerrado:

Si el servidor responde con un paquete RST, el puerto remoto se encuentra “cerrado”

3.-El cliente envía paquetes RST para cerrar, por lo que nunca se establecido una conexión.

Xmas Scan/Escaneo Xmas

 

Xmas Dirigido a un puerto abierto

image

Xmas Dirigido a un puerto cerradoimage

XMAS scan sólo funciona en sistemas operativos TCP / IP basados de acuerdo con RFC 793, Xmas Scan no va a funcionar en contra de cualquier versión actual de Microsoft Windows, las exploraciones dirigidas a cualquier sistema de Microsoft se mostraran todos los puertos en el host como cerrado.

FIN Scan/ Escaneo FIN

 

FIN Scan Dirigido a un puerto abierto

image

FIN Scan Dirigido a un puerto cerrado

image

FIN scan sólo funciona en sistemas operativos TCP / IP basados de acuerdo con RFC 793, no funciona en contra de cualquier versión actual de Microsoft Windows, Las exploraciones dirigidas a cualquier sistema de Microsoft haciendo uso de FIN Scan tendrán como resultado todos los puertos como cerrado.

 

NULL Scan/ Escaneo NULO

 

NULL Scan Dirigido a un puerto abierto

image

NULL Scan Dirigido a un puerto cerrado

 

image

NULL Scan sólo funciona en sistemas operativos TCP / IP basados de acuerdo con RFC 793, no funciona en contra de cualquier versión actual de Microsoft Windows, Las exploraciones dirigidas a cualquier sistema de Microsoft haciendo uso de NULL Scan tendrán como resultado todos los puertos como cerrado.

IDLE Scan/Escaneo IDLE

Este tipo de escaneo se puede resumir en 3 pasos:

Paso 1:

Se elije un “Zombie” y averiguamos cual es su numero IPID (ejemplo: 31337)

image

Paso 2:

Enviamos paquetes falsificados del “Zombie” al “blanco”

image

Paso 3:

-Si el IPID aumenta en 2 su valor inicial- Abierto  (ejemplo: 31339)
-Si el IPID aumenta en 1 su valor inicial- Cerrado (ejemplo: 31338)image 

Tiene como principal ventaja que el escaneo IDLE no revela la IP real , si no la IP de un Zombie.

Fragmentation scanning/ Escaneo de fragmentación

En lugar de simplemente enviar el paquete del escaneo, lo rompe en un par de
pequeños fragmentos IP. Al dividir la cabecera TCP en varios paquetes hace más difícil a los filtros detectar que es lo que se está haciendo. La opción “–f” indica que se va a utilizar pequeños paquetes fragmentados de SYN o FIN.

 

Estos son algunos de los escaneos de red/puertos que podemos realizar con la herramienta NMAP. Y para los que quieren ir al grano , aquí un pequeño resumen.

RESUMEN:

Stealth Scan/half-open/Escaneo Sigiloso:

-Envía un único paquete SYN. (cliente)
*SYN/ACK – Abierto (Servidor)
*RST – Cerrado (Servidor)
-Envia RST (cliente)

Xmas Scan/Escaneo Xmas

-Envia FIN/URG/PSH (Cliente)
*NO RESPONSE – Abierto (Servidor)
*RST/ACK – Cerrado (Servidor)
-Solo funciona para los SO basados en TCP/IP implementacion RFC 793
Xmas dirigidas a Windows se muestran todos los puertos en el host como cerrado.

FIN Scan/ Escaneo FIN

-Envia FIN (Cliente)
*NO RESPONSE – Abierto (Servidor)
*RST/ACK – Cerrado (Servidor)
-Solo funciona para los SO basados en TCP/IP implementacion RFC 793
FIN Scan dirigidas a Windows se muestran todos los puertos en el host como cerrado.

NULL Scan/Escaneo NULL
-Envia NO FLAGS SET (Cliente)
*NO RESPONSE – Abierto (Servidor)
*RST/ACK – Cerrado (Servidor)
-Solo funciona para los SO basados en TCP/IP implementacion RFC 793
NULL Scan dirigidas a Windows se muestran todos los puertos en el host como cerrado.

IDLE Scan/Escaneo IDLE
-Se elije un “Zombie” y averiguamos cual es su numero IPID (ejemplo: 31337)
-Enviamos paquetes falsificados del “Zombie” al “blanco”
-Si el IPID aumenta en 2 su valor inicial- Abierto  (ejemplo: 31339)
-Si el IPID aumenta en 1 su valor inicial- Cerrado (ejemplo: 31338)

ICMP echo scanning
Esto no es realmente de escaneo de puertos, ya que ICMP no tiene una abstracción de puerto.
Pero a veces es útil para determinar qué hosts en una red por hacer ping a todos.
nmap -P cert.org/24 152.148.0.0/16

Update 07/Sep/2011:
Se agrego el documento original en pdf para quien lo quiera descargar.

pdf_chiquito  Descargar

Crear dll con DevC++

Hola, no se ustedes… pero yo siempre me pregunte como rayos se crean esas cosas llamadas dll ( dynamic-link library | biblioteca de enlace dinámico ) y mas cuando en tiempos aquellos de Windows 98 llegaba a faltar alguna para ejecutar un programa.

Bien, empecemos definiendo que es en si un archivo dll. A groso modo un archivo dll viene siendo un archivo donde se encuentran almacenadas funciones que pueden llegar a ser llamadas por uno o varios programas.

Por ejemplo (recalco que es un ejemplo ficticio) :

El archivo msnmsgr.exe hace uso de sus bibliotecas [msgsres.dll, rtmpltfm.dll, psmsong.dll] exclusivas  para su funcionamiento, al igual que iexplorer.exe hace uso exclusivo de las suyas [jsdbgui.dll, , IEShims.dll, jsdebuggeride.dll] , pero los dos programas comparten la librería iexproxy.dll.

 

image

Los archivos dll además de ser compartidos por distintas aplicaciones, tienen la característica de que  pueden ser llamados en runtime (en ejecución).

Que ventajas nos trae que los programas compartan bibliotecas (*.dll) , la ventaja principal es el reducir el tamaño del programa ejecutable ( *.exe), pero al igual que existen ventajas, existen desventajas; la mas común y  odiada por todos es que un programa que desinstalamos desinstale una dll que era necesaria para otro programa.

Después de esta introducción, hablemos sobre el por que crear dll para nuestros programas. Siempre será mucho mas sencillo gestionar nuestra aplicación por módulos, donde se encuentren distintas funciones y sean fácilmente localizables, muy al estilo de las bibliotecas estáticas (*.h) a diferencia de las bibliotecas estáticas que se encuentran embebidas en el archivo exe, las bibliotecas de enlace dinámico (*.dll)  se encuentran, como archivos independiente reduciendo considerablemente el tamaño de nuestro archivo ejecutable, facilitando la actualización del mismo o bien de alguno de sus componentes.

Basta de hacerla de emoción, empecemos a escribir código.

1.- Abrimos DevC++ (mi versión es 4.9.9.2), Archivo –> Nuevo –> Proyecto

image

Elegimos “DLL”, de nombre colocamos “dll” y en tipo colocamos “En C”

 image

Guardamos nuestro proyecto como dll.dev

image

2.- Se abran creado 2 archivos automáticamente [ dllmain.c y dll.h ]

dll.h

#ifndef _DLL_H_
#define _DLL_H_

#if BUILDING_DLL
# define DLLIMPORT __declspec (dllexport)
#else /* Not BUILDING_DLL */
# define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */


DLLIMPORT void HelloWorld (void);


#endif /* _DLL_H_ */

dllMain.c

/* Replace "dll.h" with the name of your header */
#include "dll.h"
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>

DLLIMPORT void HelloWorld ()
{
    MessageBox (0, "Hello World from DLL!\n", "Hi", MB_ICONINFORMATION);
}


BOOL APIENTRY DllMain (HINSTANCE hInst     /* Library instance handle. */ ,
                       DWORD reason        /* Reason this function is being called. */ ,
                       LPVOID reserved     /* Not used. */ )
{
    switch (reason)
    {
      case DLL_PROCESS_ATTACH:
        break;

      case DLL_PROCESS_DETACH:
        break;

      case DLL_THREAD_ATTACH:
        break;

      case DLL_THREAD_DETACH:
        break;
    }

    /* Returns TRUE on success, FALSE on failure */
    return TRUE;
}

3.-En realidad con eso tenemos creado nuestra DLL, no hace falta mas que compilar el archivo.

image

Una vez compilado el archivo veremos que se crea una dll en el directorio donde tengamos guardado el proyecto.

image

Antes de continuar, expliquemos algunas líneas de código.

Esencialmente en el archivo dll.h se declaran las funciones que serán exportables por el archivo dll, para ello tenemos las líneas siguientes:

   1: #ifndef _DLL_H_

   2: #define _DLL_H_

   3:  

   4: #if BUILDING_DLL

   5: # define DLLIMPORT __declspec (dllexport) //Export de la DLL

   6: #else 

   7: # define DLLIMPORT __declspec (dllimport) //Import de la DLL

   8: #endif 

   9: DLLIMPORT void HelloWorld (void); //Prototipo de la función HelloWord

  10: #endif /* _DLL_H_ */

Mientras que en el archivo dllmain.c tenemos:

Declaración de librerías.

   1: #include "dll.h" // Nombre de la libreria donde se declaran los prototipos

   2: #include <windows.h> // biblioteca Windows.h para el uso de dll

   3: #include <stdio.h> //Biblioteca de funciones estandar

   4: #include <stdlib.h> 

Definición de la función HelloWord

   1: DLLIMPORT void HelloWorld ()

   2: {

   3: //En la definicion colocamos un MessageBox con el texto Hello World 

   4: //Sintaxis de MessageBox

   5: // MessageBox( 0, "Mensaje de Salida","Titulo de Ventana",Tipo);
Tipos: MB_YESNOCANCEL | MB_ICONQUESTION | MB_SYSTEMMODAL | MB_OK
| MB_ICONEXCLAMATION |  MB_YESNO

   6:     MessageBox (0, "Hello World from DLL!\n", "Hi", MB_ICONINFORMATION);

   7: }

Declaración/prototipo de función DllMain:

   1: BOOL APIENTRY DllMain (HINSTANCE hInst/* Library instance handle. */ ,

   2:                        DWORD reason /* Reason this function is being called. */ ,

   3:                        LPVOID reserved /* Not used. */ )

Cuando Windows se vincula a una DLL de un programa, Windows llama a la función de la biblioteca DllMain. Esto significa que cada DLL debe tener una función DllMain.  La función DllMain debe ser definido como tal. Las palabras clave "BOOL", "APIENTRY", "HINSTANCE", etc, están todos definidos en <windows.h>.Por lo tanto, debe incluir ese archivo, incluso si no se usa ninguna API Win32 en su biblioteca

Esta función va a ser llamada automáticamente por cualquier programa que cargue automáticamente la librería.

Definiendo la función DllMain :

   1: {

   2:     switch (reason)

   3:     {

   4:       case DLL_PROCESS_ATTACH:

   5:         break;

   6:  

   7:       case DLL_PROCESS_DETACH:

   8:         break;

   9:  

  10:       case DLL_THREAD_ATTACH:

  11:         break;

  12:  

  13:       case DLL_THREAD_DETACH:

  14:         break;

  15:     }

  16:  

  17:     /* Returns TRUE on success, FALSE on failure */

  18:     return TRUE;

  19: }

APIENTRY es sólo una palabra clave que Windows utiliza internamente.Por lo tanto, no es necesario que te preocupes por eso.

La variable "hInstance" es el identificador de HINSTANCE para la biblioteca, y puede utilizar, o bien puede borrarlo.

Dentro de la definición de la función DllMain podemos encontrar la razón por la cual la biblioteca fue llamada, esto se controla con un switch siendo los siguientes casos:

DLL_PROCESS_ATTACH

En caso de que un programa se ha vinculado a la biblioteca por primera vez.

DLL_PROCESS_DETACH

En caso de que un programa se ha desvinculado de la biblioteca.

DLL_THREAD_ATTACH 
En caso de que un hilo de un programa se vinculado a la biblioteca.

DLL_THREAD_DETACH

En caso de que un hilo de un programa ha desvinculado de la biblioteca.

La función DllMain no necesita hacer nada especial para estos casos, aunque para algunas bibliotecas, podría resultar útil para asignar el almacenamiento de cada subproceso o un proceso nuevo que se está utilizando con la biblioteca.

La función DllMain debe devolver TRUE si la librería cargada con éxito, o FALSE si en la biblioteca había un error y no se pudo cargar. Si se devuelve FALSE, el programa mostrará un mensaje de advertencia y se cerrara.

La llamada de la biblioteca podrá producirse en dos ocasiones, una en la carga de la librería, siendo entonces el parámetro reason =  DLL_PROCESS_ATTACH y otra cuando se descarga la librería, en este caso, con el parámetro reason = DLL_PROCESS_DETACH.

Sin embargo, si no estamos interesados en saber alguna de las causas por la cual la biblioteca fue llamada por un programa, entonces podemos eliminar la sentencia switch y simplemente devolver un TRUE (return TRUE) .

Quedando de la siguiente forma:

   1: BOOL APIENTRY DllMain (HINSTANCE hInst 

   2:                        DWORD reason        

   3:                        LPVOID reserved    

   4: {

   5:     /* Returns TRUE on success, FALSE on failure */

   6:     return TRUE;

   7: }

 
Con eso tenemos una explicación de la sintaxis de nuestros dos archivos, el siguiente paso…. llamar la función  HelloWorld que se encuentra dentro de nuestra dll ( dll.dll ).
 

Llamando funciones del DLL desde un EXE

 
Para poder llamar nuestra función crearemos un nuevo “Código Fuente”.

image

Si nos pregunta si deseamos añadir el nuevo archivo al proyecto contestamos que No

image

 

El contenido de nuestro archivo será el siguiente:

// usar librería dinámica con enlazado dinámico
#include <windows.h>
#include <stdlib.h>
#include <iostream>
#include "dll.h"
//Puntero enlace
typedef void __stdcall (* FPTR)();

int main(int argc, char *argv[]) {
   FreeConsole();// Liberamos al programa de la consola
   HMODULE dllHandle = LoadLibrary("dll.dll");  // cargar librería 
   if (!dllHandle) {
      std::cout << "Error en la carga de dll.dll\n";
   }  else {
      FPTR llamada = (FPTR) GetProcAddress(dllHandle, "HelloWorld");
//Use GetProcAddress para devolver un puntero de función a una función en la biblioteca. 
      if (!llamada)
         std::cout << "Error al obtener direccion de HelloWord()\n";
      else llamada();

      FreeLibrary(dllHandle);    // descargar librería
//Una vez que haya terminado con un archivo DLL, y desea eliminarlo de la memoria,
//podemos llamar a la función FreeLibrary con identificador de módulo de la DLL. 
   }
//   system("PAUSE");
   return EXIT_SUCCESS;
}  

Guardamos el archivo como Llama_dll.cpp en el mismo directorio donde tenemos nuestro archivo dll.dll.

image

 

Cerramos DevC++ para cerrar nuestro proyecto dll.dev. y abrimos el archivo Llama_dll.cpp

image

Compilamos y ejecutamos

image

 

Y Wala! tenemos nuestro mensaje que definimos en la función HelloWord de la biblioteca  :) .

image

Es muy importante mencionar que si el archivo dll.dll no se encuentra en el mismo directorio donde ejecutamos Llama_dll.exe este no desplegaría el mensaje en pantalla.

Espero como siempre, les sea de utilidad :) … dejo los archivos en el siguiente link:

Archivo_zipDescargar

 

Fuentes:

Un muy buen articulo que explica algunos conceptos

Wiki que explica a detalle la sintaxis

Ventanas Modales en DevC++

Documento Word que explica en muy resumidas cuentas como crear una dll

http://www.svetlian.com/dll/articulos_descripcion_dll.htm

http://www.zator.com/Cpp/E1_4_4b2b.htm#[2]

http://elblogroboticodepedro.weebercorp.com/2009/02/03/labview-31-crear-dll-en-c-con-dev-c-y-llamada-en-labview/

Video: http://www.youtube.com/watch?v=fzO9L6tlXDI

Conio.h en DevC++

Muchas veces en tareas que nos dejan realizar en casa surge el problema de que tenemos que programar en un compilador distinto que el de la escuela, por ejemplo: mientras que en el salón de clases tenemos Borland C++, en casa tenemos DevC++, no hay problema cuando los programas son sencillos, pero que sucede cuando llegamos a utilizar funciones “no estandarizadas” como por ejemplo: clrscr, gotoxy, cputs, putch, getch, getche, kbhit, etc… esto en DevC++ que tenemos en casa.

image

Lo primero que GRITAMOS al ver la pantalla de compilación es…
“Pero en la escuela funcionaba bien”.

Basándome en el post de Utilizar la librería conio en Dev-C++ describo los pasos a seguir, para poder utilizar la librería conio.h en DevC++.

Paso 1

Descargar el archivo conio1_31.zip ( Megaupload | SkyDrive )

Paso 2

Descomprimimos el contenido del archivo conio1_31.zip

image

Paso 3

Seleccionamos el archivos libconio.a y lo copiamos al directorio: C:\Dev-Cpp\lib

image

Paso 4

Seleccionamos el archivo conio.h y lo copiamos en la carpeta C:\Dev-Cpp\include (en caso de que llegase a existir uno con el mismo nombre, pueden renombrar el original y copiar el conio.h del zip)

image

 

Paso 5

Seleccionamos los archivos 6-Console_conio.template , ConsoleConio_c.txt y ConsoleConio_cpp.txt y los copiamos en la carpeta C:\Dev-Cpp\Templates

image

 

Una vez echo los pasos anteriores, podremos probar nuestra librería conio , de la siguiente forma:

Abrimos Dev-C++ : Archivo –> Nuevo –> Proyecto

image

Si todo salió correctamente, aparecerá en la ventana de nuevo Proyecto un proyecto llamado: Consola + conio. La seleccionamos y presionamos Aceptar

 

image

 

Por default nos aparecerá un programa de prueba.

image

 

Lo compilamos y ejecutamos el código de prueba.

image

si obtenemos un resultado como la siguiente pantalla, es que todo salió bien :)

image

 

Espero les sea de utilidad, ya que en muchas escuelas utilizan Dev-C++ como compilador de C++.

Nota Extra:

En los comentarios del post original (fuente) viene un breve procedimiento, para que funcione con Windows 7 (para los que tengan problemas) y de igual forma se comparte otra forma, de hacer que conio.h funcione.

 

Fuente:
http://internetizados.wordpress.com/2009/02/13/utilizar-la-libreria-conio-en-dev-c/

Cuentas de correo para alumnos y egresados

La Dirección de Cómputo y Comunicaciones a través del contrato de licenciamiento vigente con Microsoft, ofrece la plataforma LIVE@EDU para la asignación de cuentas de correo electrónico a los alumnos y egresados de nuestro Instituto, estas hospedadas de por vida sobre un dominio propio del IPN en servidores externos al Instituto.(No aplica para el personal del IPN)

¿Cómo obtenerla?
Si eres alumno o egresado y aún no tienes tu cuenta de correo, llama al 57296000 ext. 51492 y solicítala. Si ya cuentas con una, llámanos para cambiarla por una nueva en la plataforma Live Edu con dominio @alumno.ipn.mx. No olvides tener a la mano tu CURP y boleta.

Concurso del 09 de mayo al 20 de mayo del 2011

FLYER_LIVEEDU5510

Bases del Concurso

1.- La vigencia de la promoción es del 09 de mayo al 20 de mayo del 2011.
2.- Sólo participarán los alumnos que activen su cuenta de correo IPN en el laboratorio de cómputo de su plantel durante el periodo de vigencia de la promoción. (ver planteles participantes)
3.- Si un alumno activa su cuenta en otro lugar que no sea el laboratorio de cómputo de su plantel no podrá participar en la rifa ya que los asesores de Microsoft llevarán el control de los alumnos que activan sus cuentas y serán quienes participen.
4.- Se rifarán 4 consolas de Xbox 360, una por cada plantel y los ganadores serán seleccionados mediante un sorteo con tómbola en la semana del 23 al 27 de Mayo en cada uno de los planteles participantes.
5.- Cada ganador recibirá su premio en su plantel en la fecha en la que se realicé el sorteo en su campus.
6.- Los planteles participantes son: UPIICSA, ESIME ZACATENCO, ESCA SANTO TOMAS, ESCA TEPEPAN
(mayor información en http://www.contenido.dcyc.ipn.mx/LiveEduPortal/)

 

Fuente:

http://www.upiicsa.ipn.mx/

http://www.contenido.dcyc.ipn.mx/LiveEduPortal/index.html

 

image
Se acerca peligrosamente la fecha … FLISOL 2011, donde la comunidad de software libre se reúne para difundir tecnología asociada al mismo, su objetivo principal es promover el uso de software libre, y UPIICSA participara de forma activa, la cita es:

Viernes 8 de abril a partir de las 9am y hasta las 6pm
UPIICSA
Edificio de Culturales.

 

Para mas detalles visiten el siguiente link: http://www.installfest.net/FLISOL2011/Mexico/UPIICSA

*A mi parecer hay dos temas muy interesantes que atender en la FLISOL UPIICSA 2011 (-Detección de arp-poisoning -Hardware libre en México )

 

desktop-1024x640

 

Ese mismo día el buen Alex por parte de foroupiicsa.net organiza un pequeño concurso en el cual pone a prueba el espíritu linuxero :P. Si quieres conocer las bases del concurso “Escritorios Linuxeros” así como los premios visita el siguiente link: http://foroupiicsa.net/?p=549

 

Y pues…. ya….. ponte a jugar…. libre!

Via | upiicsalibre.org & foroupiicsa.net

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.