Transferring Files to the Pi using FTP

When I fired up Filezilla to transfer files from my laptop to the Magni Pi, I found that the Pi seems not to have an FTP server installed.

I installed vsftpd and got things working after a bit of tweaking.

Am I following the wrong path? I was surprised that the Magni image didn’t already have an FTP server installed…how are files normally transferred to the Pi during development?

ANSWERED: My Filezilla settings for this connection were FTP instead of SFTP. Filezilla will automatically use the correct port if the settings are proper. The SFTP protocol is already handled by the default Magni Linux image.

2 Likes

That’s a great question actually.

We generally recommend using SSH based file transfer protocols, such as SCP or SFTP. Filezilla can connect to SFTP as well using the same credentials that you use for SSH. The SFTP server should already be running as part of the SSH server.

In general, plain FTP is avoided these days because it is completely unencrypted and sends passwords in plaintext. This is not a big deal for local network stuff like the Pi, but SFTP is taking over for everything anyway.

Rohan

What settings did you use?

Make sure you are using sftp (port 22) and not ftp (port 21).

Rohan

1 Like

Actually, your question solved my question in a roundabout way.

The port was not being specified, but Filezilla’s protocol was set for FTP (which defaulted to port 21). Changing to SFTP solved that and it now uses port 22 by default.

I looked at my Raspbian Filezilla setup and it had the correct setting of SFTP. So I went astray in setting up for the Magni.

Thanks. Will now uninstall vsftpd.

I have used ftp with filezilla and can vouch that if you wish to use that you do have to manually install vsftpd. We could install vsftp then leave the service disabled but we are trying to encourage use of sftp as Rohan has stated so it is not on our images.

The latest version of Filezilla works fine without vsftpd. It was purely my error in not selecting the proper protocol.