Problemas con «passive mode»

Problemas con «passive mode»

Uno de los términos que se suelen oír cuando se habla de problemas con el ftp es el de passive mode. Aquí vamos a ver de que se trata, y por que es la solución a muchos problemas de conectividad

Como sabemos en toda transferencia ftp interviene un programa servidor y un programa cliente. El programa servidor se ejecuta donde están almacenados los ficheros que se quieren bajar (o donde se almacenarán los que deseamos subir) y el programa cliente es el programa ftp que usamos desde la maquina local, para subir o bajar los ficheros.

En este proceso de comunicación entre cliente y servidor, el cliente puede actuar en modo activo o en modo pasivo.

Una conexión ftp usa dos puertos, abre dos canales: Uno será el puerto de comandos, command port o control port (normalmente puerto 21) por donde se transfieren las órdenes. El otro es el puerto de datos (data port) que es por donde circulan los datos que integran los ficheros (normalmente el puerto 20, pero puede ser cualquiera por debajo del 1024)

modo activo

Cuando usamos ftp en modo activo, tambien considerado modo normal, se establecen dos conexiones distintas. El primer lugar se establece una conexión para la transmisión de comandos (desde cualquier puerto de nuestro ordenador inferior a 1024 hacia el puerto 21 del server) y por esa misma conexión, mediante un comando PORT se indica al server cual es el puerto (distinto) de nuestro ordenador que está a la escucha de los datos.

Entonces, si bajamos algún archivo, es el servidor el que inicia la transmisión de datos, desde su puerto 20 al puerto que le hemos indicado. Se llama modo activo porque la transmisión de datos es iniciada como proceso distinto desde el servidor, hacia el puerto que le hemos indicado.

modo pasivo

En modo pasivo es siempre el programa cliente el que inicia la conexión con el servidor. Al abrir una conexión ftp se abre primero una conexión de control (desde un puerto superior a 1024 de la maquina local al puerto 21 del server). Al pasar a modo pasivo (comando PASV), el cliente pide un puerto abierto al servidor (será otro puerto superior al 1024 del server) y recibida la contestación, será el cliente el que establezca la conexión de datos al server a través de ese puerto.

A modo de resumen podemos decir que en modo pasivo las conexiones son siempre abiertas por el pc cliente, mientras que en modo activo se abren por el que envía los datos (el server si se trata de bajar archivos al pc local, el cliente si se trata de subir archivos al server).

¿por qué supone un problema el modo activo ?

Como hemos visto, en el modo activo se abre una conexión para datos desde el server a la maquina cliente, esto es, una conexión de fuera a dentro.

Entonces, si la maquina cliente está protegida por un firewall, este filtra o bloquea la conexión entrante, al serle un proceso desconocido.

En modo pasivo es el cliente el que inicia ambas conexiones, de control y de datos, con lo cual el firewall no tiene ninguna conexión entrante que filtrar

Passive mode y la linea de comandos

Lamentablemente la utilidad de ftp que viene por defecto con windows 95/98 y que puedes usar en línea de comandos, no dispone de modo pasivo.

Por ello si tienes problemas de conexión y sospechas que es por un firewall, deberás buscar un programa cliente ftp que disponga de esta posibilidad (la inmensa mayoría).

Para terminar con el modo pasivo, parte de un log de conexión:

FTP > PASV
FTP < 227 Entering Passive Mode (222,222,222,22,196,39).
FTP > LIST

Como ves el server reacciona al comando PASV entrando en modo pasivo e indicando una serie de números (entre paréntesis la segunda linea). Los cuatro primeros bloques de números se corresponden con la IP del servidor. Los dos números restantes son el puerto que el server abre a la escucha para el canal de datos
El puerto esta indicado mediante dos números de 8 bits; traducido a número de 16 bits obtenemos el numero «real».

 

Esperando haber aclarado algo, animo a compartir y a darle like 😉

>Windows Seven Live USB, (windows Live stick)

>

En esta ocasión tengo el problema de usar ciertas utilidades, y es que Los USB´s auto arrancables que he utilizado en el pasado se han quedado obsoletos con las nuevas tecnologías. Ya es necesario utilizar otras herramientas. Por ello he querido hacer un USB autoarrancable con Windows y con todas los programas que necesito.
Como crear un USB Live con
 Windows Seven (Embedded)
Puede ser interesante tener un USB con una máquina instalada que la podamos arrancar desde cualquier lugar.
Hay varios métodos, hoy voy a explicar como lo he realizado con los siguientes elementos:

  • Una máquina con la que realizar el procedimiento, un PC o Thin Client.
  • Un Disco o USB de instalación de Windows Embedded Estandar 7.
  • Un Pendribe como destino que sera el “Windows live USB”
En mi caso, he preferido tener un seven por las características que me ofrece. La versión elegida ha sido un Seven Embedded que puede ocupar de  entre 2Gb a 4Gb dependiendo de las opciones.
Como ya sabemos instalar desde un USB (instalación de Windows 7 desde USB), nos es mas sencillo que usar un CD en máquinas que carecen de el.



 Preparando la instalación:
Pinchamos el USB de instalación o DVD, pinchamos el Pendrive en el que queremos instalar le “Seven Live Edition” J y encendemos la maquina que tendra configurado como primer dispositivo de arranque los USB o DVD dependiendo de lo que hayamos elegido. Si no arranca, cambiaremos el orden de los USB.

La primera parte es como la instalación de un Windows embedded normal. Hemos probado diferentes plantillas:

  • Con la plantilla «Internet Explorer, Mediaplayer y RDP» necesitaremos un pen de mas de 4Gb preferiblemente 8Gb si queremos instalar programas como si de un Seven normal se tratara.
  • Con la plantilla «Minimum Configuration» he conseguido meterla en un pen de 2Gb, se trata de una consola, pero que podemos ejecutar diversos programas como el Explorer entre otros, y aun sobraran 500Mb si comprimimos el PenDrive para poner alguna aplicación….
Podéis aprovechar a añadir mas complementos si disponeis de un pen de mas de 4Gb.

En este paso tenemos que elegir Modify Features, para poder elegir más complementos. Sobre todo, el más importante para hacer la instalación.
El complemento Bootable Windows USB Stack, es el que nos va a permitir arrancar desde el pendrive. Si no elegimos esta opción en la pantalla siguiente, no podremos elegir un disco USB como destino y no podremos instalarlo para el proposito que queremos.

(Nos dará un problema de dependencias que solucionaremos desactivando el Standard Windows USB Stack)

Como observáis, tengo el Disco 0 que es el del equipo, El Disco 1 en donde instalare el Windows embedded y el disco 2 con el que he lanzado la instalación y podría haber sido una unidad de DVD. El orden de los discos puede variar dependiendo donde pinchemos los USB´s, también podemos utilizar particiones y el programa nos ofrece unas herramientas (dentro de Drive options) con las que borrar y formatear disco.
En el pantallazo, veis que he utilizado un USB de tan solo 2Gb y para la
plantilla “configuración minima”. Lo interesante es un Pen Drive de 8Gb y hacer una configuración «maxima» donde poner la configuración con todas las opciones, de esta manera ocupara unos 4Gb, pero contaremos con otros 4 para meter datos o programas.

Instalación.

A partir de aquí empieza la instalación del Windows en el USB.
Nota:
La primera vez que lo hice me dio el siguiente error:


Windows setup failed to install packages or apply componentes settings while offline seervicing the image. Not enought memory available to complete the operation.

Y se trataba por no tener espacio en disco. El Thin Clien que estaba utilizando tenía el HD (realmente una memoria interna) de solo 500Mb.
Así, que repetí la instalación desde un PC normal. Y de esta forma siguió instalándose.
La siguiente parte es la que mas tiempo le cuesta dependiendo de las velocidades de los Pen. No desesperéis, no tardara mas que la instalación de un Win´98 en un Pentium. J

Terminada esta parte reiniciará y ya podremos quitar el pen con el que hemos iniciado la instalación. A partir de aquí usaremos solo el nuevo USB hasta que termine la instalación.
Aquí hace otro reinicio.

El último paso es terminar la instalación con la habituales pantallas de configuración para Nombre, configuración regional, serial de Windows, etc

En mi caso como utilizo una versión demo bajada de Microsoft, no meto ningún serial y tengo 30 días para hacer pruebas.
Ya tenemos nuestro Windows 7 Live. Realmente es una versión resumida que funcionará en la mayoría de los PC´s. En todo caso necesitaremos drivers adicionales para las tarjetas de audio, red u otras que no se instalen automáticamente. Además si vamos “paseando” el pendrive por diversos equipos, este intentara adaptarse al hardware que encuentro pidiendo, posiblemente, reinicio.

Opiniones.

  • Ahora queda incluir nuestros programas favoritos o utilidades para tenerlas disponibles en cualquier lugar, pudiendo instalar en el USB (como si fuese nuestro desktop habitual) muchas aplicaciones y  desinstalarlas desde el panel de control.
  • He probado a instalar y se instalan todos los programas habituales, programas de administración de red, Java, flash, y un largo etc…..no he encontrado problemas. Repasad esta pagina de Microsoft.
  • Tarda en arrancar sobre el 1’30” y apagarse en unos 20”.
  • La velocidad del sistema dependerá del equipo Host siendo esta, mas o menos, la que tendría el equipo con el seven instalado en local. lo he probado en un equipo con 500Mb de ram y un procesador antiguo y funciona perfectamente.
  • Los USB adicionales que pinchéis los reconoce sin problemas.
  • En el Pen de 2Gb he comprimido todo el disco USB para tener mas espacio.
  • Podéis probar con la plantilla «set up box» y un equipo antiguo con tarjeta de televisión (necesitaréis los drivers) e incluir el la opción de «mediacenter».
  • Para utilizar un host del que no reconoce drivers, recomiendo extraerlos del equipo encendiéndolo con su sistema operativo normal e importándolos cuado arrancamos con el «live». Por ejemplo con Drive Max.
  • De momento es preferible instalar la versión de Windos en 32 bits, nos funcionará en mas máquinas. Si solo lo bamos ha instalar en máquinas de 64 bits, tambien funciona, auque tendremos que realizar la instalación con el Windows de 64 bits
  • Podemos utilizar esta solución para tener un Thin Clien «portatil» tan pequeño como un llavero.
;)

Instalar Windows Seven, 2008 o Embedded desde Pendrive USB

Ahora muchos servidores y todos los thin clients, vienen sin unidad de CD/DVD,

Problema:
¿Cómo podemos arrancar e instalar la máquina sin el disco de arranque?
– Con lo más parecido que hay hoy en dia: un pen USB

Solución:
Crear un Pen autoarrancable con la instalación de Windows 7


Para ello necesitaremos crear un USB de arranque, suerte que con Windows 7 / 2008 se puede realizar de forma mas o menos sencilla.

Creación de USB con arranque Windows.

Necesitamos estar en sesión en un Windows Seven o 2008, tener un pen de al menos 4Gb y una imajen del Windows que deseamos implementar, yo usare un Windows standard embedded bajado de la página de Microsoft.
Empezamos: Abrimos una consola y ejecutamos DISKPART
Seleccionado el USB, seguimos:
Ahora tarda un buen rato, buen momento para el café….
Terminamos asignando el punto de montaje.
Ahora queda crear el sector de arranque y pasar todo el contenido de nuestro disco de Windows 7, Windows 2008 u otra versión de Windows como la que voy a utilizar yo de Windows Embedded para Thin Clients.
Nota: J: es mi unidad de DVD, D: es mi unidad USB
El copiado del disco con cualquier método que conozcáis.

Podemos aprovechar para reducir el tamaño del disco…como quitando idiomas, características o drivers.
Habrá que googlear para saber que se puede quitar 😉
A partir de aqui, solo nos queda introducir el pen en un TC, un desktop o servidor y arrancar la máquina. El resto es una instalación normal como si fuese de DVD.