SFTP (SSH File Transfer Protocol) is a secure protocol to transfer files between systems. It uses an encrypted secure shell (SSH) for the communication between two systems.
You can also use this or this tutorial to configure sftp only user on your Linux system without SSH access.
In this tutorial you will learn:
- Connect to remote sftp server
- Navigation in file system
- Upload files to SFTP server
- Download files from SFTP server
- Close SFTP connection
Connect to Remote SFTP Server
Use sftp command-line utility to connect remote sftp system. You need the sftp user and hostname or IP address of the remote host.
sftp [email protected]
Enter sftpuser account password to connect:
[email protected]'s password: sftp>
Navigate and View Files
Navigation in directories on SFTP is as simple as the local system. Use ‘pwd’ command to check the current working directory.
pwd
Remote working directory: /
Then use the ‘ls’ command to list all files and directories in the current directory.
ls
To navigate to other directories use ‘cd’ command followed by destination directory.
cd uploads
Use ‘cd ..’ to navigate to the parent directory.
cd ..
Upload files to SFTP
Now, I need to upload some files under uploads directory. Use the ‘put’ command to upload README.md from the local system to the remote sftp directory.
put README.md
You can also provide the absolute path of the local file and remote directory without navigating directories.
put /var/www/README.md /uploads/20191115/
Download Files from SFTP
To download files from the remote sftp directory use the ‘get’ command. For example to download REMOTE_FILE.md from the remote system to the current local directory.
get REMOTE_FILE.md
Similarly, you can provide an absolute path to download files.
get /uploads/REMOTE_FILE.md /var/www/
Quit the SFTP Connection
Simply say bye to your remote SFTP server. This will disconnect the SFTP connection and return to your local shell.
bye
Alternatively, you can also use quit
or exit
commands to close the SFTP session.
Conclusion
In this tutorial, you have learned to how to download and upload files using sftp command line.