Hello, obfs4proxy is a (relatively) new obfuscating proxy for Tor bridges which, in addition to the OBFS2 and OBFS3 protocols supported by net-proxy/obfsproxy, supports ScrambleSuit and OBFS4. It would be great to have it in Portage - in many places old obfuscation protocols no longer work, for instance the Great Firewall of China now uses active probes, which are not deterred by the use of OBFS2 or OBFS3, to identify and block Tor bridges almost in real time. I have just begun working on an ebuild file for obfs4proxy, moreover it turns out the user zwu posted a link to an early version of one in #gentoo-proxy-maint just a few hours ago. Neither version is ready yet but hopefully one of us will finish soon. Opening a bug for it already to help keep track of progress. Regardless of whose version gets accepted into Portage, I am interested in becoming the (proxy) maintainer of the new ebuild.
Created attachment 431338 [details] obfs4proxy-0.0.6.ebuild Please find attached an ebuild file for net-proxy/obfs4proxy-0.0.6, i.e. the latest release. It can also be used as a live Git ebuild if appropriately renamed. Please note that the upstream-recommended way of building obfs4proxy by running "go get", which is what this ebuild file uses, downloads all the necessary dependencies (other than Go itself) by itself and links them statically into the executable. In the future we might want to add ebuilds for those dependencies (at the moment only go.crypto and go.net are available in Portage), then switch from using a custom src_compile() calling "go get" to one provided by the golang-build eclass.
Created attachment 431356 [details] obfs4proxy-0.0.6.ebuild Attaching a new ebuild file which uses dependencies installed by Portage rather than pulling them themselves. Please excuse the ugly bit in src_compile(), if you do not use "go get" the final binary can only be found under the name a.out inside the Go build directory (hence messing around with ${T}), part of whose name is randomly generated (hence the use of find).
FYI, there is now a pull request #1320 on GitHub which addresses all four obfs4proxy-related bugs.
commit d266ca42a8756e6dc7eed283a73a4cf733852f83 Author: Marek Szuba <Marek.Szuba@cern.ch> Date: Thu Apr 21 15:07:05 2016 +0200 New ebuild: net-proxy/obfs4proxy. A new obfuscating proxy for Tor bridges which supports, among others, the OBFS4 protocol. Relevant Gentoo bug: #580582.