[tor-relays] Installing obfs4 on Raspberry Pi bridge

Teófilo Couto undertuga at protonmail.ch
Sat Mar 28 23:43:38 UTC 2015

Interesting and useful tips s7r!

Thanks for sharing.

Props to all!


-------- Original Message --------
Subject: Re: [tor-relays] Installing obfs4 on Raspberry Pi bridge
Time (GMT): Mar 28 2015 22:20:09
From: s7r at sky-ip.org
To: tor-relays at lists.torproject.org

Hash: SHA256


obfs4 will not run on 0.2.4.x , you need at least 0.2.5.x or 0.2.6.x

First, upgrade your Tor.

You can use torproject.org repositories. If you are running wheezy:

1. Add the repository:
# echo "deb http://deb.torproject.org/torproject.org wheezy main" >>

2. Add the signing key:
# gpg --keyserver keys.gnupg.net --recv 886DDD89; gpg --export
A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add –

3. Install keyring:
# apt-get update && apt-get -y install deb.torproject.org-keyring

Now upgrade your Tor, an apt-get -y install tor would upgrade to

You can install obfs4proxy from deb.torproject.org too:

# echo "deb http://deb.torproject.org/torproject.org obfs4proxy main"
>> /etc/apt/sources.list
# apt-get update && apt-get -y install obfs4proxy

Now, modify your torrc to enable the obfs4 transport. Make sure you
also add ExtORPort auto in torrc so it will report some useful
statistics. obfs4proxy also supports obfs3, and some users still use
that, so if you can be an obfs3 and obfs4 bridge at the same time
(requires just one more open port) it would be great.

Sample torrc entry for enabling obfs4 and obfs3:
ExtORPort auto
ServerTransportPlugin obfs3,obfs4 exec /usr/bin/obfs4proxy
ServerTransportListenAddr obfs3 [::]:port
ServerTransportListenAddr obfs4 [::]:port

To make the bridge even better, you can bind obfs3 and obfs4 to lower
ports (< 1024), if you have them free, such as obfs3 on 80 and obfs4
on 443 (for example). This will help users behind really restrictive
firewalls who only allow connections on few ports. You can easily do
this with libcap2-bin package:

# apt-get -y install libcap2-bin
# setcap 'cap_net_bind_service=+ep' /usr/bin/obfs4proxy

To make this persistent after a reboot, edit the /etc/rc.local file
and add this line before 'exit 0':
setcap 'cap_net_bind_service=+ep' /usr/bin/obfs4proxy

Hope this helps. If you don't want to use deb.torproject.org,
everything required is also included in raspbian main repo:


If you want to use raspbian repo, simply ignore the lines where you
add deb.torproject.org to your sources.list file and just upgrade,
install the required packages and modify your torrc file.

Thanks for running a bridge.

On 3/28/2015 11:47 PM, jchase wrote:
> Hello, I run a bridge on a Raspberry Pi running Debian Wheezy and
> tor . I have obfs3 installed and would like to upgrade to
> obfs4. So far this has not been possible. If I understand it
> correctly, my best bet is to update to tor 0.2.6.x and then
> install obfs4. Let me know if I'm wrong. And if I'm right, what is
> the easiest way to do that? Thanks, J. Chase
> _______________________________________________ tor-relays mailing
> list tor-relays at lists.torproject.org
> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays
Version: GnuPG v2.0.22 (MingW32)

tor-relays mailing list
tor-relays at lists.torproject.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.torproject.org/pipermail/tor-relays/attachments/20150328/2b560060/attachment-0001.html>

More information about the tor-relays mailing list