Tor:Tor Weather

From Notes

Jump to: navigation, search

Currently rewriting the existing Tor Weather codebase in Django.


Final Goal

  • Inform new Tor operators about the existence of Tor Weather
  • Inform new Tor exit node operators with legal advice
  • Inform observers of outdated Tor nodes that they should update
  • Inform observer if observed node's bandwidth drops below certain values
  • Inform observers if the node has earned them a t-shirt
  • Implement preferences page (include turning on/off different kinds of notifications)


  • Have a base preferences page that lets them type in their email address and get an email with a preferences URL
  • If a subscriber enters a fingerprint that isn't stored in our database, we should send them to an error page that explains the possible problems (either they mistyped the fingerprint, the node just went up within the hour, or the node hasn't been up for over a year).
  • Include Fingerprint/name in email subjects?
  • Add error page template that has an externally stored error content variable
  • Need to see what happens when an ip other than localhost tries to request <base_url>/run_updaters. We hope a 404 will be displayed. Alternatively, we may want to rewrite this using signals.
  • Allow users to subscribe by node name. If multiple names, let them choose among available fingerprints.
  • Add email failure logging

Official Request

Improve Tor Weather
Priority: Medium
Effort Level: Medium
Skill Level: Medium
Likely Mentors: Christian, Roger, Damian
Tor weather is a tool that allows signing up to receive notifications via email when the tracked Tor relay is down. Currently, it isn't really useful for people who use the hibernation feature of Tor, or for those who have to shut down their relay regularly. During the project, Tor weather could be extended to allow more flexible configurations. Other enhancements are also possible: Weather could send out warnings when your relay runs an out-of-date version of Tor, or when its observed bandwith drops below a certain value. It might also be a nice tool that allows for checking whether your relay has earned you a T-Shirt, or sending reminders to directory authorities that their keys are about to expire. Be creative, and consider how the above project to track overall network status can help you get your job done more quickly! See also its README and TODO.


  • Fix TorCtl.Connection.close().
  • What happens if the openssl command gets a go-slow DOS attack in response?
  • Add /usr/sbin/sendmail support for sending email.
  • Let's also look at server versions and alert admins when they should upgrade.
  • Notice when new relays, with contact info, are up for a few days. Send them a welcome email with pointers to tor-relays. If an exit node, send them link to "how to run an exit node with minimal harassment" and "legal directory for relay ops". Encourage them to sign up with weather. Only email them once, otherwise we're dirty spammers.
  • Notice when a relay with contact info goes offline for a few days, do we bombard them with emails about their relay being offline or send them a final "hey, did you know your relay has been offline since X?

Old Issues

Note: These should be resolved now and we know what we're doing.
Tor Weather is intended to be an opt-in notification service for any user who wants to monitor a given node. Still, it seems important to email node operators in certain critical scenarios (i.e. if a node has been down for several days or if the implemented version of Tor is obsolete) regardless of whether they signed up for Tor Weather. As of yet, Tor Weather is not a prominent feature of Tor, and it's likely that many users haven't considered signing up for notifications. When a node is registered, the owner submits contact information into a configuration file that hopefully (but not necessarily) includes an email address. For many nodes, the contact field includes an email address that is not specifically formatted and therefore must be parsed somehow. Is it an invasion of privacy to send emails to node operators who haven't signed up for Tor and/or who list their email in an unconventional format (i.e. <firstname> <lastname> AT <server> dot com)? Should we restrict emails to Tor Weather users instead? These issues apply to out-of-version notifications, sending legal information to exit node operators, and welcoming new users to Tor while suggesting they enroll in Tor Weather.


Personal tools
NSF K-12