Opened 6 years ago

Closed 4 years ago

#3638 closed enhancement (wontfix)

Please add Control Socket support

Reported by: dererk Owned by: aagbsn
Priority: High Milestone:
Component: Torctl Version:
Severity: Keywords: controlsocket, arm
Cc: dererk Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Since 0.2.2.29-beta, last remaining details to enable "Control Socket" by default on Tor have been sorted out.

This feature enables users inside Tor's group to establish a local unix socket connection to control or monitor its behavior, with no extra authentication required above basic POSIX permissions.

This is mayor feature for everyone attempting to experience or bring a painless-almost-zero-conf integration with Tor.

Since this introduces the capability to start arm with no configuration, adding Control Socket support would definitely be a great goal for end users.

Child Tickets

Change History (11)

comment:1 follow-up: Changed 6 years ago by atagar

  • Owner changed from atagar to mikeperry
  • Status changed from new to assigned

Agreed, this would be great to have. Does the tor deb have a control socket available by default? When I asked Peter he mentioned '/var/lib/tor/control' but I'm not spotting any references to it in the debian package for experimental (tor_0.2.2.30-rc-1_i386.deb).

Regardless, we'll need to first support this in torctl (it's a simple addition). Mike, please see the bug3638 branch of my repo. In particular...
https://gitweb.torproject.org/atagar/pytorctl.git/commitdiff/51508fe8573d029b231682b402c75f66e248f458

If you merge this then please assign the ticket back to me. I'll then add arm support for the option.

Cheers! -Damian

comment:2 Changed 6 years ago by atagar

  • Component changed from arm to Torctl
  • Status changed from assigned to needs_review

I've added control socket support to arm, putting a copy of this torctl patch into its torTools util (I'll swap to using torctl when it's available):
https://gitweb.torproject.org/arm.git/commit/cca2aae001bab0e6bb09e81a4e9df11bec2bc2bb

Switching the component since the arm portion of the work is done.

comment:3 Changed 6 years ago by mikeperry

I will review your tickets next week. Is that OK? Do you have more changes to make? I'd like to review them in a batch.

comment:4 Changed 6 years ago by atagar

Is that OK?

Yup. No rush on my part, this isn't impacting arm in any way.

Do you have more changes to make?

Nope. This, 3679, and a ticket by Kamran are the only torctl changes I'm aware of.
https://trac.torproject.org/projects/tor/ticket/3679
https://trac.torproject.org/projects/tor/ticket/3724

comment:5 in reply to: ↑ 1 Changed 6 years ago by dererk

Replying to atagar:

Agreed, this would be great to have. Does the tor deb have a control socket available by default? When I asked Peter he mentioned '/var/lib/tor/control' but I'm not spotting any references to it in the debian package for experimental (tor_0.2.2.30-rc-1_i386.deb).

The first release on Debian carrying the required changes to activate Control Socket by default were seen on 0.2.2.29-beta-1.
Socket path itself is at '/var/run/tor/control' and, as a color note, Vidalia version on Debian experimental is also using it by default.

comment:6 Changed 6 years ago by atagar

Thanks! Corrected the control socket path for both the torctl patch and arm.

comment:7 Changed 6 years ago by robinson

After looking at this I'm not sure why ConnClass was added. What does it do? Is this used in arm? However, connect_socket() looks reasonable (with or without ConnClass).

comment:8 Changed 6 years ago by atagar

After looking at this I'm not sure why ConnClass was added. What does it do?

This connect_socket method is like connect and preauth_connect which include a ConnClass in case the user wants to instantiate something other than 'TorCtl.Connection'. Iirc PathSupport has an alternative (the ConnClass argument was an addition by Mike, not me).

Is this used in arm?

Nope

comment:9 Changed 5 years ago by mikeperry

  • Owner changed from mikeperry to aagbsn
  • Status changed from needs_review to assigned

comment:10 Changed 5 years ago by atagar

  • Status changed from assigned to needs_review

returning to needs_review

comment:11 Changed 4 years ago by atagar

  • Resolution set to wontfix
  • Status changed from needs_review to closed

Control socket support isn't necessary for TorFlow. Resolving.

https://blog.torproject.org/blog/torctl-deprecation-and-stem-plans

Note: See TracTickets for help on using tickets.