Bonjour à tous,
J'utilise TCLCurl qui est une librairie TCL pour utiliser le puissant CURL.
http://mirror.yellow5.com/tclcurl/
Dans mon cas, je souhaite l'utiliser pour les protocols FTP / FTPS.
Jusqu'ici pas de problème; excepter que je souhaite faire des transferts entre deux FTPS (FXP) de site a site FTP sans transfert en local les fichiers. Genre un "mirroire" du premier FTP au deuxieme.
https://fr.wikipedia.org/wiki/File_eXchange_Protocol
Je ne trouve aucune méthode, est ce que quelqu'un aurais une idée ?
J'ai bien peur que malgré la puissance de CURL, le FXP n'ai pas supporter ?
Or que LFTP le fais
https://lftp.yar.ru/lftp-man.html
Seulement ce dernier ne prend pas en charge certains fonction que TCLCurl supporte (Socks5 par exemple), et, n'a pas de librairie TCL. Donc ce n'ai pas une solution pour moi.
Bien à vous,
Effectivement, cURL ne gère pas le FXP, mais tous les serveurs FTP n'acceptent pas non plus le FXP. Je dirais même que quasi aucun ne l'accepte encore.
Si tu veux faire du mirroring, tu peux peut-être te tourner vers rsync.
De toutes manières, ce que j'ai vu de lftp fera la plupart du temps transiter par ton poste local:
Citation :ftpcopy
Obsolete. Use one of the following instead:
get ftp://... -o ftp://...
get -O ftp://... file1 file2...
put ftp://...
mput ftp://.../*
mget -O ftp://... ftp://.../*
or other combinations to get FXP transfer (directly between two FTP servers). lftp would
fallback to plain copy (via client) if FXP transfer cannot be initiated or ftp:use-fxp is
false.
Merci pour ta réponse tonton CrazyCat
(23/08/2016, 13:41)CrazyCat a écrit : [ -> ]Effectivement, cURL ne gère pas le FXP, mais tous les serveurs FTP n'acceptent pas non plus le FXP. Je dirais même que quasi aucun ne l'accepte encore.
Il faut savoir que la plupart l'accepte. Seulement, ce n'ai pas active par défaut. Ceci étant donner qu'une vulnérabilité (détournement du protocol) nommer "
FTP bounce" existe.
Par exemple Serveur FTP avec le support FXP :
PureFTPD avec l'option AllowUserFXP
ProFTPD
Serv-U
vsftpd FTP server
wu-ftpd FTP server
GLftpd (point 12)
Et j'en passe. C'est donc répandu le support FXP sur les FTPD.
(23/08/2016, 13:41)CrazyCat a écrit : [ -> ]Si tu veux faire du mirroring, tu peux peut-être te tourner vers rsync.
Effectivement rsync peut-être une solution; mais je pense pas qu'il supporte le protocol FTP, c'est plutôt du SSH.
(23/08/2016, 13:41)CrazyCat a écrit : [ -> ]De toutes manières, ce que j'ai vu de lftp fera la plupart du temps transiter par ton poste local:
ftpcopy
Obsolete. Use one of the following instead:
get ftp://... -o ftp://...
get -O ftp://... file1 file2...
put ftp://...
mput ftp://.../*
mget -O ftp://... ftp://.../*
or other combinations to get FXP transfer (directly between two FTP servers). lftp would
fallback to plain copy (via client) if FXP transfer cannot be initiated or ftp:use-fxp is
false.
Oui, du coup, je pourrais le faire avec TCLCurl, de transité vers le local et envoyer vers le distant (download du FTP A et upload sur le FTP B).
Seulement sa utiliseras ma bande passante(consommation) inutilement, et, perdra l'avantage de la rapidité de celles des deux Serveur FTP.
Pourtant il existe des client FTP en mode graphique avec le support FXP:
FlashFXP
gFTP
profxp
ForkLift
wlFxp
FreeNAS
Ce n'ai pas comme si c'était tout nouveau
Voir
RFC 959 - server-server interaction de October 1985
Code :
the same host that initiates the FTP commands via the control
connection, but the user or the user-FTP process must ensure a
"listen" on the specified data port. It ought to also be noted
that the data connection may be used for simultaneous sending and
receiving.
In another situation a user might wish to transfer files between
two hosts, neither of which is a local host. The user sets up
control connections to the two servers and then arranges for a
data connection between them. In this manner, control information
is passed to the user-PI but data is transferred between the
server data transfer processes. Following is a model of this
server-server interaction.
Control ------------ Control
---------->| User-FTP |<-----------
| | User-PI | |
| | "C" | |
V ------------ V
-------------- --------------
| Server-FTP | Data Connection | Server-FTP |
| "A" |<---------------------->| "B" |
-------------- Port (A) Port (B) --------------
Bref, on dirais qu'il y a du retard a ce niveau là.
Je me suis mal exprimé:
(23/08/2016, 14:15)mcdeffice a écrit : [ -> ] (23/08/2016, 13:41)CrazyCat a écrit : [ -> ]Effectivement, cURL ne gère pas le FXP, mais tous les serveurs FTP n'acceptent pas non plus le FXP. Je dirais même que quasi aucun ne l'accepte encore.
Il faut savoir que la plupart l'accepte. Seulement, ce n'ai pas active par défaut. Ceci étant donner qu'une vulnérabilité (détournement du protocol) nommer "FTP bounce" existe.
Ce que je voulais dire, c'est qu'il y a très peu de
serveurs FTP, je ne parle pas de
daemon FTP, où ce protocole est activé, justement à cause des failles que cela introduit.
Si tes deux serveurs acceptent le fxp et que tu tiens à utiliser un eggdrop pour faire ton système, pourquoi ne pas faire un tcl qui lancerait un "vrai" client fxp en console comme
http://www.yafc-ftp.com/ avec la commande exec ?