Brief: OnionShare is a free and open-source tool that utilizes the Tor network to share files securely and anonymously.
You might have already come across a lot of online services to share files securely but it may not be completely anonymous.
Also, you do have to rely on a centralized service to share your files and if the service decides to shut down like Firefox Send — you can’t really depend on it to safely share files all the time.
All things considered, OnionShare is an amazing open-source tool that lets you share files using the Tor Onion service. It should be an amazing alternative to all the cloud file sharing services.
Let’s take a look at what it offers and how it works.
OnionShare: Share files anonymously over Tor
OnionShare is an interesting open-source tool that’s available for Linux, Windows, and macOS.
It lets you securely share files directly from your computer to the receiver without revealing your identity in the process. You don’t have to sign up for any account — nor does it rely on any centralized storage service.
It is basically peer-to-peer over the Tor network. The receiver only needs to have a Tor browser to download/upload files to your computer. I’d also recommend you to go through our Tor guide to explore more about it if you’re curious.
Let’s take a look at the features.
Features of OnionShare
For an average user who just wants security and anonymity, there’s no tweak required. However, you do have some advanced options if you need.
- Cross-platform support (Windows, macOS, and Linux)
- Send files
- Receive files
- Command-line options
- Publish onion sites
- Ability to use bridges (if your tor connection isn’t working)
- Ability to use a persistent URL for sharing (advanced users)
- Stealth mode (more secure)
You can go through the official user guide on GitHub to learn more about them.
Installing OnionShare on Linux
You should find OnionShare listed in your software center to get it installed. If it’s not there, you can add the PPA using the commands below on Ubuntu-based distros:
sudo add-apt-repository ppa:micahflee/ppa
sudo apt update
sudo apt install -y onionshare
If you’re looking to install it on other Linux distributions, you can visit the official website for installation instructions on Fedora and build instructions as well.
How does OnionShare Work?
After you get it installed, everything is pretty self-explanatory and easy-to-use. But, if you want a heads up, let me show you how it works.
Once, it loads up and connects to the Tor network
Sharing a File
You just have to add the file(s) that you want to share from your computer and then click on “Start sharing“.
Once you’re done, the status at the bottom-right should say “Sharing” and an OnionShare address will be generated (copied to clipboard automatically) as shown in the image below:
All the receiver needs now is the OnionShare address that should look like this:
http://onionshare:xyz@jumbo2127k6nekzqpff2p2zcxcsrygbnxbitsgnjcfa6v47wvyd.onion
And, a Tor browser to start downloading the files.
It’s worth noting that once the download completes (file transfer is done), the file sharing stops. You will also be notified of the same when that happens.
So, if you have to share it again or with someone else, you will have to re-share it and send the new OnionShare address to the receiver.
Allow Receiving Files
If you want to generate a URL that lets someone upload files directly to your computer (be careful with whom you share it), you can just click on the Receive Files tab after you launch OnionShare.
You just have to click on the “Start Receive Mode” button to get started. Next, you will get an OnionShare address (just like while sharing a file).
The receiver has to access it using the Tor browser and start uploading files. Here’s how it should look like:
Even though you will be notified of the file transfer when someone is uploading to your computer, you need to manually stop the receiving mode when you’re done.
Downloading/Uploading Files
Considering that you have a Tor browser installed, you just need to hit the OnionShare address in the URL address, confirm log in (press OK) and here’s how it should look like:
Similarly, when you get an address to upload files, it should look like this:
Publish Onion Sites
You can simply add the files to host a static onion website if you want. Of course, just because it’s peer-to-peer connection, it’ll be very slow to load up while it transfers every file from your computer.
I tried using a free template to test it out and it works great (but very slow). So, it may depend on your network connection.
Wrapping Up
In addition to all the features mentioned above, you can also use the command line and opt for some advanced tweaks if needed.
OnionShare is indeed an impressive open-source tool that makes it easy to share files anonymously without needing any special tweaks.
Have you tried OnionShare yet? Is there something similar to this that you know of? Let me know in the comments below!