miércoles, 30 de septiembre de 2009

Perspectivas en Fuentes Mixtas

Tenemos el placer de invitarlo a participar en este gran evento donde tendrá la oportunidad de analizar los cambios estratégicos en tecnología y prácticas empresariales de manera de expandir sus oportunidades a través de la interoperabilidad, contribuyendo de forma efectiva la nueva generación de software interoperable en un mundo cada vez más abierto y heterogéneo.

Para ello contaremos con la participación de expertos internacionales entre los cuales destacan: Tom Hanrahan, Director de los Laboratorios Open Source de Microsoft y Cesar Brod, Fundador y miembro de Solís, Cooperativa de Desarrollo de Software Libre, con trabajos en la Iniciativa Mundial de Linux.

Durante este día compartirá y apreciará mediante escenarios reales como la interoperabilidad permite obtener los mejores resultados.


Espero puedan asistir, Gracias por leer!!

martes, 29 de septiembre de 2009

Curso: Php y MySql - Por Noixno Group


NOIXNO LEARNING, tiene el agrado en presentarles el programa de adiestramiento en Software libre de programación y manejo de bases de datos PHP y MySQL, conjuntamente con la inversión económica y los requisitos de inscripción al mismo, esperando sea de su satisfacción, para cualquier duda estamos a la orden.



Detalles:

PHP es una lengua scripting de uso general ampliamente utilizada que se satisface especialmente para el desarrollo del Web y se puede encajar en el HTML. Lo mejor de usar PHP es que es extremadamente simple para el principiante, pero a su vez, ofrece muchas características avanzadas para los programadores profesionales. Aunque el desarrollo de PHP está concentrado en la programación de scripts en el lado del servidor, se puede utilizar para muchas otras cosas.

La base de datos de MySQL, se ha convertido en la base de datos abierta más popular de la fuente del mundo debido a su funcionamiento rápido constante, alta confiabilidad y facilidad de empleo. Ha utilizado en más de 10 millones de instalaciones que se extendían de corporaciones grandes a los usos encajados especializados en cada continente en el mundo.

Observaciones:



v Incluye:
   CD Manual del curso 
   Material de trabajo diario 
   Certificado de asistencia 



v Cupo máximo:

   § 10 participantes por curso.

v Duración:

   § 48 horas (Aprox. 1 ½ mes)

v Opciones de Horarios:

   § Martes y Jueves de 1:30 pm a 5:00 pm

v Inversión:

   § Inversión única: 800 BsF. + IVA.

   § 50% al momento de reservar el cupo y el otro 50% posterior al inicio del mismo.



v Formas de pago:

   § Efectivo.

   § Cheque a nombre de Noixno Group C.A.

v Requisitos:

   § Entrevista Previa a Inscripción.  

   § Una Fotocopia de Cédula de Identidad.



Interezados contactar con:
Ing. Lilibeth Alvarez
+58 241 615.12.71, +58 241 826.41.99
+58 424 413.92.62, +58 416 644.73.43


Nota: no estoy cobrando ningún tipo de comisión ni nada por el estilo por la publicidad de este curso, simplemente es por el interés de los lectores. Un saludo!

Gracias por leer!!

jueves, 3 de septiembre de 2009

Confirmada Vulnerabilidad Zero-Day en IIS 5.0, 5.1 y 6.0

cap3  Microsoft ha ofrecido una confirmación oficial de una nueva vulnerabilidad tipo Zero-day que afectan a diferentes versiones de Servicios de Internet Information Server (IIS). El fallo de seguridad reside en el servicio FTP, explicó Alan Wallace, gerente de comunicaciones de alto nivel para la seguridad del equipo de comunicaciones de respuesta de Microsoft.


Según la compañía, los usuarios que ejecutan el File Transfer Protocol (FTP) en Microsoft Internet Information Services (IIS) 5.0, 5.1 y 6.0 están en riesgo de posibles ataques. Por supuesto que Windows 2000, Windows XP y Windows Server 2003 también son afectados.


“Microsoft está trabajando actualmente para desarrollar una actualización de seguridad a este problema para hacer frente a esta vulnerabilidad, y la dará a conocer una vez que se haya llegado a un nivel adecuado de calidad para una amplia distribución. Mientras tanto, Security Advisory 975191 contiene una guía que los clientes pueden implementar para ayudar a protegerse a sí mismos. Por favor vea el asesoramiento para obtener una lista de todos los productos afectados. Microsoft recomienda a los clientes que examinen y apliquen las soluciones guía en el Security Advisory", aconsejó Wallace .

Esperamos a que salga pronto, pero mientras tanto no se descuiden.

Gracias por leer!

Tcp/IP Sockets C#

Una red de computadoras (ordenadores) consiste en máquinas interconectadas mediante canales de comunicación.  Estas máquinas son Hosts y Routers. Los Hosts son computadoras que ejecutan aplicaciones, por ejemplo un navegador. Los Routers son equipos cuyo trabajo es retransmitir información de un canal de comunicación a otro. Estos pueden ejecutar programas, pero normalmente no son aplicativos. Para este post un canal de comunicación es un medio de transmisión de secuencias de bytes de un host a otro, este puede ser broadcast, como Ethernet, un modem dial-up, o algo más sofisticado.

Otro término que tenemos que definir es Protocolo. Un protocolo es un acuerdo acerca de los paquetes intercambiados por comunicación de los programas y lo que significan, además describe como está estructurado, por ejemplo: donde está la información del destinatario en el paquete y de que tamaño es. Un ejemplo es Http (Hypertext Transfer Protocol) que resuelve el problema de transferir objectos hipertexto entre servidores y hacerlo entendible por personas.

Ahora vamos directo al grano: ¿Qué es un Socket?

Un socket es una abstracción que permite a la aplicación “enchufarse” a la red para poder recibir y enviar data. Los principales tipos de socket hoy en día son los Stream Socket y los Datagram Socket. Los Stream Sockets utilizan TCP e IP para proveer n servicio confiable. Los Datagram Sockets usan UDP.

Otro concepto importante son el Stream Reader y el Stream Writer.

Son clases que nos ayudan a escribir y leer del buffer del socket. Sino existieran habría que leer el buffer y escribir en él directamente, cosa que es un poco engorrosa e innecesaria para la mayoría de las aplicaciones.

Código de ejemplo:

 

public class NetworkServer

{

    public static void Main()

    {

//creamos un thread para que el server

//se ejecute en paralelo con el cliente

//esto es solo por motivos prácticos del demo

        new Thread(new ThreadStart(

            delegate {

                new NetworkServer().Start(); }

                    )).Start();

 

//Iniciamos el Cliente

        new Client().Connect();

        Console.WriteLine("Listo");

Console.Read();


    }


    public  void Start()

    {

// Creamos un TcpListener y le indicamos que

//puerto va a poner en escucha.

        TcpListener tcpListener = new TcpListener(9898);

//Iniciamos la esucha

tcpListener.Start();

//Este método queda bloqueado hasta que

//se conecte un cliente

        Socket socketForClient = tcpListener.AcceptSocket();

 

        if (socketForClient.Connected)

        {

// Si se conecta

            Console.WriteLine("Cliente conectado.");

//Creamos el networkSream, el Reader y el writer

NetworkStream networkStream =

new NetworkStream(socketForClient);

            StreamWriter streamWriter =

new StreamWriter(networkStream);

 

            StreamReader streamReader =

new StreamReader(networkStream);


//Esta es la data a enviar.

string theString = "Esta es la data de envio";

            try

            {

//Escribimos la data en el stream

                streamWriter.WriteLine(theString);

//Ahora le decimos que la mande.

                streamWriter.Flush();

//Esperamos data del cliente

//Y la escribimos por consola.

                theString = streamReader.ReadLine();

                Console.WriteLine(theString);

            }

            finally

            {

//Cerramos las conexiones

                streamReader.Close();

                streamWriter.Close();

                networkStream.Close();

                socketForClient.Close();

            }

        }

    }

}

 



public class Client

{

    public void Connect()

    {

        TcpClient socketForServer;

        string server = "localhost";

        try

        {

//Creamos un TcpCliente y le pasamos

//el server y el puerto.

            socketForServer = new TcpClient(server, 9898);

        }

        catch

        {

            Console.WriteLine(

            "No se pudo conectar a {0}:9898", server);

            return;

        }


//aqui es lo mismo que en el server. Usamos StreamWriter y Reader.

        NetworkStream networkStream = socketForServer.GetStream();

StreamReader streamReader =

        new System.IO.StreamReader(networkStream);

       

StreamWriter streamWriter =

         new System.IO.StreamWriter(networkStream);


        try

        {

            string outputString = streamReader.ReadLine();

            Console.WriteLine(outputString);

            streamWriter.WriteLine("Mensaje desde el Cliente");

            streamWriter.Flush();

        }

        catch

        {

            Console.WriteLine("Exception reading from Server");

        }

        finally

        {

            networkStream.Close();

        }

    }

}





Esto es un demo muy básico, pero funciona correctamente. Se le pueden añadir funcionalidades como multithreading para poder aceptar a varios clientes al mismo tiempo.



Y como siempre gracias por leer!