[tor-bugs] #27446 [Core Tor/Tor]: HS creation via SETCONF changed from v2 to v3

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Sep 4 17:55:10 UTC 2018


#27446: HS creation via SETCONF changed from v2 to v3
------------------------------+--------------------
     Reporter:  atagar        |      Owner:  (none)
         Type:  defect        |     Status:  new
     Priority:  Medium        |  Milestone:
    Component:  Core Tor/Tor  |    Version:
     Severity:  Normal        |   Keywords:
Actual Points:                |  Parent ID:
       Points:                |   Reviewer:
      Sponsor:                |
------------------------------+--------------------
 Hi lovely network team folks. Few days ago Stem's integ tests started
 failing with...

 {{{
 ======================================================================
 ERROR: test_hidden_services_conf
 ----------------------------------------------------------------------
 Traceback (most recent call last):
   File "/home/atagar/Desktop/stem/test/require.py", line 58, in wrapped
     return func(self, *args, **kwargs)
   File "/home/atagar/Desktop/stem/test/integ/control/controller.py", line
 458, in test_hidden_services_conf
     controller.set_hidden_service_conf(initialconf)
   File "/home/atagar/Desktop/stem/stem/control.py", line 2614, in
 set_hidden_service_conf
     self.set_options(hidden_service_options)
   File "/home/atagar/Desktop/stem/stem/control.py", line 2451, in
 set_options
     raise stem.InvalidRequest(response.code, response.message)
 InvalidRequest: Unacceptable option value: Failed to configure rendezvous
 options. See logs for details.

 ----------------------------------------------------------------------
 }}}

 Narrowing this down to a telnet repro with the present tor head (commit
 fd994f5) gives the following...

 {{{
 % cat ~/.tor/torrc
 SocksPort 0
 ControlPort 9051
 ExitPolicy reject *:*


 % telnet localhost 9051

 AUTHENTICATE
 250 OK

 SETCONF HiddenServiceDir="/tmp/test_hidden_service"
 HiddenServicePort="8030 127.0.0.1:8030"
 HiddenServiceAuthorizeClient="stealth a, b"
 513 Unacceptable option value: Failed to configure rendezvous options. See
 logs for details.
 }}}

 Error responses should **not** cite log output. That aside, here's what
 logs say...

 {{{
 Sep 04 10:47:19.000 [warn] Hidden service option
 HiddenServiceAuthorizeClient is incompatible with version 3 of service in
 /tmp/test_hidden_service
 Sep 04 10:47:19.000 [warn] Controller gave us config lines that didn't
 validate: Failed to configure rendezvous options. See logs for details.
 }}}

 My understanding is that hidden services that are configured through the
 torrc are v2, whereas ephemeral hidden services are v2 or v3 based on the
 key type (RSA1024 for v2 and ED25519-V3 for v3).

 Seems this changed and now torrcs create v3 rather than v2 services? Is
 this intentional? Since this breaks backward compatibility I assume this
 means we're dropping v2 hidden services in the next tor release?

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/27446>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list