mirror of
https://github.com/cmehay/docker-tor-hidden-service.git
synced 2025-04-19 21:39:13 +00:00
Fix tor configuration parsing to avoid loading of secrets
This commit is contained in:
parent
3434863f10
commit
79b96a30a8
5 changed files with 408 additions and 410 deletions
|
@ -1 +1 @@
|
|||
0.4.4.7
|
||||
0.4.5.6
|
||||
|
|
|
@ -24,12 +24,8 @@ services:
|
|||
|
||||
# Set secret for key, use the same name as the service
|
||||
secrets:
|
||||
- source: foo
|
||||
target: foo
|
||||
mode: 0400
|
||||
- source: bar
|
||||
target: bar
|
||||
mode: 0400
|
||||
- foo
|
||||
- bar
|
||||
|
||||
hello:
|
||||
image: tutum/hello-world
|
||||
|
|
|
@ -113,9 +113,9 @@ class Setup(object):
|
|||
assert len(key) > 800
|
||||
self.setup[host]['key'] = key
|
||||
|
||||
def _load_keys_in_services(self):
|
||||
def _load_keys_in_services(self, secret=True):
|
||||
for service in self.services:
|
||||
service.load_key()
|
||||
service.load_key(secret=secret)
|
||||
|
||||
def _get_service(self, host, service):
|
||||
self._add_host(host)
|
||||
|
@ -437,7 +437,7 @@ class Onions(Setup):
|
|||
service.add_ports(service_dict['ports'])
|
||||
if service not in group.services:
|
||||
group.add_service(service)
|
||||
self._load_keys_in_services()
|
||||
self._load_keys_in_services(secret=False)
|
||||
|
||||
if not os.path.exists(self.torrc):
|
||||
return
|
||||
|
@ -489,16 +489,16 @@ def main():
|
|||
logging.getLogger().setLevel(logging.WARNING)
|
||||
try:
|
||||
onions = Onions()
|
||||
if args.setup:
|
||||
onions.setup_hosts()
|
||||
else:
|
||||
onions.torrc_parser()
|
||||
if args.vanguards:
|
||||
onions.run_vanguards()
|
||||
return
|
||||
if args.resolve_control_port:
|
||||
onions.resolve_control_port()
|
||||
return
|
||||
if args.setup:
|
||||
onions.setup_hosts()
|
||||
else:
|
||||
onions.torrc_parser()
|
||||
except BaseException as e:
|
||||
logging.exception(e)
|
||||
error_msg = str(e)
|
||||
|
|
|
@ -113,10 +113,11 @@ class ServicesGroup(object):
|
|||
with open(key_file, 'rb') as f:
|
||||
self._onion.set_private_key_from_file(f)
|
||||
|
||||
def load_key(self, override=False):
|
||||
def load_key(self, override=False, secret=True):
|
||||
if self.imported_key and not override:
|
||||
return
|
||||
self.load_key_from_secrets()
|
||||
if secret:
|
||||
self.load_key_from_secrets()
|
||||
self.load_key_from_conf()
|
||||
|
||||
def load_key_from_secrets(self):
|
||||
|
|
789
poetry.lock
generated
789
poetry.lock
generated
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue