GNU bug report logs - #70332
Tor daemon is unable to use obfuscation

Previous Next

Package: guix;

Reported by: 2edb4a1e-63a5-4933-986c-922f7cc2953d <at> gmail.com

Date: Thu, 11 Apr 2024 06:14:04 UTC

Severity: normal

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: nigko <nigko.yerden <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: Re: Tor daemon is unable to use obfuscation
Date: Thu, 11 Apr 2024 11:13:15 +0500
I have found why it is not working! Tor process is simply not allowed to 
have access to the obfuscator binary because it is running inside all 
Linux namespaces except "net", in particular in "mnt" namespace. We need 
to add path/to/obfuscator/binary to the #:mappings field of the 
least-authority-wrapper call inside tor-shepard-service body in 
/gnu/service/networking.scm. I have checked, this makes obfuscation 
fully functional.


Regards,
Nigko Yerden


> Hello Guix!
> 
> I am trying to configure tor daemon to use traffic obfuscation by the following lines in my system configuration
> 
> 
> (service tor-service-type
>         (tor-configuration
>            (plain-file "torrc"
> "
> UseBridges 1
> ClientTransportPlugin obfs4 exec /path/to/obfuscator/binary
> 
> Bridge obfs4 ......
> Bridge obfs4 ......
> ")))
> 
> where /path/to/obfuscator/binary corresponds to an obfs4 obfuscator. There are a few of them in the guix repo, see e.g. go-gitlab-torproject-org-tpo-anti-censorship-pluggable-transports-lyrebird or go-github-com-operatorfoundation-obfs4 packages. The obfuscator is also installed in the system profile. Bridges are gotten from the official site https://bridges.torproject.org/.
> 
> 
> This torrc configuration works perfectly on guix when tor run at user level by command '$ tor -f path/to/torrc' and '# netstat -tupan' shows obfuscator process is listening on 127.0.0.1:[some random port].
> 
> 
> However, when tor run as system daemon, there are no obfuscator process listening and tor is unusable.
> 
> 
> Perhaps this issue is related to https://issues.guix.gnu.org/57222.
> 
> I have tried to revert commit fb868cd7794f15e21298e5bdea996fbf0dad17ca on recent guix checkout and then to perform 'guix pull --url=/path/to/my/local/guix/repo --disable-authentication'. It worked fined. But when performing 'sudo guix system reconfigure /path/to/system/configuration' I got an error 'make-forkexec-constructor/container: unbound variable'
> 
> 
> 
> Regards,
> Nigko Yerden
> 
> 
> 
> 





This bug report was last modified 1 year and 91 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.