Hello,
Recently I've been fighting censorship[1] in the form of deep packet inspection.
Between the OpenVPN I an obfsproxy server outside the country and a client inside the country. But what I've found out is that Obfsproxy server needs to be running as the OpenVPN server and Obfsproxy client needs to be on the same machine as the OpenVPN client.
This makes stuff work but its not really optimal, since there are area of the country where internation traffic is really hard, having proper address translation would save the hassle of setting another proxy between obfsproxy and the clients would not need anything more than the OpenVPN client that they already have.
I opened issue #14217[2] and would like to provide a patch for it.
But I am not Python and Twisted expert, so I will be firing a few questions:
- How do I debug twisted ? Given the event-diven nature of the library, how do I debug incoming packets ? - How do you write server client tests? - What part of the code is reponsible from translating the incoming packeets on the server back to the client ?
Thanks in advance !
[1] https://forums.openvpn.net/topic17960.html [2] https://trac.torproject.org/projects/tor/ticket/14217
-- Regards, Alfredo Palhares