A FTP server that persists all data to QingStor Object Storage.
$ qsftpd --help
A FTP server that persists all data to QingStor Object Storage.
Usage:
qsftpd [flags]
Flags:
-c, --config string Specify config file (default "qsftpd.yaml")
-h, --help help for qsftpd
-v, --version Show version
Here's an example config file named qsftpd.yaml.example
in the project root directory, copy it to qsftpd.yaml
and change the settings.
Run the FTP server.
$ qsftpd -c path/to/your/config.yaml
[2017-04-12T03:24:40.541Z #2527] INFO -- : Listening... 127.0.0.1:21
[2017-04-12T03:24:40.541Z #2527] INFO -- : Starting...
[2017-04-12T03:24:49.330Z #2527] INFO -- : FTP Client connected: ftp.connected, id: 76e209d6a89448279e947a7babe0097d, RemoteAddr: 127.0.0.1:51788, Total: 1
......
Note: When you upload large files, please set the timeout time of FTP client long enough to avoid connection disruption.
Currently, the commands listed below are not supported. You can submit issue to request new features.
Command | Description |
---|---|
ABOR | Abort |
ACCT | Account |
ADAT | Authentication / Security Data |
CCC | Clear Command Channel |
CONF | Confidentiality Protected Command |
ENC | Privacy Protected Command |
EPRT | Extended Port |
HELP | Help |
LANG | Language (for Server Messages) |
MIC | Integrity Protected Command |
MLSD | List Directory (for machine) |
MLST | List Single Object |
MODE | Transfer Mode |
REIN | Reinitialize |
SMNT | Structure Mount |
STOU | Store Unique |
STRU | File Structure |
Note: All FTP commands can be found here (https://tools.ietf.org/html/rfc5797).
This project is highly inspired by fclairamb/ftpserver
which is a fork of andrewarrow/paradise_ftp
.
Thanks to Andrew Arrow and Florent Clairambault, and the original license can be found here.
The Apache License (Version 2.0, January 2004).