Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
File eXchange Protocol
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Method of data transfer}} {{Refimprove|date=March 2010}} {{IPstack}} '''File eXchange Protocol''' ('''FXP''' or '''FXSP''') is a method of data transfer which uses [[File Transfer Protocol|FTP]] to transfer data from one remote server to another ([[inter-server]]) without routing this data through the client's connection. Conventional FTP involves a single [[Server (computing)|server]] and a single [[client (computing)|client]]; all data transmission is done between these two. In the FXP session, a client maintains a standard FTP connection to two servers, and can direct either server to connect to the other to initiate a data transfer. The advantage of using FXP over FTP is evident when a high-bandwidth server demands resources from another high-bandwidth server, but only a low-bandwidth client, such as a network administrator working away from location, has the authority to access the resources on both servers. ==Risk== Enabling FXP(.RVL) support can make a server vulnerable to an [[exploit (computer science)|exploit]] known as [[FTP bounce attack|FTP bounce]]. As a result of this, [[FTP server]] software often has FXP disabled by default. Some sites restrict IP addresses to trusted sites to limit this risk. ==FXP over SSL== Some [[FTP Server]]s such as [[glFTPd]], cuftpd, RaidenFTPD, drftpd, and wzdftpd support negotiation of a secure data channel between two servers using either of the FTP protocol extension commands; CPSV or SSCN. This normally works by the client issuing CPSV in lieu of the PASV command—or by sending SSCN prior to PASV transfers—which instructs the server to create either a [[Secure Sockets Layer|SSL]] or [[Transport Layer Security|TLS]] connection. However, both methods—CPSV and SSCN—may be susceptible to [[man-in-the-middle attack]]s, if the two FTP servers do not verify each other's SSL certificates. SSCN was first introduced by RaidenFTPD and [[SmartFTP]] in 2003 and has been widely{{Citation needed|date=July 2010}} adopted.{{When|date=July 2010}} ==Technical== Although FXP is often considered a distinct protocol, it is in fact merely an extension of the FTP protocol and is specified in {{IETF RFC|959}}: User-PI - Server A (Dest) User-PI - Server B (Source) ------------------ ------------------ C->A : Connect C->B : Connect C->A : PASV A->C : 227 Entering Passive Mode. A1,A2,A3,A4,a1,a2 C->B : PORT A1,A2,A3,A4,a1,a2 B->C : 200 Okay C->A : STOR C->B : RETR B->A : Connect to HOST-A, PORT-a ==References== This "protocol" is [[Standardization|standardized]] as a subset of [[Request for Comments|RFC]] 959 by the [[IETF]] as: * {{IETF RFC|959}} File Transfer Protocol (FTP). J. Postel, J. Reynolds. Oct-1985. This obsoleted the preceding {{IETF RFC|765}} and earlier FTP RFCs back to the original {{IETF RFC|114}}. ==See also== * [[File Transfer Protocol]] (FTP) * [[Comparison of FTP client software]] * [[List of FTP server software]] * [[Trivial File Transfer Protocol]] (TFTP) * [[SSH file transfer protocol]] (sftp), a protocol running over [[secure shell|SSH]] * [[FTPS]] (FTPS), FTP run over SSL * [[Simple File Transfer Protocol]] (SFTP), the historical protocol {{IETF RFC|913}} [[Category:File Transfer Protocol]] [[Category:Internet protocols]] [[ru:FTP#FXP]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Citation needed
(
edit
)
Template:IETF RFC
(
edit
)
Template:IPstack
(
edit
)
Template:Refimprove
(
edit
)
Template:Short description
(
edit
)
Template:When
(
edit
)