How to Download File from SFTP Server to Local Machine

Aug 20
08:38

2015

Rossy Guide

Rossy Guide

  • Share this article on Facebook
  • Share this article on Twitter
  • Share this article on Linkedin

File Transfer Protocol (FTP) is a popular method of transferring files between two remote systems. SFTP, which stands for Secure File Transfer Protocol, or SSH File Transfer Protocol, is a separate protocol packaged with SSH that works in a similar way over a secure connection.

mediaimage

SFTP encrypt commands and data both,How to Download File from SFTP Server to Local Machine Articles preventing passwords and sensitive information from being transmitted in the clear over a network. The advantage is the ability to leverage a secure connection to transfer files and traverse the filesystem on both the local and remote system.

In almost all cases, SFTP is preferable to FTP because of its underlying security features and ability to piggy-back on an SSH connection. FTP is an insecure protocol that should only be used in limited cases or on networks you trust.

Although SFTP is integrated into many graphical tools, this guide will demonstrate how to use it through its interactive command line interface.

A download involves the receipt of a file copied from a remote network location. Often, a person downloads files to their personal computer from a remote server computer. In Microsoft email networks, for example, people download their email from an Exchange server to their Outlook client.

Transferring Remote Files to the Local System:

If we would like download files from our remote host, we can do so by issuing the following command:

get remoteFile

 

Fetching /home/demouser/remoteFile to remoteFile

/home/demouser/remoteFile                       100%   37KB   36.8KB/s   00:01

 

As you can see, by default, the "get" command downloads a remote file to a file with the same name on the local file system.

We can copy the remote file to a different name by specifying the name afterwards:

get remoteFile localFile

 

The "get" command also takes some option flags. For instance, we can copy a directory and all of its contents by specifying the recursive option:

get -r someDirectory

 

We can tell SFTP to maintain the appropriate permissions and access times by using the "-P" or "-p" flag:

get -Pr someDirectory

 

Download file from Sftp server to local machine:

I have to download file from Sftp server to local machine. Then I am creating a connection by using the phpseclib. It is connected with Sftp server. But I have to download a file from server to local machine. In this case I am using the below code to download dummy.txt from remote server to local machine.

global $sftp;

public function startProcess() {

 

   $sftp = new Net_SFTP('www.domain.com');

 

   if (!$sftp->login('username', 'password')) {

       exit('Login Failed');

   }

   else {

       echo "connected";

   }

 

   echo $sftp->pwd() . "rn";

   downloadfiles('/path to server/dummy.txt');      

}

 

public function downloadfiles($filename)

{

   if($filename)

   {

         $local_file_path='localpath/adobe.txt';

       $sftp->get($filename, $local_file_path);

   }

   else

   {

       echo "error download files";

   }

 

}