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.

To install Homebrew follow the instructions on brew.sh.

To install Macports follow the instructions on 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.

Dikkat: Bu yönergeler tor kaynak kodunu doğrulamak içindir. Lütfen Tor Browser imzasını doğrulamak için doğru yönergeleri izleyin.

Bir sayısal imza, bir paketin gerçekten özgün geliştiricileri tarafından üretildiğini ve üzerinde sonradan bir değişiklik yapılmadığını anlamak için kullanılır. Aşağıda bunun neden önemli olduğunu ve indirdiğiniz tor kaynak kodunun bizim oluşturduğumuz kod olduğunu ve bazı saldırganlar tarafından değiştirilmediğinin nasıl doğrulanacağını açıklıyoruz.

İndirme sayfamızdaki her dosyanın yanında, paketle aynı ada ve ".sha256sum" ve ".sha256sum.asc" uzantısına sahip "sağlama" ve "imza" etiketli iki dosya bulunur.

.asc dosyası .sha256sum dosyasının (paketin sağlamasını) kurcalanmamış olduğunu doğrular. İmza doğrulandığında (nasıl yapacağınızı öğrenmek için aşağıda bakın), paketin bütünlüğü şununla denetlenebilir:

$ sha256sum -c *.sha256sum

Bu dosyalar indirdiğiniz dosyanın tam olarak almanızı istediğimiz dosya olduğunu doğrulamanızı sağlar. Bu işlem tarayıcınıza göre değişebilir. Ancak genellikle bu dosyayı "imza" ve "sağlama" bağlantısına sağ tıklayıp "farklı kaydet" üzerine tıklayarak indirebilirsiniz.

Örneğin, tor-0.4.6.7.tar.gz dosyasının yanında tor-0.4.6.7.tar.gz.sha256sum.asc dosyası bulunur. Bunlar örnek dosya adlarıdır ve indirdiğiniz dosya adlarıyla birebir aynı olmaz.

Şimdi size, indirdiğiniz bir dosyanın sayısal imzasını farklı işletim sistemleri üzerinde nasıl doğrulayabileceğinizi anlatacağız. İmza dosyası tarihinin, paketin imzalandığı tarih ile aynı olduğunu görebilirsiniz. Yani her yeni paket dosyası yüklendiğinde, farklı bir tarihi olan yeni bir imza oluşturulur. İmzayı doğruladığınız sürece, belirtilen tarihin değişmesi önemli değildir.

GnuPG kurmak

İmzaları doğrulayabilmeniz için öncelikle GnuPG uygulaması kurulmuş olmalıdır.

Windows kullanıcıları için:

Windows kullanıyorsanız, Gpg4win uygulamasını indirip kurucuyu çalıştırın.

İmzayı doğrulamak için cmd.exe windows komut satırında bir kaç komut yazmanız gerekir.

macOS kullanıcıları için:

macOS kullanıyorsanız GPGTools uygulamasını kurabilirsiniz.

İmzayı doğrulamak için Terminal ("Uygulamalar altında") üzerinden bir kaç komut yazmanız gerekir.

GNU/Linux kullanıcıları için:

GNU/Linux kullanıyorsanız, çoğu GNU/Linux dağıtımında önceden kurulmuş olduğundan büyük olasılıkla sisteminizde GnuPG vardır.

İmzayı doğrulamak için bir terminal penceresinden birkaç komut yazmanız gerekecek. Bunun nasıl yapılacağı, dağıtımınıza göre değişir.

Tor geliştiricilerinin anahtarlarını almak

Aşağıdaki anahtarlar tarball paketini imzalayabilir. Hepsinin yapmasını beklemeyin, yayımı yapmak için kimin uygun olduğuna bağlı olarak değişebilir.

Anahtarı yukarıda verilen bağlantılarla ya da şu komutlarla alabilirsiniz:

$ 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

Bunun sonucunda şöyle bir şey görmelisiniz (nickm için):

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]

Bir sorun çıktığı hakkında bir hata iletisi görürseniz, sorunun ne olduğunu anlayana kadar sonraki adıma geçemezsiniz. Bunun yerine Geçici çözüm (herkese açık anahtar kullanarak) bölümünü kullanarak anahtarı içe aktarabilirsiniz.

Anahtarı içe aktardıktan sonra bir dosyaya kaydedebilirsiniz (buradaki parmak izi ile tanımlayarak):

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

Bu komut sonucunda anahtar, örneğin geçerli klasör içinde ./tor.keyring yolunda bulunan bir dosyaya kaydedilir. Bu komutu yürüttükten sonra ./tor.keyring klasörü yoksa, bir şeyler ters gitmiş demektir ve sorunu anlayana kadar ilerleyemezsiniz.

İmzayı doğrulamak

İndirdiğiniz paketin imzasını doğrulamak için kurucu dosyasının yanında ilgili .sha256sum..asc imza dosyasını ve .sha256sum dosyasını da indirmeniz gerekir. Ardından bir GnuPG komutu yazarak indirdiğiniz dosyanın imzasını doğrulayabilirsiniz.

Aşağıdaki örnek komutlar bu iki dosyayı Downloads klasörüne indirdiğinizi varsayarak yazılmıştır. Bu komutların örnek dosya adları kullandığını ve sizin dosyanızın farklı olabileceğini unutmayın.9.0 sürümü yerine başka bir sürümü ya da İngilizce (en-US) yerine başka bir dili seçmiş olabilirsiniz.

Windows kullanıcıları için:

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

macOS kullanıcıları için:

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 kullanıcıları için:

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

Komutun sonucunda şöyle bir şey görmelisiniz hangi anahtar ile imzalandığına bağlı olarak):

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>"

'Dosya ya da klasör bulunamadı' şeklinde hata iletileri alırsanız ya önceki adımlarda bir şeyler yanlıştır ya da örnek dosya adlarını sizin durumunuza uyan dosya adları ile değiştirmemişsinizdir.

GnuPG hakkında ayrıntılı bilgi almak için buraya tıklayabilirsiniz.

Sağlamayı doğrulamak

Şimdi sağlama toplamının imzalarını doğruladığımıza göre, paketin bütünlüğünü doğrulamamız gerekiyor.

Windows kullanıcıları için:

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

macOS kullanıcıları için:

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

BSD/Linux kullanıcıları için:

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