Ftp y Windows Server 2012 R2

Ftp y Windows Server 2012 R2

Postby Antonio Mart. » Tue Dec 05, 2017 12:54 pm

Hola,

Me estoy rompiendo la cabeza.
Resulta que en mi oficina las primitivas de fwh para Ftp me funcionan muy bien.
No ocurre así en casa del cliente, (Windows Server 2012 R2) donde no consigo que envien información. He probado con Filezilla y SI transmite a través de Ftp.

¿ Alguna idea de qué puede estar pasando ? ¿ Algún problema de las rutinas Ftp de Fwh en Windows 2012 Server R2 ? ¿ WinInet.dll buggy ?

Gracias
Antonio Mart.
 
Posts: 174
Joined: Sat Feb 23, 2013 10:04 am

Re: Ftp y Windows Server 2012 R2

Postby karinha » Tue Dec 05, 2017 1:21 pm

El mas probable, és que el Ftp del cliente, no acepta el Ftp de FWH por algun motivo que desconozco, acá en Brasil acontece bastante esto.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7804
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Ftp y Windows Server 2012 R2

Postby cmsoft » Tue Dec 05, 2017 2:45 pm

Yo utilizo estas funciones para subir archivos por FTP y me funcionan bien actualmente.
Code: Select all  Expand view

     IF !ConectaServerFTP("xxx.sitio.com","user","password",@oFtp)    
        MsgStop("No pudo conectar")
     ENDIF
     SubeArchivoFtp(cArchivo,"xxx/public/carpeta-destino/destino.xxx",oFtp)
*****************************************
*** Conectar al servidor FTP
FUNCTION ConectaServerFTP(cNomSer,cNomUsr,cClaUsr,oFtp)
LOCAL cServer, cUser, cPassword, oUrl, cUrl
cServer := cNomSer
cUser := cNomUsr
cPassword := cClaUsr
cUrl := "ftp://" + cUser + ":" + cPassword + "@" + cServer
cUser:= strtran(cUser,"@","&at;")
oUrl := tUrl():New( cUrl )
IF At( "@", cUser ) > 0
   oUrl:cUserID := strtran(cUser,"&at;","@")
   oUrl:cPassword := cPassword
ENDIF
oFTP := tIPClientFtp():New( oUrl, .T. )
oFTP:nConnTimeout := 20000
oFTP:bUsePasv := .T.
oFtp:bTrace := {|| .t.}
oFTP:Open( )
IF oFtp <> NIL
   RETURN .T.
ENDIF
RETURN .F.

******************************************************************************


FUNCTION SubeArchivoFtp(cFileOri,cFileDes,oFtp)
oFtp:Dele( cFileDes )
oFtp:UpLoadFile( cFileOri, cFileDes )
RETURN .T.
 
User avatar
cmsoft
 
Posts: 1289
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: Ftp y Windows Server 2012 R2

Postby Antonio Mart. » Tue Dec 05, 2017 4:34 pm

Karinha,

El cliente es el programa Fwh.

CmSoft,

Lo que propones es cambiar a la clase tIPClientFtp. Si no quedara más remedio lo haría, pero no me gusta la idea. Tenía mis propias clases Ftp basadas en la clase TFtp de Fwh.

Gracias a ambos por contestar

---

Lo curioso es que Filezilla en modo Ftp Simple si funciona en el Windows 2012 Server R2.
Y como dije, lo curioso es que acá en la oficina, con otro Windows naturalmente, si funciona perfectamente.

Asi que creo que el problema puede venir por incompatibilidad fwh/WinInet.dll - Windows 2012 Server R2

¿ Alguna idea más ?
Antonio Mart.
 
Posts: 174
Joined: Sat Feb 23, 2013 10:04 am

Re: Ftp y Windows Server 2012 R2

Postby Carlos Mora » Tue Dec 05, 2017 5:41 pm

Antonio,
FTP es un protocolo muy estandar, no hay riesgos de "incompatibilidad", si puede ser de configuración. ¿Desde donde te estas conectando? ¿A que servidor? ¿Has probado el modo pasivo? ¿Has registrado en el firewall del Windows Server tu programa para que no lo bloquee?

Un saludo
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Carlos Mora
 
Posts: 989
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: Ftp y Windows Server 2012 R2

Postby hectorpapiri » Wed Dec 06, 2017 4:13 pm

Proba modificando la clase TFTP con esto y fijate.

Code: Select all  Expand view

#define INTERNET_FLAG_PASSIVE       0x08000000  // used for FTP connections  // AD2K


// AD2K (Puerto y Modo Pasivo)
METHOD New( cFTPSite, oInternet, cUserName, cPassword, nPort, lPassiveMode ) CLASS TFTP

   DEFAULT nPort := FTP_PORT
   DEFAULT lPassiveMode := .F.

   ::oInternet = oInternet
   ::cSite     = cFTPSite
   ::cUserName = cUserName
   ::cPassword = cPassword

   if oInternet:hSession != nil
      ::hFTP = InternetConnect( oInternet:hSession, cFTPSite, nPort /*FTP_PORT*/,;
                                ::cUserName, ::cPassword,;
                                INTERNET_SERVICE_FTP, iif(lPassiveMode, INTERNET_FLAG_PASSIVE, 0), 0 )
      if GetLastError() == 0
         aAdd( oInternet:aFTPs, Self )
      else
         ::hFTP := NIL
      endif
   endif

return Self

 


Depues probá pasandole el parámetro .T.

Saludos
hectorpapiri
 
Posts: 23
Joined: Wed Sep 14, 2016 7:13 pm
Location: Rosario, Santa Fe, Argentina

Re: Ftp y Windows Server 2012 R2

Postby Antonio Mart. » Mon Dec 11, 2017 8:42 am

Buenos días,

Antonio,
FTP es un protocolo muy estandar, no hay riesgos de "incompatibilidad", si puede ser de configuración. ¿Desde donde te estas conectando? ¿A que servidor? ¿Has probado el modo pasivo? ¿Has registrado en el firewall del Windows Server tu programa para que no lo bloquee?


Carlos,

Me estoy conectando a un VPS. Desde mi oficina funciona perfecto, sin ningun problema (Win XP). Desde la oficina del cliente no funciona (Windows Server 2012 R2)
Lo estoy probando todo el tiempo en modo pasivo. Los informaticos del hard me dicen que han configurado todo (firewall) para permitir los accesos a Ftp y de hecho la subida y bajada de archivos CON FILEZILLA desde la oficina del cliente funciona sin problemas. Lo que no funciona alli es mi programa fwh.

---

hectorpapiri,

Gracias por su respuesta. Ya tenia esas modificaciones y utilizando el modo pasivo.

---

¿ Alguna idea más pls ?
Antonio Mart.
 
Posts: 174
Joined: Sat Feb 23, 2013 10:04 am

Re: Ftp y Windows Server 2012 R2

Postby Carlos Mora » Mon Dec 11, 2017 9:43 am

Antonio,

No soy experto en Windows Server, pero un problema muy frecuente es que no se añade la aplicación (el 'exe') en la lista blanca del firewall. Eso lo tenía que hacer SIEMPRE en un programa que usaba FTP para enviar copias de seguridad de los ficheros a un servidor.
FTP es algo bastante conocido, los problemas suelen venir por parte de la configuración. Filezilla te funciona porque el mismo instalador registra el programa en el firewall.

Pide al técnico que te muestre la lista blanca de programas en el firewall.

en windows 10 eso está en :

Panel de control\Todos los elementos de Panel de control\Firewall de Windows\Aplicaciones permitidas
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Carlos Mora
 
Posts: 989
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: Ftp y Windows Server 2012 R2

Postby cnavarro » Mon Dec 11, 2017 10:31 am

Aprovechando el hilo
Qué clase o herramienta es la que utilizáis para realizar las conexiones FTP con Fivewin?
Quiero incluir algo de ésto en FivEdit.
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6541
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Ftp y Windows Server 2012 R2

Postby Antonio Mart. » Mon Dec 11, 2017 10:38 am

Carlos Mora wrote:Antonio,

No soy experto en Windows Server, pero un problema muy frecuente es que no se añade la aplicación (el 'exe') en la lista blanca del firewall. Eso lo tenía que hacer SIEMPRE en un programa que usaba FTP para enviar copias de seguridad de los ficheros a un servidor.
FTP es algo bastante conocido, los problemas suelen venir por parte de la configuración. Filezilla te funciona porque el mismo instalador registra el programa en el firewall.

Pide al técnico que te muestre la lista blanca de programas en el firewall.

en windows 10 eso está en :

Panel de control\Todos los elementos de Panel de control\Firewall de Windows\Aplicaciones permitidas


Carlos,

Se lo dije escribí al cliente que se lo dijera al técnico hard. Quizá me ha faltado insistir en lo de la lista de .exes que le pasé.
Voy a hacer lo que dices. Que me muestre mis programas en la lista blanca del firewall.
Agradezco tus anotaciones y consejos.
Antonio Mart.
 
Posts: 174
Joined: Sat Feb 23, 2013 10:04 am

Re: Ftp y Windows Server 2012 R2

Postby Antonio Mart. » Mon Dec 11, 2017 10:44 am

cnavarro wrote:Aprovechando el hilo
Qué clase o herramienta es la que utilizáis para realizar las conexiones FTP con Fivewin?
Quiero incluir algo de ésto en FivEdit.


Utilizo la clase TFtp, pero no la uso directamente sino que creé otra intermedia para controlar el flujo de subida y bajada de cada archvio, que básicamente son pequeñas mejoras a metodos upFile y downFile que pillé por el foro.

En todo caso, la clase TFtp se ha quedado obsoleta en el sentido de que es un protocolo que no es seguro y es rechazado muchas veces por ello.
Así tenemos Ftp (simple) que es el que tiene Fwh, Ftps (Como Ftp pero con un túnel de seguridad) y SFtp (que no tiene nada que ver con el protocolo Ftp salvo el nombre.)

En este mismo hilo un compañero (cmSoft) ha sugerido usar tIPClientFtp que no sé realmente qué protocolo usa.
Antonio Mart.
 
Posts: 174
Joined: Sat Feb 23, 2013 10:04 am

Re: Ftp y Windows Server 2012 R2

Postby cnavarro » Mon Dec 11, 2017 10:56 am

Ya, también había pensado en ello y hacerlo a mano como dices que hace el compañero, pero pensaba que había alguna clase actualizada que se pudiera utilizar, y si no pues veremos lo que hago si no hay nada standard
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6541
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Ftp y Windows Server 2012 R2

Postby Carlos Mora » Mon Dec 11, 2017 4:26 pm

Cristobal,
En su momento usé las provistas por FW, pero si tuviera que hacerlo de nuevo trataría de ir por el camino de CURL, que te garantiza que se mantiene actualizado, maneja bien todos los protocolos, y es bastante sencillo. De hecho en el contrib de hbcurl los test se hacen con FTP, asi es que seguramente funciona correctamente.

Y yo se que a ti CURL se te da bien :)
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Carlos Mora
 
Posts: 989
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: Ftp y Windows Server 2012 R2

Postby cnavarro » Mon Dec 11, 2017 4:35 pm

Carlos, justamente en eso estaba pensando, me has leído el pensamiento
A ver si tengo un rato y trato de hacer una clase o utilidad que me sirva
Ya te preguntaré si tengo alguna duda
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6541
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Ftp y Windows Server 2012 R2

Postby Enrrique Vertiz » Wed Dec 13, 2017 6:29 am

Saludos Antonio

Pues mi respuesta no te da ninguna solucion, pero si me sumo a tu problema, simplemente TipClientFtp() desde varios FTP mios me deja bajar sin problemas, pero desde un FTP en el server de un cliente mio, no me deja bajar, pero si le doy aFiles := oFTP:ListFiles( "*.*") me muestra que estan los archivos, pero al dar oFtp:DownLoadFile( cFileDown ) simplemente retorna .F., pero OJO solo en el FTP de mi cliente, en los 2 mios, externos por cierto si me baja sin problemas, pero si uso la clase qFTPClient() SI baja sin problemas, los ubica y los baja.

Si alguien sabe porque con una clase SI funciona y con otra NO seria ideal ...
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23.1026X, Fwh 24.09, BCC74, MySQL 8.0.X, SQLLIB 1.9m
Enrrique Vertiz
 
Posts: 540
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 55 guests