It is increasingly difficult to access Drupal.org via Tor. Frequently you get "x.x.x.x is banned." upon attempting to use the Drupal.org website, and you must restart the Tor Browser several times until you get an IP address not blocked by Drupal.org. For contributors for whom Tor is a requirement, this is a major impediment to contribution.

There are surely ways Tor users could be accommodated without resorting to total blocking. For instance, if Tor exit nodes were at minimum allowed anonymous access only, it would be a major improvement. Currently even anonymously browsing issue queues is difficult. There are services that provide a complete list of Tor exit nodes which could be used for granting limited access.

It would be helpful to at least know the particular abuse that is causing Tor exit nodes to be blocked, so solutions to it could be devised.

Comments

silverwing’s picture

Project: Drupal.org site moderators » Drupal.org infrastructure
nnewton’s picture

Anon only is not a bad idea. The issue isn't so much that we are blocking Tor nodes specifically, its that Tor nodes often end up with IPs with an abuse record and we use a honeypot list that blacklists ips with a long history of abuse.

-N

killes@www.drop.org’s picture

I am a bit in doubt why somebody would need to access d.o through Tor, but if we want to accomodate these people, we should offer d.o as a hidden service. Then we could do our own rate limiting for that.

AohRveTPV’s picture

Thanks for moving this issue to the appropriate project and for the thoughtful replies.

I am a bit in doubt why somebody would need to access d.o through Tor

I do all web browsing with Tor Browser because I would like have more privacy and be more protected against surveillance by ISPs, governments, etc. To me it is easier to use Tor Browser for every website than to use it on a per-site basis, because then I can use a single browser and don't have to make a decision of whether to use Tor for each website based on assessing all possible risks of surveillance. I think there are probably other people who similarly use Tor Browser. (Of course I wouldn't expect Drupal.org to accommodate my individual use.)

There may also be use cases where it would be important to access Drupal.org using an anonymity network like Tor. Drupal is used for a lot of governmental and political websites. There could be value to the developers of such websites protecting their identities. If I run a Chinese pro-democracy website, for instance, maybe Chinese intelligence looks to see who is connecting to Drupal.org and checking pages that would be related to that site, then targets that individual.

I realize these may to some seem like paranoid concerns, but opposition to surveillance is also for some a political view that it would be good to support in the spirit of diversity. People also place different levels of importance on online privacy, and have different opinions of what privacy is needed or enough.

if we want to accomodate these people, we should offer d.o as a hidden service. Then we could do our own rate limiting for that.

I think this is a great idea. Is there a way for someone outside the infrastructure team to help?

If the first step to assess whether this is actually a need, maybe a poll/survey could be conducted somehow?

AohRveTPV’s picture

I could set up an experimental hidden service on a VPS that is a gateway to Drupal.org. Then there would be a single static IP address presented to Drupal.org for Tor users, and access restrictions could be set based on that IP address. I wouldn't be able to afford much bandwidth, but maybe this would be a good way to gauge interest in a hidden service? It would be made clear that the hidden service is not maintained by Drupal.org.

killes@www.drop.org’s picture

Considering that people would maybe try to log in through that proxy, that sounds like a bad idea.

AohRveTPV’s picture

You're right, I wasn't realizing the traffic would be unencrypted at the proxy server as it would not be an HTTPS proxy.

I am guessing there are two general types of abuse from Tor?
1. Spammers registering accounts and posting spam.
2. Excessive requests from anonymous users.

What about whitelisting known Tor exit node IP addresses, but for them disallowing user registrations (solves #1) and rate limiting (solves #2), as another possibility besides Drupal.org-hosted anonymous-only hidden service?

Idea is a spammer could register an account not using Tor, but posting spam would result in the IP addressed used for registration being blocked. Freenode takes a similar approach--it is not possible to register a Freenode account using Tor.

killes@www.drop.org’s picture

We don't do the white/blacklisting ourselves, we rely on projecthoneypot.org for that. So, any extras for tor exit node IPs would have to go through them.

I think the proposal to run our own hidden service is still the best solution. If we can find some resources to implement that.

klausi’s picture

What about limiting the IP blacklists to HTTP POST requests?

For sure, this is no final solution, as it would not achieve location-privacy for developers nor for users requiring post access - which should be desirable in the long term. But it would be a decent start to provide read-only access to the website for everyone.

Also increasing priority as more people are complaining about this to me in person.

klausi’s picture

Priority: Normal » Major
killes@www.drop.org’s picture

@klausi: do these people use tor? if not, please create a seperate issue.

We've been using http:bl in order to keep our servers sane, ie to block silly crawlers.

killes@www.drop.org’s picture

The whole discussion may become moot once the switch to a CDN is completed. This would make read access available to all requests, unless the CDN employs some blocking on its own.

AohRveTPV’s picture

The whole discussion may become moot once the switch to a CDN is completed. This would make read access available to all requests, unless the CDN employs some blocking on its own.

Reliable anonymous access to drupal.org would be a major improvement over the present situation, but is not a solution for those who would like to log in and contribute through drupal.org.

If there were a hidden service as you suggested, user registrations could be disallowed via it, preventing the creation of anonymous spammer accounts. Someone could still post spam via the hidden service, but they will have created the account from an IP address that can be blocked without impacting other Tor users.

Under such a system, good Tor users would not have the protection of Tor for their initial registration, but it does not defeat the purpose of using Tor. Location privacy can still be had for all subsequent accesses. Identity can still be protected by performing the initial registration from a public place (e.g., an Internet cafe).

This is essentially the approach the Freenode IRC network has used for years. You cannot register an account via Tor, but once you have an account you can access Freenode via Tor.

killes@www.drop.org’s picture

Agreed. I'll discuss it with the DIWG.

AohRveTPV’s picture

I think the proposal to run our own hidden service is still the best solution. If we can find some resources to implement that.

If the primary resource needed is money, maybe a price could be put on the feature and a fundraiser tried? It would be a direct way to determine whether there is enough interest for it to be worth drupal.org providing Tor access. I personally think there would be--I think a lot of people in the Tor community probably either use Drupal or recognize its importance on the web.

killes@www.drop.org’s picture

My primary concern is "will it do evil things to our infrastructure?". I am less concerned with spam, but more with general issues of stability.

The other concern is "do we have people who can do that and do they have the time to do that?".

Money could possibly help with the 2nd issue. But that will be a result of said discussion.

It will probably be a low-priority item, if we agree to do it.

skyredwang’s picture

If I run a Chinese pro-democracy website, for instance, maybe Chinese intelligence looks to see who is connecting to Drupal.org and checking pages that would be related to that site, then targets that individual.

Tor is blocked in China.

But, I also ran into this problem sometimes, if I use crowed sourced VPN or SSH tunnel. Situation much improved in the past a few months, at least I feel.

AohRveTPV’s picture

Tor is blocked in China.

Tor is indeed blocked (e.g., the Tor website and public Tor servers are blocked), but Tor is not defeated! It should still be possible to use Tor in China by using bridge relays and pluggable transports. Bridge relays are non-public entrance servers to the Tor network. Pluggable transports can be used to disguise Tor traffic as ordinary traffic like HTTPS or Skype. The obfs4 pluggable transport is known to work in China.

With respect to Drupal.org, the hypothetical "Chinese pro-democracy website" use case I gave may or may not be realistic, but I could imagine a similar use case in another country that was good at surveillance but not the best at blocking Tor.

jcamfield’s picture

Just offering a general +1 for finding a path to support users browsing using Tor.

killes@www.drop.org’s picture

We have now enabled the CDN and we've also switched off http:bl for now (the latter might change).

Currently, tor users shouldn't get blocked.

AohRveTPV’s picture

Great!

Mixologic’s picture

Priority: Major » Normal
Status: Active » Needs work

Could somebody who uses Tor regularly test to verify that this is indeed working? Im not even sure how you would prove that you were no longer blocked as it was intermittent in the first place.

AohRveTPV’s picture

It has been working splendidly. After comment #20, the greylist page stopped appearing, but occasionally the blacklist page would still appear: "x.x.x.x is banned". Lately I haven't seen either. If it does still occur, it is infrequent enough that practically it is not a problem. Thanks all.

Note for other Tor users: Add the following to your Tor configuration otherwise your IP address will change while logged in which breaks your Drupal.org session:
TrackHostExits .drupal.org

klausi’s picture

Status: Needs work » Fixed

Excellent, so I think we can close this.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.