Yesterday one of our colleagues shared the announcement of the release of the Firefox Send service to the general public, (if you don't know what it is, you can visit the publication in this link).
Firefox Send can be used from the comfort of your web browser with which you can share files safely thanks to end-to-end encryption, although let me tell you that it is also possible to use this service from the terminal.
About ffsend
ffsend is an open source CLI interface that was written by to easily encrypt files from the command line.
With ffsend it is possible to be able to share not only files but also directories easily and safely from the command line through a secure link, private and encrypted with a single simple command.
It is important to mention that the files are shared by the sending service and can be up to 2 GB. And that the files can be downloaded with this tool or through your web browser.
All files are always encrypted on the client and secret keys are never shared with the remote host.
An optional password can be specified and a default file duration of 1 (up to 20) downloads or 24 hours is applied to ensure files don't stay online forever.
Among its main characteristics we can find the following:
- Upload and download files and directories safely.
- Files are always encrypted on the client (sender) side
- Supports the file protection offered by Firefox Send (additional password, generation and configurable download limits)
- Supports old and new Firefox server versions
- Archive and archive directory and extraction.
- Track history of your files for easy management
- Ability to use custom shipping hosts
- Inspect or delete shared files
- Accurate bug reporting
- Encryption streaming and upload / download, very low memory space
- Designed for use in scripting without interaction
How to install ffsend on Ubuntu and derivatives?
For those who are interested in being able to install this CLI interface of the Firefox Send service on their system. We share the instructions to do it.
ffsend can be installed on any Linux distribution either by compiling it directly from its source code or with support for Snap packages.
The first thing we are going to do to be able to install ffsend on our system is open a terminal with Ctrl + Alt + T and in it we are going to type the following commands to install the necessary dependencies for the operation of ffsend.
First we are going to install the OpenSSL and CA certificates
sudo apt install openssl ca-certificates
Optionally, the developer recommends the installation of xclip
sudo apt install xclip
Now to install ffsend from Snap our system must have support for Snap packages (Ubuntu 18.04 LTS and Ubuntu 18.10 have it by default).
In the terminal we just have to type the following command:
snap install ffsend
And ready
How to use ffsend?
Already done the installation of ffsend in our system We can start using this service from the comfort of our terminal.
Now to upload a file (share a file) in a simple way, that is, without setting a password, download limit or link lifetime. In the terminal we just type:
ffsend upload /ruta/al/archivo/archivo.ext
Where we replace /path/al/archivo/archivo.ext by the location of the file indicating its extension.
To add protection to the file, that is to say to put a password we only add –password. This looks like this:
ffsend upload /ruta/al/archivo/archivo.ext --password
And in the terminal it will ask us to establish a password.
If we want to add a download limit, we do this with –Downloads, where we replace # with the maximum number of downloads this file will allow before it is removed.
ffsend upload /ruta/al/archivo/archivo.ext --downloads #
You can also combine everything:
ffsend upload /ruta/al/archivo/archivo.ext --password --downloads #
To download a file we just have to type the following in the terminal:
ffsend download “enlace”
Where we replace "link" by the URL of the file shared by Firefox Send
In the same way, you can check if the file still exists with:
ffsend exists “enlace”
Or the lifetime of the file shared with:
ffsend info “enlace”
If you want to know more about it you can check the following link.