Update: while the following should work to circumvent the blacklist of sites, packet filtering is another issue altogether. But the real point is that we, as Australian citizens, should not have to go to these lengths to get a clean internet feed.
The issue of the Australian Federal Government filtering internet content has been brewing for some time. I have always thought that it would be relatively easy to write a Perl script to fetch web pages. It could be placed on a legitimate server anywhere in the world. From my computer in Australia, I could reach the Perl script that could then fetch any pages or files on the internet. The thing is, it made my head hurt just thinking about the time I would waste writing a little snippet of code just for the sake of outfoxing the Australian Federal Government.
Paul Syvret’s article, Internet Filter Danger, published in The Courier-Mail on 7 July 2009 got me thinking that I would not be the only person in the world who has had this thought. A two-minute Google search revealed that to be the case.
This CGI script acts as an HTTP or FTP proxy. Through it, you can retrieve any resource that is accessible from the server it runs on. This is useful when your own access is limited, but you can reach a server that in turn can reach others that you can’t. In addition, the user is kept as anonymous as possible from any servers. Common uses include: anonymous proxies similar to The Anonymizer, other personal uses, VPN-like functionality, and others. It’s very simple to install, and very configurable.
From that description, it is easy to think that there might be a few Chinese and Iranians using this script! Imagine putting Australian’s in the same censorship category as those countries! It just isn’t right!!
As proof of concept, I downloaded the Perl script, installed it on this web site, and within two minutes I was surfing the internet anonymously fetching pages. In fact, it has taken me longer to write this blog post than it took to find and install CGIProxy. The Perl script can be run within a secure sockets layer (SSL) and with the URL encoded. I have not bothered to test this yet, but there is no reason it should not work. (There is some debate as to whether running under SSL will prevent packet inspection of data if the Australian Government colludes with root certification authorities, and whether this can be got around through VPN tunnelling … no doubt there is someone out there smarter than me who will solve this problem, and perhaps the answer is already available, VPNOut.)
This web site is hosted in Australia, but with around $100 and 15 minutes work, I could easily run the CGIProxy Perl script from a server anywhere in the world. That would give me my own private anonymous surfing system that can access unfiltered web page and file content on the internet. Try finding and banning me then!