Attention: These instructions are meant for installing tor the network daemon i.e. little-t-tor. For instructions on installing Tor Browser, refer to Tor Browser user manual.

Admin access: To install Tor you need root privileges. Below all commands that need to be run as root user like apt and dpkg are prepended with '#', while commands to be run as user with '$' resembling the standard prompt in a terminal. To open a root terminal you have several options: sudo su, or sudo -i, or su -i. Note that sudo asks for your user password, while su expects the root password of your system.

Debian / Ubuntu

Do not use the packages in Ubuntu's universe. In the past they have not reliably been updated. That means you could be missing stability and security fixes.

  • Configure Tor package repository

Enable the Tor Project APT repository by following the instructions.

  • Package installation

# apt install tor


  • Configure Tor Package repository

Enable the Tor Project's RPM package repository by following the instructions.

  • Package installation

# dnf install tor


  • Package installation

# pkg install tor


  • Package installation

# pkg_add tor


  • Install a package manager

There are two package manager on OS X: Homebrew and Macports. You can use the package manager of your choice.

To install Homebrew follow the instructions on

To install Macports follow the instructions on

  • Package installation

If you are using Homebrew in a Terminal window, run:

# brew install tor

If you are using Macports in a Terminal window, run:

$ sudo port install tor

Arch Linux

  • To install the tor package on Arch Linux, run:
# pacman -Syu tor


  • Bootstrap pkg

DragonFlyBSD's daily snapshots and releases (starting with 3.4) come with pkg already installed. Upgrades from earlier releases, however, will not have it. If pkg is missing on the system for any reason, it can be quickly bootstrapped without having to build it from source or even having DPorts installed:

# cd /usr
# make pkg-bootstrap
# rehash
# pkg-static install -y pkg
# rehash
  • Recommended steps to setup pkg

Here, it will be similar to what we have on a FreeBSD system, and we are going to use HTTPS to fetch our packages, and updates - so here we also need an extra package to help us out (ca_root_nss).

Installing the ca_root_nss package:

# pkg install ca_root_nss

For fresh installations, the file /usr/local/etc/pkg/repos/df-latest.conf.sample is copied to /usr/local/etc/pkg/repos/df-latest. The files ending in the ".sample" extension are ignored; pkg(8) only reads files that end in ".conf" and it will read as many as it finds.

DragonflyBSD has 2 packages repositories:

  • Avalon (;
  • Wolfpond (

We can simply edit the URL used to point out the repositories on /usr/local/etc/pkg/repos/df-latest and that's it! Remember to use pkg+https:// for Avalon.

After applying all these changes, we update the packages list again and try to check if there's already a new update to apply:

# pkg update -f
# pkg upgrade -y -f
  • Package installation

Installa il pacchetto tor:

# pkg install tor


  • Setup pkg_add

Modern versions of the NetBSD operating system can be set to use pkgin, which is a piece of software aimed to be like apt or yum for managing pkgsrc binary packages. We are not convering its setup here, and opt to use plain pkg_add instead.

# echo "PKG_PATH=$(uname -m)/$(uname -r)/All" > /etc/pkg_install.conf
  • Package installation

Install tor NetBSD's package:

# pkg_add tor

Void Linux

To install the tor package on Void Linux, please run:

# xbps-install -S tor

Installing Tor from source

  • Download latest release and dependencies

The latest release of Tor can be found on the download page.

If you're building from source, first install libevent, and make sure you have openssl and zlib (including the -devel packages if applicable).

  • Install Tor

    tar -xzf tor-; cd tor-

    ./configure && make

Now you can run tor as src/app/tor (0.4.3.x and later), or you can run make install (as root if necessary) to install it into /usr/local/, and then you can start it just by running tor.

Attention: These instructions are to verify the tor source code. Please follow the right instructions to verify Tor Browser's signature.

La firma digitale è un processo che assicura che un certo pacchetto sia stato creato dai suoi sviluppatori e che non sia stato manomesso. Below we explain why it is important and how to verify that the tor source code you download is the one we have created and has not been modified by some attacker.

Each file on our download page is accompanied by two files which are labelled "checksum" and "sig" with the same name as the package and the extension ".sha256sum" and ".sha256sum.asc" respectively.

The .asc file will verify that the .sha256sum file (containing the checksum of the package) has not been tampered with. Once the signature has been validated (see below on how to do it), the package integrity can be validated with:

$ sha256sum -c *.sha256sum

These files allow you to verify the file you've downloaded is exactly the one that we intended you to get. This will vary by web browser, but generally you can download this file by right-clicking the "sig" and "checksum" link and selecting the "save file as" option.

For example, tor- is accompanied by tor- Questi sono solo esempi di nomi di file e non corrisponderanno esattamente a quelli dei file che scaricherai.

Ora ti mostriamo come puoi verificare la firma digitale del file scaricato nei vari sistemi operativi. Ti informiamo che la firma è datata a quando il pacchetto è stato firmato. Pertanto, ogni volta che un nuovo file viene caricato una nuova firma viene generata con una data diversa. Finché hai verificato la tua firma non dovresti preoccuparti che la data riportata potrebbe cambiare.

Installazione di GnuPG

Prima di tutto hai bisogno di installare GnuPG prima di poter verificare le firme.

Per gli utenti Windows:

Se utilizzi Windows, scarica Gpg4win e esegui l'installer.

Per verificare il file è necessario eseguire comandi da terminale cmd.exe da windows.

Per gli utenti macOS:

Se stai usando macOS, puoi installare GPGTools.

Per verificare li file dovresti necessitare della riga di comando (Applications-Utility).

Per gli utenti GNU/Linux:

Se stai usando GNU/Linux probabilmente hai già GnuPG nel tuo sistema, molte distribuzioni lo hanno preinstallato.

In order to verify the signature you will need to type a few commands in a terminal window. How to do this will vary depending on your distribution.

Recuperare la chiave per sviluppatori Tor

The following keys can sign the tarball. Don't expect them all, it can vary depending on who is available to make the release.

You can fetch the key with the links provided above or with:

$ gpg --auto-key-locate nodefault,wkd --locate-keys
$ gpg --auto-key-locate nodefault,wkd --locate-keys
$ gpg --auto-key-locate nodefault,wkd --locate-keys

This should show you something like (for nickm):

gpg: key FE43009C4607B1FB: public key "Nick Mathewson <>" imported
gpg: Numero totale proccessati: 1
gpg:                       importati: 1
pub   rsa4096 2016-09-21 [C] [expires: 2025-10-04]
uid           [ unknown] Nick Mathewson <>
sub   rsa4096 2016-09-23 [S] [expires: 2025-10-04]
sub   rsa4096 2016-09-23 [E] [expires: 2025-10-04]

If you get an error message, something has gone wrong and you cannot continue until you've figured out why this didn't work. You might be able to import the key using the Workaround (using a public key) section instead.

Dopo aver importato la chiave, puoi salvare su un file (identificandola dalla sua impronta qui):

$ gpg --output ./tor.keyring --export 0x2133BC600AB133E1D826D173FE43009C4607B1FB

This command results in the key being saved to a file found at the path ./tor.keyring, i.e. in the current directory. Se ./tor.keyring non esiste una volta eseguito questo comando, qualcosa è andato storto e non puoi continuare finchè non hai capito cosa non ha funzionato.

Verificare la firma

To verify the signature of the package you downloaded, you will need to download the corresponding .sha256sum.asc signature file and the .sha256sum file itself, and verify it with a command that asks GnuPG to verify the file that you downloaded.

L'esempio presume che hai scaricato due file dalla tua cartella "Downloads". Nota che questi comandi usano esempi di nomi di file e i tuoi saranno diversi: avrai scaricato una versione diversa dalla 9.0 e potresti non aver scelto la versione English (en-US).

Per gli utenti Windows:

gpgv --keyring .\tor.keyring Downloads\tor- Downloads\tor-

Per gli utenti macOS:

gpgv --keyring ./tor.keyring ~/Downloads/tor- ~/Downloads/tor-

For BSD/Linux users:

gpgv --keyring ./tor.keyring ~/Downloads/tor- ~/Downloads/tor-

The result of the command should produce something like this (depending on which key signed it):

gpgv: Signature made Mon 16 Aug 2021 04:44:27 PM -03
gpgv:                using RSA key 7A02B3521DC75C542BA015456AFEE6D49E92B601
gpgv: Good signature from "Nick Mathewson <>"

Se ricevi messaggi di errore che contengono 'Nessun file o directory', qualcosa è andato storto in uno dei passi precedenti, o hai dimenticato che questi comandi utilizzano esempi di nomi di file, e i tuoi saranno diversi.

Potresti anche voler saperne di più riguardo GnuPG.

Verifying checksum

Now that we validated the signatures of the checksum, we need to verify the integrity of the package.

Per gli utenti Windows:

certUtil -hashfile tor- SHA256

Per gli utenti macOS:

shasum -a 256 tor-

For BSD/Linux users:

sha256sum -c tor-