ubuntuusers.de

Alle Verbindungen automatisch TOR - ifizieren?

Status: Gelöst | Ubuntu-Version: Ubuntu 12.04 (Precise Pangolin)
Antworten |

tux-puzzle

Anmeldungsdatum:
26. August 2009

Beiträge: 464

Hallo

Verwende seit längerem TOR und bin sehr zufrieden. Unter der Android-Version gibts eine Option, sämtliche Netzwerkverbindungen durch TOR zu routen.

Das man einzelne Anwendungen mit ein paar Tricks torifizieren kann, weis ich. Das ist aber mühsam und man übersieht sicher jede Menge Hintergrundverbindungen.

Gibts da eine EINFACHE Lösung? Am Besten unter Weiterverwendung von Ubuntu ?!

Vielen Dank!

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Wohnort: Germany

indem man mit einigen Firewall-Regeln ausgehende Verbindungen nur über Tor zulässt.

Wie ich die Dokus verstehe, muss man jedes Programm auf die lokale IP mit einem festen Port wie 8123 konfigurieren - vergisst man das oder umgeht das Programm das, würde der Traffic außerhalb TOR laufen. Vielleicht hat Android da bessere Möglichkeiten oder knippst auch nur die Ports bei beliebten Programmen oder installierten/ gestarteten auf localhost:8123.

Du kannst es aber mit obiger Anleitung verhindern, ferner mit einer VM. Desweiteren musst du DNS-Leaking verhindern. Für zahlreiche Programme ist die Konfiguration hier erklärt: Tor/Programme zur Nutzung von Tor konfigurieren.

Eventuell aber kannst du den nötigen Proxyserver anweisen, dass jeglicher Traffic jeglicher Ports über ihn und damit über TOR läuft. Dazu musst du dir dessen Wikiseite und man anschauen. Das war meine erste Idee und müsste eigentlich irgendwie gehn. Beim ersten, erneuten Reindenken müsste es doch so aussehen:

1. Programm → 2. Proxy 127.0.0.1:8123 → 3. TOR 127.0.0.1:9050.

3. trägt man fix im Proxy ein. 2. wirst du in jedem Programm eintragen müssen. Da sehe ich jetzt keine Möglichkeit, IP oder Port wegzulassen. 2. wird auch im Proxy konfiguriert (hier: Polipo). Um das zu erreichen, was wir wollen, brauchen wir wahrscheinlich eine Umleitung "jeglichen" Traffics von innen auf den Proxy (2.). Also Firewallregeln per iptables.

In der Richtung i.V.m. Tor würd ich dann mal eine Suchmaschine ausquetschen und die Doku anschaun (Manpage).

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Wohnort: Germany

Recht aufwendig sieht mir das aus:

https://jamielinux.com/pub/2013/iptables.tor.txt

Eine übersichtlichere Minimalvariante ist das hier:

http://ubuntuforums.org/showthread.php?t=1479603

Hab aber noch nicht weiter reinlesen können, bei der Minimalvariante versuche ich es zumindest, die Grundgedanken zu verstehen.

In 100% Sicherheit würde ich mich nicht wiegen, aber die Absicherung erfolgt ja über die anderen Regeln aus dem anderen Link im Vorpost - hier dürfte es ja eher drum gehn, dass vielleicht mal was nicht ankommt, wäre also verkraftbar.

Ist auf jeden Fall nicht GANZ einfach, da gedanklich mitzukommen. 😉

Edit: So geht's:

This tells iptables to transparently redirect any traffic destined for the Tor virtual address space through the Tor transport port you designated above.

https://trac.torproject.org/projects/tor/wiki/doc/TransparentProxy#TransparentlyDoingDNSandRoutingfor.onionTraffic

Obiges war nochmal dasselbe wie im Wikilink, also nur die Sperre. Aber routen muss man den Rest ja trotzdem alles über TOR und das steht nun hier. Ist auch im Wiki verlinkt.

duesentriebchen

Avatar von duesentriebchen

Anmeldungsdatum:
10. Februar 2012

Beiträge: 713

Wohnort: Im Inntal

Hallo tux-puzzle

Es gibt eine recht bequeme Variante sämtlichen TCP Verkehr und die DNS Anfragen durch TOR zu leiten.
Das nennt sich dann Transparenter Proxy, ist einmal einzurichten und bei jedem Systemstart mit zu starten.
Bis ich den Wiki Artikel endlich geschrieben habe, darf ich dir das empfehlen.

Beste Grüße,
Düse.

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4678

tux-puzzle schrieb:

Verwende seit längerem TOR und bin sehr zufrieden. Unter der Android-Version gibts eine Option, sämtliche Netzwerkverbindungen durch TOR zu routen.

Das man einzelne Anwendungen mit ein paar Tricks torifizieren kann, weis ich. Das ist aber mühsam und man übersieht sicher jede Menge Hintergrundverbindungen.

Gibts da eine EINFACHE Lösung? Am Besten unter Weiterverwendung von Ubuntu ?!

Die einfachste Lösung ist es, auf dem Router TOR laufen zu lassen. So können alle Rechner die über den Router verbunden sind TOR nutzen, ohne das man gesondert auf jedem Rechner TOR installieren muss.

wenex

Avatar von wenex

Anmeldungsdatum:
13. Dezember 2009

Beiträge: 414

Wohnort: Vienna

kann man nicht in den Netzwerkeinstellungen einen Proxy manuel einstellen, systemweit? und in den Startprogrammen Tor hinzufügen..?

duesentriebchen

Avatar von duesentriebchen

Anmeldungsdatum:
10. Februar 2012

Beiträge: 713

Wohnort: Im Inntal

Hallo wenex

Grundsätzlich ja, aber die einzelnen Dienste müssen dann auch mit einer Proxyfunktion compiliert sein um die Systemweite Direktive zu nutzen.
Ich darf den Transparenten Proxy von TOR empfehlen. Da läuft dann sämtlicher TCP Verkehr durch.

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Wohnort: Germany

Sozusagen ein Zwangsproxy, wie man das früher von z.B. Freenet-Einwahlen vielleicht selber kannte: Da wurde als erste Seite immer erst die Freenet-Startseite geladen. Klappt das nicht auch mit einem normalen (transparenten) Proxy? Oder muss es der von TOR sein?

duesentriebchen

Avatar von duesentriebchen

Anmeldungsdatum:
10. Februar 2012

Beiträge: 713

Wohnort: Im Inntal

tux-puzzle schrieb:

Hallo

Verwende seit längerem TOR und bin sehr zufrieden. Unter der Android-Version gibts eine Option, sämtliche Netzwerkverbindungen durch TOR zu routen.

Das man einzelne Anwendungen mit ein paar Tricks torifizieren kann, weis ich. Das ist aber mühsam und man übersieht sicher jede Menge Hintergrundverbindungen.

Gibts da eine EINFACHE Lösung? Am Besten unter Weiterverwendung von Ubuntu ?!

Vielen Dank!

Claro, aber der Tux-puzzle möchte all seine Verbindungen TORifizieren.
Das geht entweder über torify, etwas unbequem zur Nutzung, oder über den Transparent Proxy hier und hier.

tux-puzzle

(Themenstarter)

Anmeldungsdatum:
26. August 2009

Beiträge: 464

Hallo Duesentriebchen und die Anderen

Erstmal vielen Dank für die Antworten und sorry, dass ich nicht reagiert habe. Hatte nicht kapiert, dass da noch was kommt.

duesentriebchen schrieb:

tux-puzzle schrieb:

Verwende seit längerem TOR und bin sehr zufrieden. Unter der Android-Version gibts eine Option, sämtliche Netzwerkverbindungen durch TOR zu routen.

...

Gibts da eine EINFACHE Lösung? Am Besten unter Weiterverwendung von Ubuntu ?!

unbequem zur Nutzung, oder über den Transparent Proxy hier und hier.

Also gut, Transparent Proxy ist der Weg (macht TOR auf meinem Smartphone ja auch). Die Anleitung hier uebersteigt etwas mein Verständnis. hier ist mir nicht klar, WELCHER Abschnitt meinem Szenario entspricht (ALLE Netzwerkverbindungen updates, mail, crashmeldungen, surfen, Timeserver etc- gehen durch TOR) "Transparently Doing DNS and Routing for .onion Traffic" kanns wohl nicht sein, das ich ja nicht nur .onion Traffic durchschleusen möchte.

Vielen Dank für die Hilfe

Bye und schoenen Sontag

Tuxpuzzle

duesentriebchen

Avatar von duesentriebchen

Anmeldungsdatum:
10. Februar 2012

Beiträge: 713

Wohnort: Im Inntal

Hallo tux-puzzle

Okidoki, dann stell ich dir jetzt mal paar Fragen und dann konfigurieren wir das gemeinsam.

1.) Welche Schnittstelle geht ins WAN (eth0, eth1, ppp0)→ Internet?
2.) Welche Schnittstellen hast du im LAN (wlan0, eth0, eth1 z.B.) ?
3.) Möchtest du nur deinen eigenen Verkehr ins TOR-Netz leiten?
4.) Möchtest du als Relay fungieren?
5.) Möchtest du als ExitRelay fungieren?
6.) Hast du Diesnte laufen, die öffentlich erreichbar sein müssen (VPN, http, ftp, smtp, ...)?

jake1776

Anmeldungsdatum:
10. März 2012

Beiträge: 86

duesentriebchen schrieb:

Es gibt eine recht bequeme Variante sämtlichen TCP Verkehr und die DNS Anfragen durch TOR zu leiten.
Das nennt sich dann Transparenter Proxy, ist einmal einzurichten und bei jedem Systemstart mit zu starten.
Bis ich den Wiki Artikel endlich geschrieben habe, darf ich dir das empfehlen.

Hallo, Unter VM basierende Anonymisierung (Abschnitt „Variante-2-transparenter-Proxy-als-Gateway“) ist der Transparenter Proxy schon erklärt.

LG Jake

duesentriebchen

Avatar von duesentriebchen

Anmeldungsdatum:
10. Februar 2012

Beiträge: 713

Wohnort: Im Inntal

Hallo jake1776

Jope, aber die Schnittstellen (LAN) sind hier nicht mit einbezogen.

Beste Grüße,
Düse

tux-puzzle

(Themenstarter)

Anmeldungsdatum:
26. August 2009

Beiträge: 464

Hallo

duesentriebchen schrieb:

Hallo tux-puzzle

Okidoki, dann stell ich dir jetzt mal paar Fragen und dann konfigurieren wir das gemeinsam.

1.) Welche Schnittstelle geht ins WAN (eth0, eth1, ppp0)→ Internet?

hm, wie finde ich das raus? ip? ifconfig? Benutze Kabel, wlan und umts

2.) Welche Schnittstellen hast du im LAN (wlan0, eth0, eth1 z.B.) ?

hm, wie finde ich das raus? ip? ifconfig?

3.) Möchtest du nur deinen eigenen Verkehr ins TOR-Netz leiten?

ja

4.) Möchtest du als Relay fungieren?

traue mich nicht, spende aber an TOR 😬

5.) Möchtest du als ExitRelay fungieren?

dito

6.) Hast du Diesnte laufen, die öffentlich erreichbar sein müssen (VPN, http, ftp, smtp, ...)?

Denke nein.

hilft das?

duesentriebchen

Avatar von duesentriebchen

Anmeldungsdatum:
10. Februar 2012

Beiträge: 713

Wohnort: Im Inntal

Hallo tux-puzzle

Also auf deinem Laptop, und nicht auf einem Router?

Dann darf ich dir diese Einstellungen empfehlen.

1.) In der /etc/tor/torrc musst du folgende Zeilen reinschreiben, egal ob am Anfang, in der Mitte oder am Ende.

VirtualAddrNetworkIPv4 172.16.0.0/12
TransPort 9040
AutomapHostsOnResolve 1
DNSPort 9053

2.) Per iptables routen wir den gesamten TCP Verkehr durch TOR. Du kannst das in einem Script abspeichern und bei Bedarf mit laden oder bei jedem Systemstart in dem du es in die /etc/rc.local reinschreibst. Nicht vergessen es mit chmod +x <scriptname> ausführbahr zu machen.

#!/bin/bash
# Let us call this script anonymity.bash and do some netfilter rules on the local machine.

# Load the Kernel modules
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_nat_irc
modprobe ip_conntrack_irc
modprobe ip_conntrack_ftp
modprobe iptable_filter
modprobe iptable_nat
modprobe ipt_REJECT
modprobe xt_recent
modprobe ipt_mac

# Remove all rules
iptables -F
iptables -t nat -F
iptables -X

# Default Policy
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Allow Established and Related connetcions
# Ehternet
iptables -A INPUT -i eth+ -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth+ -m state --state ESTABLISHED,RELATED -j ACCEPT

# Wlan
iptables -A INPUT -i wlan+ -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o wlan+ -m state --state ESTABLISHED,RELATED -j ACCEPT

#Umts
iptables -A INPUT -i ppp+ -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o ppp+ -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow localhostloop
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Ruleset for Tor Transparent Proxy
iptables -t nat -A OUTPUT -o lo -j RETURN
iptables -t nat -A OUTPUT -m owner --uid-owner "debian-tor" -j RETURN
iptables -t nat -A OUTPUT -p udp --dport 53 -j REDIRECT --to-ports 9053
iptables -t nat -A OUTPUT -p tcp --syn -j REDIRECT --to-ports 9040

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m owner --uid-owner "debian-tor" -j ACCEPT
for NET in 127.0.0.0/8; do
 iptables -A OUTPUT -d $NET -j ACCEPT
done
iptables -A OUTPUT -p udp -m udp --dport 123 -j ACCEPT
iptables -A OUTPUT -j REJECT
Antworten |