Little-t-tor

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.

  1. Configure Tor package repository

Enable the Tor Project APT repository by following the instructions.

  1. Package installation

    # apt install tor

Fedora

  1. Configure Tor Package repository

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

  1. Package installation

    # dnf install tor

FreeBSD

  1. Package installation

    # pkg install tor

OpenBSD

  1. Package installation

    # pkg_add tor

macOS

  1. Install a package manager

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

Чтобы установить Homebrew, следуйте инструкциям на brew.sh.

Чтобы установить Macports, следуйте инструкциям на macports.org/install.php.

  1. 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

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

DragonFlyBSD

  1. 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

1.1 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 (mirror-master.dragonflybsd.org);
  • Wolfpond (pkg.wolfpond.org).

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
  1. Package installation

Install the tor package:

# pkg install tor

NetBSD

  1. 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=http://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/$(uname -m)/$(uname -r)/All" > /etc/pkg_install.conf
  1. 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

  1. 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).

  1. Install Tor

    tar -xzf tor-0.4.3.6.tar.gz; cd tor-0.4.3.6

    ./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.

Внимание: Эти инструкции для проверки исходного кода Tor. Пожалуйста, следуйте правильным инструкциям, чтобы проверить подпись Tor Browser.

Цифровая подпись подтверждает, что конкретный файл был создан его разработчиками и не был никем модифицирован. Ниже мы объясняем, почему это важно, и как убедиться, что загружаемый вами исходный код Tor создан нами и не был изменен каким-либо злоумышленником.

Каждый файл на нашей странице загрузки сопровождается двумя файлами с пометками "Контрольная сумма" и "Подпись" с тем же именем, что и у пакета, и расширением ".sha256sum" и ".sha256sum.asc" соответственно.

Файл .asc проверит, что файл .sha256sum (содержащий контрольную сумму пакета) не был подделан. После проверки подписи (см. ниже о том, как это сделать), целостность пакета может быть проверена с помощью:

$ sha256sum -c *.sha256sum

Эти файлы позволяют вам удостовериться, что загруженный вами файл является именно тем, который вы должны были получить. Это зависит от веб-браузера, но обычно вы можете скачать этот файл, щелкнув правой кнопкой мыши ссылки «Подп.» и «Контрольная сумма» и выбрав опцию «Сохранить файл как».

Например, tor-0.4.6.7.tar.gz сопровождается tor-0.4.6.7.tar.gz.sha256sum.asc. Эти имена файлов выбраны для примера. Они не будут в точности совпадать с именами файлов, которые скачиваете вы.

Давайте посмотрим, как проверить цифровую подпись скачанного файла в разных операционных системах. Пожалуйста, учтите, что подпись датируется тем числом, когда файл был подписан. Для каждого нового файла, размещенного на сайте, существует отдельная подпись со своей датой. Если вы уже проверили подпись, на даты можно не обращать внимание.

Установка GnuPG

Для проверки подписей сначала нужно установить программу GnuPG.

Для пользователей Windows:

Если вы пользователь Windows, скачайте Gpg4win и запустите программу установки.

Чтобы проверить подпись, понадобится набрать несколько команд в командной строке (cmd.exe).

Для пользователей macOS:

Если вы пользуетесь macOS, можете установить GPGTools.

Чтобы проверить подпись, понадобится набрать несколько команд в Терминале (найдите его среди приложений).

Для пользователей GNU/Linux:

Если вы пользуетесь GNU/Linux, вероятно, программа GnuPG у вас уже установлена. Большинство сборок GNU/Linux включают GnuPG по умолчанию.

Чтобы проверить подпись, вам нужно будет ввести несколько команд в терминале. Как это делается, будет зависеть от вашего дистрибутива.

Получение ключа разработчиков Tor

Следующие ключи могут подписывать архивный файл. Не ожидайте их всех, это может варьироваться в зависимости от того, кто доступен для выпуска.

Вы можете получить ключ по ссылкам, указанным выше, или с помощью:

$ gpg --auto-key-locate nodefault,wkd --locate-keys ahf@torproject.org
$ gpg --auto-key-locate nodefault,wkd --locate-keys dgoulet@torproject.org
$ gpg --auto-key-locate nodefault,wkd --locate-keys nickm@torproject.org

Должно отобразиться что-то такое (для nickm):

gpg: key FE43009C4607B1FB: public key "Nick Mathewson <nickm@torproject.org>" imported
gpg: Total number processed: 1
gpg:               imported: 1
pub   rsa4096 2016-09-21 [C] [expires: 2025-10-04]
      2133BC600AB133E1D826D173FE43009C4607B1FB
uid           [ unknown] Nick Mathewson <nickm@torproject.org>
sub   rsa4096 2016-09-23 [S] [expires: 2025-10-04]
sub   rsa4096 2016-09-23 [E] [expires: 2025-10-04]

Если вы получили сообщение об ошибке, что-то пошло не так - вы не сможете продолжить, пока не выясните, что именно не так. Вместо этого можно импортировать ключ с помощью раздела Временное решение (с использованием открытого ключа).

После того, как ключ импортирован, вы можете сохранить его в файл (для идентификации служит отпечаток):

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

В результате ключ будет сохранён в файле в папке ./tor.keyring, то есть, в текущей папке. Если после выполнения этой команды не появится ./tor.keyring, значит, что-то пошло не так. Вы не сможете продолжить, пока не выясните причину.

Проверка подписи

Чтобы проверить подпись скачанного вами пакета, потребуется загрузить соответствующий файл подписи .sha256sum.asc и сам файл .sha256sum, а также проверить его с помощью команды, которая попросит GnuPG проверить скачанный файл.

В следующих примерах мы предполагаем, что вы уже скачали эти два файла (сам пакет и подпись) в папку "Загрузки" ("Downloads"). Внимание: эти команды используют в качестве имен файлов примеры. Ваши файлы будут иметь другие имена (ваша версия Tor Browser будет новее, и, вероятно, вы выберете русский язык).

Для пользователей Windows:

gpgv --keyring .\tor.keyring Downloads\tor-0.4.6.10.tar.gz.sha256sum.asc Downloads\tor-0.4.6.10.tar.gz.sha256sum

Для пользователей macOS:

gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum.asc ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum

Для пользователей BSD/Linux:

gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum.asc ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum

Результат использования команды должен дать что-то вроде этого (в зависимости от того, каким ключом она была подписана):

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

Если увидите сообщение об ошибке вроде "Нет такого файла или папки", значит, что-то пошло не так на одном из предыдущих шагов. Другая причина: вы использовали названия файлов из примеров (ваши реальные названия другие).

Подробнее о GnuPG можно почитать здесь.

Проверка контрольной суммы

Теперь, когда мы проверили подписи контрольной суммы, нам нужно проверить целостность пакета.

Для пользователей Windows:

certUtil -hashfile tor-0.4.6.10.tar.gz.sha256sum SHA256

Для пользователей macOS:

shasum -a 256 tor-0.4.6.10.tar.gz.sha256sum

Для пользователей BSD/Linux:

sha256sum -c tor-0.4.6.10.tar.gz.sha256sum