Skip to main content
FTP

FTP

For your information

You can work via FTP only with containers in the pools ru-1 and ru-7.

Two connections are used for the FTP protocol to work:

  • control connection — commands and responses are sent over it, they are text strings;
  • data connection.

Object storage uses only passive data transfer mode. The process of connection establishment and data transfer is initiated exclusively from the client side.

Writing to the end of the file is not supported — attempting to do so will return response code 426.

Connection data

To connect to object storage via FTP is used:

Authentication is done using an S3 key — the Account Owner or User Administrator issues the key to the service user.When connecting via FTP, the Access key and Secret key fields from the key are used as login and password respectively.

Configure FTP

  1. Configure access.
  2. Connect via FTP.

1. Set up access

Access can be configured by a user with the Account Owner or User Administrator role.

  1. Create a service user с role with access to the object store.If you are using a user with the Object Storage User role, the container must have a configured access policy.
  2. Issue an S3 key to the user.

2. Connect via FTP

  1. Open Total Commander.
  2. From the Network menu, select Connect to FTP server.
  3. Click Add.
  4. On the General tab, in the Connection Name field, enter any name (for example, Servercore).
  5. In the Server field, enter the FTP host in the desired pool.
  6. In the Account field, enter the value of  the Access key field from the S3 key.
  7. In the Password field, enter the value of  the Secret key field from the S3 key.
  8. Check the Passive sharing mode (as Web browser) checkbox.
  9. Open the Advanced tab.
  10. In the File name encoding field, select UTF-8.
  11. Press OK. The profile will be saved.
  12. Click Connect.

FTP operation

Authorization

TeamArgumentsDesignation
USERAccess key from S3 keyPass login
PASSSecret key from the S3 keyPass the password

Defense

TeamArgumentsDesignation
AUTHNot requiredEstablish a secure TLS connection. Arguments will be ignored
PROTP / CSet the protection mode. P for Private, C for Clean. By default, P will use TLS
PBSZBuffer sizeSet the size of the protection buffer. The server will respond with 200 OK

Miscellaneous

TeamArgumentsDesignation
FEATNot requiredDisplay a list of supported additional functions
SYSTNot requiredDisplay the server operating system
NOOPNot requiredEmpty operation, the server will respond with 200 OKs
OPTSAccording to RFC2389.Pass additional options to the server

File access

TeamArgumentsDesignation
SIZEFile nameGet file size
STATNot requiredGet connection statistics
MDTMPathGet the date and time of file modification
RETRFile nameDownload file. It will work only after switching to passive mode with PASV command. Docking is supported
STORFile nameUpload a file in passive mode
APPEFile nameTell the server to accept the remote file. The command will work only if such a file does not exist in the storage yet. If the file exists, an error will be returned
DELEFile nameDelete file
RNFRFile nameSelect the file to rename
RNTONew file nameSet a new file name. Only after the RNFR command has been selected
ALLOSize in bytesReturn a response about available space. Regardless of the argument, the response will be 202 OK
RESTOffset in bytesCommand to "rewind" to a specific position in the file. Required for downloading with RETR

Working with containers

TeamArgumentsDesignation
CWDDirectory nameGo to the specified directory
PWDNot requiredShow the current working directory
CDUPNot requiredGo to the parent directory
NLSTNot requiredReturn a list of directory files in a shorter format than LIST. Only in passive connection mode
LISTPathOutput the contents of the current or provided directory. Both relative and absolute paths are supported
MLSDPathOutput the contents of the current directory. The main difference from LIST is that time stamps are accurate to the second, time is specified in UTC
MKDDirectory nameCreate a directory
RMDDirectory nameDelete directory

Establishing a connection

TeamArgumentsDesignation
TYPEA / IChange the mode of data transmission. There are two options, ASCII(A) or Binary(I). Either argument is ignored, the command is used for backward compatibility. Only Binary mode is supported
PASVNot requiredSwitch to passive data transfer mode
EPSVNot requiredInitiate a passive mode data connection. In response, the server will transmit the port number for the connection
EPRTProtocol version / address / portInitiate a data connection. The command is exclusive to active data transfer mode, so the server will report to this command that active mode is not supported
PORTNot requiredSwitch to active data transfer mode. The command is exclusive to active data transfer mode, so the server will report to this command that active mode is not supported
QUITNot requiredDisconnect from the server