Meek transport issue

I installed the package meek 0.37.0-1 from an official linux repository and added these lines into torrc:
Bridge meek 0.0.2.0:3 97700DFE9F483596DDA6264C4D7DF7641E1E39CE url=https://meek.azureedge.net/ front=ajax.aspnetcdn.com
ClientTransportPlugin meek exec /usr/bin/meek-client
Tor says: The connection to the SOCKS5 proxy server at 127.0.0.1:46187 just failed. Make sure that the proxy server is up and running.
What does it mean and how to fix?

In modern Tor browser, meek is served by obfs4proxy (bridge called meek_lite). meek-client standalone is considered obsolete, but it works too.

Commands to start:

UseBridges 1
ClientTransportPlugin obfs4,obfs3,meek_lite exec /usr/bin/obfs4proxy -enableLogging=true -logLevel INFO managed
Bridge meek_lite 0.0.2.0:3 97700DFE9F483596DDA6264C4D7DF7641E1E39CE url=https://meek.azureedge.net/ front=ajax.aspnetcdn.com

or

UseBridges 1
ClientTransportPlugin meek exec /usr/bin/meek-client url=https://meek.azureedge.net/ front=ajax.aspnetcdn.com
Bridge meek 0.0.3.0:3 url=https://meek.azureedge.net/ front=ajax.aspnetcdn.com

If you use a distribution with AppArmor (Ubuntu, Debian, openSUSE), you should add these lines and reboot your computer:

sudo nano /etc/apparmor.d/abstractions/tor

/usr/bin/obfsproxy PUx,
/usr/bin/obfs4proxy Pix,
/usr/bin/meek-client ix,
/usr/bin/snowflake-client ix,

I don’t know about SELinux and MSEC.

Try to keep binary files as new as possible and copy with replacement into /usr/bin (I know, this is not good). You can get new binaries from Tor Browser.

2 Likes

Thanks, it turned out that meek-client didnt like the fingerprint in the bridge line. Also it doesnt like when I set a few meek bridges.
I prefer using standalone client because I seem it supports more servers.
And if I want to use a few front domains for one server how to make tor to differ them?