Comments (8)
Having two files with different names and same contents saved results in tor failing to parse the configuration.
[warn] Duplicate authorization for the same hidden service address [scrubbed].
[warn] Failed to parse/validate config: Failed to configure client authorization for hidden services. See logs for details.
[err] Reading config failed--see warnings above.
from onionjuggler.
improvements made:
- avoid files with the same contents
- avoid invalid files as much as possible, check lower case, upper case, numbering, protocol, semicolon delimiter etc.
from onionjuggler.
I inserted a wrong configuration file to ClientOnionAuthrDir missing the onion address at the beginning:
:descriptor:x25519:<priv-key-base32>
The tor parser does not inform this is the problem:
[err] tor_assertion_failed_(): Bug: ../src/app/config/config.c:920: get_options_mutable: Assertion global_options failed; aborting. (on Tor 0.4.7.8 )
[err] Bug: Tor 0.4.7.8: Assertion global_options failed in get_options_mutable at ../src/app/config/config.c:920: . Stack trace: (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(log_backtrace_impl+0x57) [0x5afccea3cf07] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(tor_assertion_failed_+0x148) [0x5afccea47f88] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(escaped_safe_str+0xa2) [0x5afcceaccc92] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(hs_parse_address+0x5c) [0x5afcceb46b0c] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(hs_config_client_authorization+0x120) [0x5afcceb44310] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(hs_config_client_auth_all+0x19) [0x5afcceb49899] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(+0x17cc1a) [0x5afccead4c1a] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(+0xca7ef) [0x5afccea227ef] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(config_validate+0x115) [0x5afccea246c5] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(+0x17a0f2) [0x5afccead20f2] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(options_init_from_string+0x133) [0x5afccead2383] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(options_init_from_torrc+0x47c) [0x5afccead2a9c] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(tor_init+0x217) [0x5afcce9bf3f7] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(tor_run_main+0x91) [0x5afcce9bfd31] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(tor_main+0x49) [0x5afcce9bc2d9] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(main+0x19) [0x5afcce9bbeb9] (on Tor 0.4.7.8 )
[err] Bug: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x7f82404a9d0a] (on Tor 0.4.7.8 )
[err] Bug: /usr/bin/tor(_start+0x2a) [0x5afcce9bbf0a] (on Tor 0.4.7.8 )
This is why it is important to first validate as much as possible the config before saving to be parsed by tor, and when possible, remove the file that was just inserted.
The --verify-config
option did not caught the problem because it is using -f /usr/loca/etc/torrc.d/40_onionjuggler.conf
, not /etc/tor/torrc
.
This should be corrected on another issue, but anyway, auth
option to remove file if tor fails to parse is still missing.
from onionjuggler.
from the above commits.
- auth-client is almost ready, need to include options to manual page
- auth-server is being prepared to be able to import files, then late also add opts to man pages
from onionjuggler.
Usage: onionjuggler-cli-auth-client [--option <ARGUMENT>]
Description: client side onion authorization
Complete options:
--on [--client-priv-file <FILE>] [--replace-file]
import '.auth_private' file to ClientOnionAuthDir
--on [--client <CLIENT>] [--onion <ONION>] [--client-priv-key <CLIENT_PRIV_KEY>] [--replace-file]
generate keys for client authorization, optionally add define client's private key
-auth-client
is missing a complete configuration option for experts or for people that haven't saved the config to a file and don't want to separate then into --onion
and --client-priv-key
.
Option missing is --client-priv-config
from onionjuggler.
keeping this open until more tests are done
from onionjuggler.
actually, this can't be closed until the man pages are updated with the new options
from onionjuggler.
- update onionjuggler-tui accordingly, it is mainly missing option to import key from file
from onionjuggler.
Related Issues (20)
- [QUESTION] Which use case needs two (or more) virtual ports on the same onion address? HOT 2
- [QUESTION] Using client authorization in TorBox HOT 7
- [FEATURE REQUEST] use sites-available
- [FEATURE REQUEST] info option default to show all services
- [FEATURE REQUEST] option to not signal reload or restart HOT 3
- improve verify_config_tor() parser and safe_edit() file mangement HOT 9
- [BUG] onionjuggler-cli main script should not hold plugins --options
- [FEATURE REQUEST] separate scripts to different deb packages HOT 10
- [FEATURE REQUEST] --getopt should work without hardcode
- [BUG] improve source_conf validation HOT 3
- [FEATURE REQUEST] distro should be a variable on the conf file
- [BUG] sunset -vanguards, -backup
- [BUG] error out if tor config is not valid in the begginning HOT 4
- [FEATURE REQUEST] make onionjuggler-tui case statements simpler HOT 1
- [BUG] build variables should not be on onionjuggler.conf HOT 1
- [FEATURE REQUEST] use `tor --dump-config short` HOT 1
- [BUG] support IPv6 for HiddenServicePort
- [FEATURE REQUEST] improve docs
- [FEATURE REQUEST] set config-file and defaults-config-file differently HOT 2
- [FEATURE REQUEST] better checking if dir is empty
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from onionjuggler.