With obfs4proxy, you can obfuscate Tor to look like any encrypted traffic. If you combine it with port 443, it will look like HTTPS!

While this guide is specifically written for Mac, you can also follow it on Linux and Windows(WSL) for the most part.

I like to use MacPorts for all third-party packages on Mac, but sadly obfs4proxy is not included! So, instead, I’ll show you how to build it from source and install on your system!

Prerequisites

  • Know-how to handle a Terminal
  • Git installed (simply enter git in your terminal, and macOS will offer to install Git)
  • Go installed (I’ll tell you how, though)

Install Go(lang)

You can download and install Go from https://go.dev/dl/

Pay attention on whether you download amd64 or arm64…

  • amd64 = “Intel” or “x86” Mac
  • arm64 = “Apple Silicon” or “M1” Mac

Download and install it, and come back to this guide.

Get, build and install obfs4

In your terminal, run:

git clone https://gitlab.com/yawning/obfs4.git
cd obfs4
git checkout obfs4proxy-0.0.12
go build -o obfs4proxy/obfs4proxy ./obfs4proxy
sudo install -m 0755 -g 0 -o 0 obfs4proxy/obfs4proxy /usr/local/bin/obfs4proxy

The last line will prompt for your password, this is because we’re installing it as root to your system. Type it in (it’s not shown) and hit enter.

The line, where we check out obfs4proxy-0.0.12, defines what version we’re going to build and install. At the time of this writing, that’s the latest version. You might have to check if that’s still the case when you’re reading this guide. You can run git tag to list all tags. Copy the tag you want and hit Q to exit the tags list.

Note: If you don’t have admin rights, you can also install obfs4proxy somewhere else, but that’s not recommended.

Conclusion

With this guide, building and installing obfs4proxy is a no-brainer if you know how to use a terminal and have Git and Go installed.

I run this blog in my free time. If it helped you out, consider donating a coffee. (: