No se accede de wan a servidor ftp



  • Buenas, tengo un servidor ftp corriendo en una de las pc con windows xp (y voy a instalar otro en otra pc con debian), está instalado el servidor y configurado, pero no se puede acceder desde afuera del pfsense (en la red anda bien), estuve leyendo en el foro en inglés y parece que es un error bastante común, pero no entiendo bien qué tengo que hacer para solucionarlo, la versión que tengo es la 1.0.1



  • tienes que hacer NAT. has de redirigir todo lo que entre por la wan por el puerto 21(ftp) hacia la ip LAN de tu servidor ftp. Está en Firewall > NAT > Port forward.



  • Eso ya lo hice, pero no funciona, da un error 425 (si mal no recuerdo) a los que quieren conectarse, en realidad se coencta pero no lista las carpetas.



  • ¡Hola!

    El problema viene de que una comunicación FTP no sólo emplea el puerto 21. Abre una segunda comunicación con un puerto dinámico entre el servidor y el cliente. Los accesos FTP son pues un quebradero de cabeza en la configuración de cortafuegos.

    ¿Solución?

    Deberías activar FTP-Proxy Helper para tu WAN y admitir todo el tráfico TCP que tenga por destino 127.0.0.1, además del tráfico hacia tu FTP server por el puerto 21.

    FTP-Proxy Helper "reside" en la IP 127.0.0.1 y hay que autorizar el tráfico hacia él.

    Yo tengo el caso al revés. Tengo FTP-Proxy Helper activado en mi LAN de alumnos para que no se confunda la apertura de puertos dinámicos para FTP con los accesos P2P (Emule, Ares, …) que tanto les gusta. De esta manera les permito bajar/subir archivos por FTP y mediante Traffic Shaper bajo la prioridad de las conexiones P2P.

    A nivel interno no tenemos servidor FTP. Empleamos SFTP (SSH para transferencia de ficheros), con una shell que sólo les permite los comandos de SCP (Secure Copy). Por tanto, desde fuera los clientes acceden por SSH usando FileZilla o WinSCP.

    Piensa también que FTP-Proxy Helper no es multiWAN (siempre entra/sale por la WAN principal del cortafuegos) y que por emplear dos canales de comunicación los accesos FTP tampoco son compatibles con el balanceo de carga.

    Como que pfSense está basado en Packed Filter (PF), te paso la URL dónde está explicado todo el "tinglado":

    http://www.openbsd.org/faq/pf/ftp.html

    Si buscas en el fórum de pfSense por la palabra clave FTP te saldrán también muchos "postings" sobre el tema ...

    Saludos,

    Josep Pujadas



  • @bellera:

    ¡Hola!

    El problema viene de que una comunicación FTP no sólo emplea el puerto 21. Abre una segunda comunicación con un puerto dinámico entre el servidor y el cliente. Los accesos FTP son pues un quebradero de cabeza en la configuración de cortafuegos.

    ¿Solución?

    Deberías activar FTP-Proxy Helper para tu WAN y admitir todo el tráfico TCP que tenga por destino 127.0.0.1, además del tráfico hacia tu FTP server por el puerto 21.

    Estimado
    Tengo PFsense con fw bridge con 3 redes detrás del firewall, también tengo este problema, el punto es que en el manual de "transparent_firewall bridge" aparece que debemos deshabilitar la opción "FTP-Proxy Helper" afectara al funcionamiento del bridge si habilito el FTP-Proxy Helper??

    saludos…



  • ¡Hola!

    1. Tendrías que probar con la 1.2 BETA-1, porque por lo que he visto, este es un tema que tenían (hace un tiempo) pendiente. No he probado nunca pfSense como bridge, por lo que no te puedo decir más.

    2. El servidor FTP es tuyo, con lo que quizás puedas "acotar" los puertos dinámicos que usa para datos en modo pasivo y, por tanto, establecer reglas. También podrías probar el modo activo (puerto 20 para datos).

    3. No usar FTP, usar SFTP (FTP sobre SSH2 -un solo puerto y comunicación encriptada-). Dale un vistazo al servidor FTP FileZilla para Windows, igual soporta SFTP. Yo uso el cliente FileZilla para los servicios SFTP que tengo montados con FreeBSD: http://sourceforge.net/project/showfiles.php?group_id=21558

    Saludos,

    Josep Pujadas



  • Hola, yo tengo el mismo problema, desde la WAN no puedo acceder al FTP de un servidor de la LAN,os detallo mi configuracion ( he seguido los consejos de bellera);

    Utilizo la version 1.0.1

    Proto Source Port Destination Port    Gateway

    TCP    *      *    127.0.0.1    *              * 
    TCP/UDP *    *      LAN net  Puertos FTP  *    (puertos FTP = 20 21 TCP)

    En la WAN tengo deshabilitado  Disable the userland FTP-Proxy application

    Con el cliente FTP Filezilla en modo pasivo accede, pero no llega a hacer el List, es decir no veo el contenido del FTP

    Alguna idea??

    Gracias.

    PD: aun tengo penidiente la instalación del Spamd



  • ¡Hola!

    Se me ocurren dos cosas:

    1. Creo que el modo pasivo no emplea 21 y 20, sino 21 y puerto dinámico. Tendrías que probar tu solución en modo activo (21 y 20).

    2. ¿ Tienes autorizado el tráfico "de vuelta" en tu LAN ? Igual son las reglas de tu LAN las que cortan el tráfico.

    En http://www.openbsd.org/faq/pf/ftp.html#natserver se explica cómo PF (Packet Filter) gestiona un caso como el tuyo.

    Si no lo he comprendido mal, tendrías que activar FTP-Proxy Helper en tu WAN, permitir el tráfico en tu WAN hacia 127.0.0.1 y hacer NAT en tu WAN hacia la IP de tu servidor FTP (en la LAN) para el puerto 21 (lo que también te debe generar la autorización del tráfico para el puerto 21). Hecho esto, tu conexión FTP debería hacerse contra la IP WAN de pfSense, puerto 21.

    Miraré si puedo probarlo en mi "laboratorio" esta tarde …

    Saludos,

    Josep Pujadas



  • Hola,

    1. tienes toda la razon en tema ftp pasivo… :-P  al intentar conectar en ese modo me da:

    500 Invalid PORT Command

    Tengo todo habilitado en el firewall de LAN a WAN, vamos la regla que te crea el pfsense por defecto.

    Y tendria que hacerlo sin NAT, ya que montare mas de un servidor ftp en la LAN, por eso tengo las reglas asi. ( LAN net).

    Gracias.



  • Hola,

    conseguido a medias,
    si permito todo el trafico desde mi ip publica (conexion diferente de donde esta el pfsense)  hacia la lan, si funciona, ahora bien si solo especifico bien FTP o bien los puertos 20/21 no me realiza el listado del ftp.

    Solucion xapucera dejarlo como esta ahora, pero me gustaria poderlo hacer mediante la regla del ftp, para no tener que dejar todo abierto aunque sea solo desde una de mis ips pubilicas.

    gracias.



  • @jachao:

    si permito todo el trafico desde mi ip publica (conexion diferente de donde esta el pfsense)  hacia la lan, si funciona, ahora bien si solo especifico bien FTP o bien los puertos 20/21 no me realiza el listado del ftp.

    Porque … no sólo empleas 21. Tu servidor FTP abre puertos dinámicos (modo pasivo) para la transferencia de datos y no tienes el control de qué puertos está usando. Tienes que emplear FTP Proxy Helper. O trabajar sin puertos dinámicos (modo activo, sólo puerto 20), que no sé si es posible para tu servidor FTP. O controlar qué puertos abre tu servidor FTP para los datos.

    Saludos,

    Josep Pujadas



  • dejando unicamente la regla de todo abierto desde  mis ips publicas, el ftp funciona en modo pasivo sin ningun problema, pero de no en activo  ??? (ni por estas), he desactivado el FTP Helper y me sigue funcionando (tb he eliminado la regla de firewall permitiendo trafico al 127.0.0.1).

    Lo que no entiendo es que no me funcione de forma activa si solo necesita los puertos 20/21, estoy utilizado el servidor ftp de un windows XP SP2.

    Gracias.



  • ¡Hola de nuevo!

    ¿ Qué tienes puesto en [Filezilla Server Options] [Passive mode settings] ?

    Ahí se dice que hay que llenar [Use the following IP:] si el servidor en modo pasivo está detrás de un cortafuegos. Y más abajo se puede limitar el rango de puertos a emplear para el modo pasivo.

    Saludos,

    Josep Pujadas



  • hola…

    tengo activado passive mode, lo demás en blanco.



  • Pues …

    Según documentación de FileZilla Server en [Use the following IP:] tienes que meter la IP pública de tu router ADSL para que el modo pasivo pueda funcionar detrás de NAT (del router ADSL) y del cortafuegos (pfSense).

    http://sourceforge.net/docman/display_doc.php?docid=24747&group_id=21558

    I'm behind a firewall …
    I'm behind a router ...

    También aconsejan acotar los puertos dinámicos del 5000 al 5100 y poner las reglas que permitan el tráfico en dichos puertos. Si empleas FTP Proxy Helper esto no debería ser necesario.

    A ver si es esto …

    Saludos,

    Josep Pujadas



  • Estoy usando filezilla como cliente, no como servidor, mi servidor ftp es un windows XP SP2.
    Creo que estabamos hablando de cosas diferentes, de todas formas creo que lo dejare tal como esta, ya que era lo que necesitaba.

    Muchisimas Gracias.

    PD: ahora me tocara mirar de instalar squid….


Log in to reply