Opened 7 years ago

Last modified 21 months ago

#2105 new feature-request

Proxy for http[s] connections (httpdownloader)

Reported by: ratzeputz Owned by:
Priority: minor Milestone: 2.x
Component: Core Version: 1.3.5
Keywords: tracker icons, proxy, httpdownloader Cc:

Description

OS: Debian Squeeze 64Bit daemon: deluged 1.3.5 from ppa python: 2.6


GTK Client: Deluge 1.3.6/libtorrent: 0.14.10.0 Mac OS X 10.6

The way i use deluge: Disabled Classic Mode and connect to a remote deluge daemon via vpn.

After connecting LittleSnitch? reports connection attempts directly to the trackers currently active in torrents on the remote daemon. From my point of view this is bad behavior. The GTK client should only get information via the remote daemon.

The current behavior leaks information about the GTK client user to the tracker.

Change History (12)

comment:1 Changed 7 years ago by Cas

  • Milestone set to 1.3.6

The only thing I can think of off-hand is that it is getting the icon for the tracker because libtorrent does everything else.

comment:2 Changed 7 years ago by johnnyg

As Cas said this is just the GTK UI downloading the trackers' icons. You should be able to verify this using LittleSnitch? (look for http or port 80).

comment:3 Changed 7 years ago by ratzeputz

Connection is attempted to port 80. But a lot of trackers are running on port 80 as well, so i can't tell if it is only to get the icon. But when blocking the connection Deluge does not show any tracker icons, as it does in the webinterface.

comment:4 Changed 7 years ago by Cas

Currently the clients download the icons with the ui tracker_icons methods so the only solution would be to move that code from the ui to the core/daemon and have clients retrieve icons from the daemon but that is not a trivial change. Because the webui is running on the server this would not be noticed.

However I am not sure what information is actually being leaked because it is only an http request for the icon. Have you looked at wireshark traces for these requests?

comment:5 Changed 7 years ago by ratzeputz

I'll look on this using wireshark as soon as i got time.

@leaked information: Let's say you use a torrent seedbox with a private tracker and you only connect to the seedbox using your gtk client and visit tracker site over a proxy on your server. So this behaviour destroys the anonymity on the tracker, as you eventually may appear in their logfiles, what you obviously tried to be avoiding. Some may say that it is paranoid, but i think if you got a daemon doing all work for the gtk client, it should get the icon for the gtk clients.

comment:6 follow-up: Changed 7 years ago by johnnyg

I'm guessing you don't add torrents via url either as that would also directly download from the site (i.e. not through the daemon).

I don't think moving tracker_icons to the daemon makes sense as it is purely a UI thing.

A more suitable solution would be to be able to specify a proxy for all web requests (http/https). This would mean that not only would tracker icons go through your proxy but so would torrents added via url.

comment:7 in reply to: ↑ 6 Changed 7 years ago by ratzeputz

Replying to johnnyg:

I'm guessing you don't add torrents via url either as that would also directly download from the site (i.e. not through the daemon).

Right.

I don't think moving tracker_icons to the daemon makes sense as it is purely a UI thing.

A more suitable solution would be to be able to specify a proxy for all web requests (http/https). This would mean that not only would tracker icons go through your proxy but so would torrents added via url.

Agree, and if no proxy is specified no icon download should happen (or ask user).

comment:8 Changed 7 years ago by johnnyg

I think if you don't specify a proxy then it should just directly download (i.e. current behaviour).

I should also mention that if you manually download the icons for the trackers (via your proxy) and save them in an icons folder inside your config folder (e.g. ~/.config/deluge/icons) as the tracker's host name plus whatever image extension (e.g. private-tracker.org.ico) then deluge won't try to download them; it only tries to get icons which it doesn't already have. Alternatively if you're running the web ui on your proxy, you could copy its icons directory to your deluge-gtk's config folder.

Obviously the above is not a permanent solution but should prevent you from having to block deluge's http connections every time you launch it.

comment:9 Changed 7 years ago by johnnyg

  • Component changed from gtkui to core
  • Keywords tracker icons proxy httpdownloader added; remote daemon leak gtk removed
  • Milestone changed from 1.3.6 to 1.4.0
  • Summary changed from connection attempts to trackers while connected to remote daemon to Proxy for http[s] connections (httpdownloader)
  • Type changed from bug to feature-request

Update ticket info to reflect actual solution.

comment:10 Changed 7 years ago by ratzeputz

This bug also applies if you are using a SOCKS5 proxy (other proxies not tested) in classic mode.

comment:11 Changed 6 years ago by Cas

Duplicate from #2297:

Delude Blocklist plugin ignores proxy settings. It's especially frustrating when internet access over proxy only.

comment:12 Changed 21 months ago by Cas

  • Milestone changed from 2.0.x to 2.x

Milestone renamed

Note: See TracTickets for help on using tickets.