Install obfsproxy on ubuntu with openvpn server and Mac Osx as Client

How does it work?

Deep Packet Inspection (DPI) algorithms classify Internet traffic by protocol. That is, they look at a given traffic flow and decide whether it’s http, ssl, bittorrent, vpn, etc. Governments like Iran, China, and Syria increasingly use these tools (and they often purchase them from Western corporations, but that’s a different story) to implement their country-wide censorship, either by looking for a given protocol and outright blocking it, or by more subtle mechanisms like squeezing down the bandwidth available to a given protocol to discourage its use.

Obfsproxy’s role is to make it easy for Tor’s traffic flows to look like whatever we like. This way Tor can focus on security and anonymity, and Obfsproxy can focus on appearance. The first thing we decided to try looking like was nothing at all: the “obfs2” module adds an encryption wrapper around Tor’s traffic, using a handshake that has no recognizable byte patterns.

Before we start the tutorial you have to ready one server with openvpn installed and using port tcp1194.

Step1: Install obfsproxy on Ubuntu Server

apt-get install obfsproxy

Step2: Startup obfsproxy

obfsproxy obfs3 --dest=127.0.0.1:1194 server 0.0.0.0:2194

Step3: Accept tcp 2194 port Input on the server

iptables -A INPUT -p tcp 2194 -j ACCEPT

After this three step server will openup a port number 2194 waiting for client connect.

Client Side (Mac)

Step1: Install Pip using brew on your Mac Terminal

Run below command using your user (not root)

brew install pip

Step2: Install obfsproxy using pip

Run below command using your user (not root)

pip install obfsproxy

then try to type obfsproxy on your terminal, if you getting any error, try to use below command to fix.

pip install pyopenssl
pip install Twisted==16.0.0

Step3: Start obfsproxy Client

obfsproxy obfs3 socks 127.0.0.1:50443 (50443 are the ovpn socks port)

Step4: Edit your Ovpn Configuration file

remote vpn.linuxscriptshub.com #vpnserver domain
client
proto tcp
port 2194 #port to connect vpn server
socks-proxy-retry
socks-proxy 127.0.0.1 50443 #port for socks (obfsproxy)

Step5: Connect your vpn using tunnelblick

Congratulation you are done!!!

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *