Skip to content

Private and self-hosted file sharing over the Tor network written in golang

License

Notifications You must be signed in to change notification settings

R4yGM/garlicshare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

garlicshare

garlicshare is an open source tool that lets you securely and anonymously share files on a hosted onion service using the Tor network.

Usage

garlicshare is very simple to use, you can view the program help with the -h or --help option

Usage:
  garlicshare upload [flags]

Flags:
  -h, --help          help for upload
  -k, --key string    Password to download the files
  -p, --path string   Path

Global Flags:
      --config string   config file (default is $HOME/.GarlicShare.yaml)

webpage :

webpage protected with a key :

Dependencies

garlicshare requires at least Tor >= 0.3.5

https://www.torproject.org/it/download/

Installation

garlicshare can be installed in different ways:

Go Packages

throught Golang Packages (golang package manager)

go get github.com/R4yGM/garlicshare

this will work for every platform

Docker

if you don't have docker installed you can follow their guide

first of all you have to pull the docker image (only 12.72 MB) from the docker registry, you can see it here, if you don't want to pull the image you can also clone the repository and then build the image from the Dockerfile

docker pull r4yan/garlicshare:latest

if you don't want to pull the image you can download or copy the dorkscout Dockerfile that can be found here and then build the image from the Dockerfile

then if you want to launch the container you have to first create a volume that contains the files you want to share

docker volume create --name garlicshare_files

then copy the files you want to share in the volume data folder /var/lib/docker/volumes/garlicshare_files/_data

cp file /var/lib/docker/volumes/garlicshare_files/_data

a then you can start sharing by running :

docker run -v garlicshare_files:/garlicshare r4yan/garlicshare <options>

replace the <options> with the options/arguments you want to give to garlicshare, example :

docker run -v garlicshare_files:/garlicshare r4yan/garlicshare upload -p garlicshare 

the path must be the same as the volume binding path! read more here

this will work for every platform