Use Firefox Send with ffsend in Fedora

ffsend is the command line client of Firefox Send. This article will show how Firefox Send and ffsend work. It’ll also detail how it can be installed and used in Fedora.

What are Firefox Send and ffsend ?

Firefox Send is a file sharing tool from Mozilla that allows sending encrypted files to other users. You can install Send on your own server, or use the Mozilla-hosted link send.firefox.com. The hosted version officially supports files up to 1 GB, and links that expire after a configurable download count (default of 1) or 24 hours, and then all the files on the Send server are deleted. This tool is still in experimental phase, and therefore shouldn’t be used in production or to share important or sensitive data.

While Firefox Send is the tool itself and can be used with a web interface, ffsend is a command-line utility you can use with scripts and arguments. It has a wide range of configuration options and can be left working in the background without any human intervention.

How does it work?

FFSend can both upload and download files. The remote host can use either the Firefox tool or another web browser to download the file. Neither Firefox Send nor ffsend require the use of Firefox.

It’s important to highlight that ffsend uses client-side encryption. This means that files are encrypted before they’re uploaded. You share secrets together with the link, so be careful when sharing, because anyone with the link will be able to download the file. As an extra layer of protection, you can protect the file with a password by using the following argument:

ffsend password URL -p PASSWORD

Other features

There are a few other features worth mentioning. Here’s a list:

  • Configurable download limit, between 1 and 20 times, before the link expires
  • Built-in extract and archiving functions
  • Track history of shared files
  • Inspect or delete shared files
  • Folders can be shared as well, either as they are or as compressed files
  • Generate a QR code, for easier download on a mobile phone

How to install in Fedora

While Fedora Send works with Firefox without installing anything extra, you’ll need to install the CLI tool to use ffsend. This tool is in the official repositories, so you only need a simple dnf command with sudo.

$ sudo dnf install ffsend

After that, you can use ffsend from the terminal .

Upload a file

Uploading a file is a simple as

$ ffsend upload /etc/os-release
Upload complete
Share link: https://send.firefox.com/download/05826227d70b9a4b/#RM_HSBq6kuyeBem8Z013mg

The file now can be easily share using the Share link URL.

Downloading a file

Downloading a file is as simple as uploading.

$ ffsend download https://send.firefox.com/download/05826227d70b9a4b/#RM_HSBq6kuyeBem8Z013mg
Download complete

Before downloading a file it might be useful to check if the file exist and get information about it. ffsend provides 2 handy commands for that.

$ ffsend exists https://send.firefox.com/download/88a6324e2a99ebb6/#YRJDh8ZDQsnZL2KZIA-PaQ
Exists: true
Password: false
$ ffsend info https://send.firefox.com/download/88a6324e2a99ebb6/#YRJDh8ZDQsnZL2KZIA-PaQ
ID: 88a6324e2a99ebb6
Downloads: 0 of 1
Expiry: 23h59m (86388s

Upload history

ffsend also provides a way to check the history of the uploads made with the tools. This can be really useful if you upload a lot of files during a scripted tasks for example and you want to keep track of each files download status.

$ ffsend history
LINK EXPIRY
1 https://send.firefox.com/download/#8TJ9QNw 23h59m
2 https://send.firefox.com/download/KZIA-PaQ 23h54m

Delete a file

Another useful feature is the possibility to delete a file.

ffsend delete https://send.firefox.com/download/2d9faa7f34bb1478/#phITKvaYBjCGSRI8TJ9QNw

Firefox Send is a great service and the ffsend tools makes it really convenient to use from the terminal. More examples and documentation is available on ffsend‘s Gitlab repository.

Fedora Project community

17 Comments

  1. Kamil

    Perhaps we should introduce some QA to fedoramagazine articles?

    $ sudo dnf install ffsend
    No match for argument: ffsend
    Error: Unable to find a match

    • Artem

      Try not disable module repo then.

      Installed Packages
      Name : ffsend
      Version : 0.2.46

    • Hans-Joachim Bothe

      sudo dnf install ffsend

      works nicely on Fedora 30. Probably no version for older Fedora available.

      • Igor Gnatenko

        It is available all the way back to Fedora 28 (although there modular repos were still separate).

  2. Kamil

    Turns out this is a module and not a standard package. And not even Fedora Packages app can show it:
    https://apps.fedoraproject.org/packages/s?search=ffsend

    Oh Modularity, how we love you…

  3. Igor Gnatenko

    @Kamil, yes. You are not supposed to disable modular repositories 🙂

  4. Rick

    I don’t use Firefox any more. Mozilla has gone woke.
    They had a good run.

    • Note that this isn’t a Firefox component. Firefox is just in the name. You can use this in any browser, and of course, through the CLI.

    • Avi Wadhwa

      what do you mean “woke”?

    • Robert Fairbrother

      i noticed a few problems for a wile but i think they bounced back. i just hope this isin’t a tactic from infiltrators to get Mozilla in trouble
      50.66.39.177

  5. Charles

    Very interesting product/service from Mozilla. Thank you for writing the article.

  6. Mohnish

    Is

    send.firefox.com

    ever aware of the share URL OR is the share URL all local client side affair?

    • No. The server creates the download URL with the file ID, but this isn’t enough to decrypt and download. The client then appends the secret (as a hash) to the URL, to allow decryption. So, this required secret is never on the server.

  7. Jose M. Acosta

    I like to know what meaning text below trancribed when I tgry to u install upgrade fedora29
    nnot download flash-player-npapi-32.0.0.192-release.x86_64.rpm: All mirrors were tried; Last error: Interrupted by header callback: Server reports Content-Length: 5264400 but expected size is: 9026892

    • Rick Graham

      Looks like it can’t get the flash player upgrade. Flash is a security hole, you prolly don’t want it anyway. It may be required for DRM, dunno, I don’t allow that either.

Comments are Closed

The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat. Fedora Magazine aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. The Fedora logo is a trademark of Red Hat, Inc. Terms and Conditions