Tor Non-Exit Relay installieren (Debian)
Diese Anleitung bezieht sich auf die Tor-Version 0.2.5.10
Voraussetzungen
- Linux: Debian Wheezy → Für Raspbian / RaspberryPi sollte man das Raspbian-Repository verwenden
- Portweiterleitungen
- ORPort 9001 (Standard) oder 443 (Besser, da für mehr User erreichbar)
- DirPort 9030 (Standard) oder 80 (Besser, da für mehr User erreichbar)
- Superuser (Debian)
Betriebssystem vorbereiten
SSH-Zugriff ohne Passwort
Siehe SSH ohne Passwort
IPTables einrichten
# cd /etc # wget <iptables rules file> # chmod 600 iptables.rules # nano iptables.test.rules # update at least SSH port # iptables-restore < iptables.rules
Prüfen, ob SSH Zugriff noch funktioniert.
IP-Tables Konfiguration beim Netzwerk Startup laden:
# iptables-save > iptables.rules # chmod 600 iptables.rules # cd /etc/network/if-pre-up.d/ # wget <iptables load file> # chmod +x iptables
TOR Software
Installation
Zunächst Quellen zur Quellenliste hinzufügen. Dazu Quellenliste öffnen:
nano /etc/apt/sources.list
Folgende Zeile einfügen:
#deb http://deb.torproject.org/torproject.org <DISTRIBUTION> main deb http://deb.torproject.org/torproject.org wheezy main
GPG-Key hinzufügen:
# gpg --keyserver keys.gnupg.net --recv 886DDD89 # gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -
Quellenliste aktualisieren:
# apt-get update
Programm installieren, welches den Signing-Key aktuell hält
# apt-get install deb.torproject.org-keyring
Tor installieren:
# apt-get install tor tor-arm tor-geoipdb
Service anhalten und Konfig-Dateien entfernen
# /etc/init.d/tor stop # service tor stop # Alternative # service tor status-all # cd /etc/tor # rm *
Konfiguration
Beispiel für eine einfache Konfiguration eines Tor-Knotens mit folgenden Eigenschaften:
- Non-Exit-Node
- Standardports
Config-Datei holen:
# wget <torrc-datei>
oder bearbeiten:
nano /etc/tor/torrc
ORPort 9001 DirPort 9030 SocksPort 0 SocksPolicy reject * ExitPolicy reject *:* RunAsDaemon 1 AvoidDiskWrites 1 Log notice file /var/log/tor/notices.log # HeartbeatPeriod 7200 DataDirectory /var/lib/tor Nickname noname ContactInfo Unknown User <unknownmail AT domain dot TLD> #BandwidthRate 750 KB #BandwidthBurst 1000 KB MaxAdvertisedBandwidth 750 KB RelayBandwidthRate 750 KB RelayBandwidthBurst 1000 KB
Optional bei Tor Weather anmelden.
Statistiken
Installation
# apt-get install lighttpd vnstat vnstati # service lighttpd stop
lighttpd Konfiguration anpassen:
# cd /etc/lighttpd/ # cp lighttpd.conf lighttpd.dist.conf # wget <neue lighttpd.conf> # cd /var/www # rm -r html # wget <heue index.html> # chown www-data:www-data index.html
Optionale Tätigkeiten:
# vnstat -u -i eth0 # Datenbank manuell initial aktualisieren # nano /etc/vnstat # Zeile SaveInterval auf 3 setzen # cd /var/lib/vnstat # chown vnstat:vnstat eth0 # chown vnstat:vnstat .eth0
Aktualisierung der Statistik-Grafiken:
# cd /var/www # touch vnstat_s.png vnstat_h.png vnstat_d.png vnstat_m.png # chown www-data:www-data vnstat*.* # cd /etc/cron.d # wget <vnstati update-datei>
Neustarten:
# service lighttpd start
Verschiedenes
Optimierungen
ORPort 443 DirPort 9030 # oder: DirPort 80 #Wenn DirPort auf Default bleibt (=0), dann ist er kein Directory Server # oder: DirPort 80 NoListen # oder: DirPort 127.0.0.1:9091 NoAdvertise DirPortFrontPage /etc/tor/tor-notice.html PortForwarding 1 #UPnP und NAT-PMP aktivieren # (Funzt scheinbar noch nicht, und ist eine Sicherheitslücke) ContactInfo Unknown User <unknownmail AT domain dot TLD>
LOG-Dateien
ls /var/log/tor
nano /var/log/tor/notices.log
Fingerprint-Datei
Inhalt sollte gesichert werden, um spätere Tor-Neuinstallationen als gleichen Tor-Router erscheinen zu lassen:
nano /var/lib/tor/fingerprint
Neue Fingerprintdatei anlegen:
bash touch /var/lib/tor/fingerprint nano /var/lib/tor/fingerprint
Private Key für Tor-Relay
nano /var/lib/tor/keys/secret_id_key
(Muss nicht unbedingt aufgehoben werden? / Wird automatisch neu generiert?)
Dienstverwaltung
service tor start
service tor status
service tor stop
service --status-all
Tor-Autostart einrichten
update-rc.d tor enable
Versionsnummer von Tor ausgeben
Entweder mit dem Debian Packet Manager:
# dpkg -l tor
Oder in der Log-Datei von Tor nachgucken:
# nano /var/log/tor/notices.log
In der 1. Zeile steht die Versionnummer, z. B.:
Jan xx xx:xx:xx.000 [notice] Tor 0.2.x.x (git-xxxxxxxxxxxx) opening log file.