Tunnelling Your Way Through the Government’s Metadata Retention Laws

If you happen to be fortunate enough to have access to a Unix based web server (such as an EC2 or Linode) machine) you will surprised how easy it is to safely browse the web – circumventing the Australian government’s 2 year mandatory metadata retention laws.

t_29_0You can use an SSH tunnel to use your off-site server as SOCKS Host. A SOCKS Host (or Server) is a general purpose proxy server that establishes a TCP connection to another server on behalf of a client, then routes all the traffic back and forth between the client and the server. It works for any kind of network protocol on any port. Because the connection is secure, only the client and the host can access the the data.

This is how is circumvents Government spying. The only connection your ISP can see is the initial tunnel made to the server. All the delivery of websites etc through that connection are invisible to them (and the government).

It’s tragically easy to setup, simple initiate a SSH connection with dynamic application-level port forwarding, like this:

ssh -D 12345 user@your.server.com

And then, tell your browser that you want to use a HTTP SOCKS 5 Host for proxying (Options > Advanced > Connection Settings for Firefox):

Screen Shot 2015-11-03 at 1.52.46 PMUse manual proxy configuration; set it to SOCKS v5 on the same port you specified as forwarding.

Be warned however, while your Internet traffic will be encrypted and invisible, your DNS lookups will still be public. Firefox has a setting called ‘network.proxy.socks_remote_dns’ which you can enable by browsing to the address ‘about:config’ and searching for the string above.

Lastly, be warned that browsing this way will slightly decrease speed of your browsing – but this may be a small price to pay, and may not even be noticeable.

While this is all trivial for Linux and OSX users; Windows users will need to jump through a few more hoops. This blog post inspired and references an excellent Linode Guide which covers things in more detail, and includes instructions for Windows users using Putty.

Downloading Blackboard Unit Course Content for Offline Viewing

Blackboard is a great tool for completing college courses online, but sometimes you can get stuck without the internet making it difficult to study. There is a way however, to use a command line tool wget to download the site content for local, offline viewing.

It should be noted however, that this method is unlikely to be endorsed by your college – so use at your own risk!

To download the content for offline viewing you need two things (in FireFox):
1. Install the Firefox Cookie Exporter
2. Install wget

Use Cookie Exporter to export to cookies.txt

-the next command will download all the course material after loading the cookies.txt

wget -mk --no-check-certificate --load-cookies cookies.txt https://link.to/the/course/CODEE_LEE7/Content/

If you use this method to download from courses with lots of content you may want to consider inserting “-w 20” into the wget command, which tells wget to wait 20secs between downloads (give the server some rest otherwise you may get booted).

Syncing Google Contacts with iMessage (and Contacts) on OSX Mavericks

You may remember earlier in the year I took issue with the super secret hidden checkbox in the Mountain Lion’s version of Contacts which magically syncs your Google contacts with OSX Contacts and Messages. As it seems, Apple have finally fixed the SSL problem stopping you from syncing through the Google option in System Preference’s Internet Accounts setup.

Getting the sync to work now is as trivial as adding a Google account to your Internet Accounts list, log in and turn on the items you want to sync. Screen Shot 2013-11-26 at 9.46.42 pmHurray! Easy peasy.

It’s beyond me that it wasn’t like this before.


Syncing Google Contacts with iMessage (and Contacts) on OSX Mountain Lion

Being able to sync your Google Contacts with your OSX Contacts is possible – it just takes a bit of digging.

As a long-time iPhone 4 user, I was recently introduced to the wonderful OSX Messages app, which lets me read/send iMessages from my Mac, as if I had sent a text from my phone. Such an amazing thing (even if it does only work with other iPhone users). However, it only used phone numbers to identify contacts; less than ideal since I seldom reference my friends and family by their cell numbers.

I use Gmail for all my email purposes; and after loosing my completely contacts list TWICE from the failures of Windows Mobile 6, I am also a huge advocate for Google Contacts – awesome synergy between my phone list and email contacts. and while I’ve been very happy Syncing my email/calendar/contacts between Google and my iPhone; my Mac just didn’t want to come to the party and I refused to retype my contacts manually.

At first I tried syncing the contacts over Google’s Microsoft Exchange Protocol (which is actually the best way of syncing Gmail/contacts/etc onto the iPhone), however you cannot get the necessary SSL to connect to Google on Mountain Lion. Next I tried backing up my iPhone contacts into iCloud, which also failed.

I was about to give up until I discovered that the preferences for the Contacts app has an option that I didn’t know about. Carefully disguised under the “On My Mac” account, you will find the option to sync with Google.

syncing-google-contacts-in-mountain-lionHurray! Easy Peasy.

iiNet ‘Freezone’ World of Warcraft Patches

Many people in Australia (myself included) are iiNet customers.  Recent acquisitions have made iiNet the third largest ISP in Australia, and I for one, consider them excellent value for money.  One of the features iiNet has as part of its product offerings is the iiNet Freezone, which is a large selection of content which does not count towards your internet quota. Many people are also unaware that World of Warcraft patches (which can be considerable downloads using the Blizzard auto-updater) are available on a 3FL FTP Mirror.  The 3FL gaming servers actually belong to an old iiNet rival ‘WestNet’ but iiNet bought out Westnet a while ago and not many iiNet customers are aware that 3FL belongs to iiNet now – and more importantly – are counted as Freezone servers.  Besides having some very awesome online gaming servers, 3FL also has a great FTP mirror and a Steam Content server (which is also Freezone and I’ve previously covered how to limit Steam to only download games from specific servers).

Games: At Work, No One Knows I am a Wizard

A treant from World of Warcraft

There is still a strong social stigma attached to people who confess to regularly playing computer games in western culture. The lingering stereotype of gamers being solitary male teenagers with poor social skills persists, despite studies showing that the average gamer is 30 years old, and has over 30% chance of being female. The fledgling industry is now breaking into the mainstream, and the rise of casual and social gaming has turned the games industry into a $39 billion per year powerhouse of entertainment. In the next 12 months, this figure is expected to balloon into $55 billion per annum, which is a figure that will rival the international film industry and predicted that it will soon be the preferred and dominant form of entertainment.

The popularity and rise of recent casual and social gaming owes much thanks to the phenomenal success of the Nintendo Wii games console, who’s success is largely the result of it’s ability to not only break through the traditional image of the games industry but to transcend it entirely. The Wii made gaming accessible; making games a social experience anyone could enjoy (particularly families and the elderly) – opening up games to a new and untapped demographic . While not the sole reason, it was one instrumental in the rise of casual and social gaming, which in the past 12-24 months has become a seeming tidal wave of success.

There is a deep psychology to gaming that’s yet to be fully understood. Researchers have found that games provide “sense of freedom and connection to other” and this lets us explore ourselves, our friends, our families, but also complete strangers in way we could never do during a face-to-face interaction. Playing games, particularly online, gives us remarkable insight into other people free from typical social constraints, for example PlayStation’s Smash Up Derby allows users to drive classic motor cars, like the T-Bird; but also drive them at breakneck speeds into other users.

This combination of reality and fiction is deeply stimulating. It also allows us to validate and test our moral systems, since people can be exposed to morally questionable situations that would never arise organically in the real world. Studies also suggest that games make us smarter. Educational games such as Immune Attack (presented by the Federation of American Scientists) provide mental and social benefits to players. Unfortunately, there is also a cost. Games are highly validating, in that they provide a source of fun, thrill, competitiveness and this makes them very addictive; although there is a lack of formal diagnosis in current medical or psychological literature. Unfortunately, the number and frequency of deaths and illnesses resulting from online game addiction continue to grow.

While social and casual gaming can clearly enrich our lives and relationships, we must be mindful of the possible problems when taken in excess.

This post is a slightly modified version of a piece I wrote for a University assignment for the Curtin University Subject Internet Studies 102/502: The Internet and Everyday Life, answering the question: What are the implications of the rise of casual and social games on the internet for online gaming and everyday life?

See more from this unit.

Windows Server Performance on Amazon EC2

One of the trending conversations on the Web at the moment (and has been growing for quite some time) has been the idea of Cloud-based Computing.  While distributed storage has come quite a long way since the conversation began, its only really recently that we’ve had a choice of cloud based computing.

Amazon Web Services winning at Crunchies 2009

The idea behind computing in the cloud is genuinely, and extremely exciting.  Amazon Web Services, including EC2, S3 and the others – are a stroke of architectural genius.  But the problem is, that we’ve been given the false impression that cloud based computing is going to change the web.  We’re spun stories about how its going to radically decrease our infrastructure costs and we’re spoon fed fairy-tales that our scale issues are going to be as easy to fix as double clicking an icon.

You see the problem is this: at the end of the day you’re dealing with a Virtualized Environment – and its always slower than the real-deal.

While working on a project recently we bought into the whole “Elastic Cloud” as well.  We quickly learned that even though its relatively painless to spawn new instances your still ultimately bound to the same rules as you would with a cluster – if your code isn’t built to scale across several machines, its not going to.

After about 2.5 weeks of playing, tuning, perfecting the Amazon EC2 Windows instance we were running – the performance compromise was simply too great to validate its use in a production environment.  I suspect that the virtualization software being used by Amazon actually blocks processes from running in parallel (as they normally would on a physical server), since the machine had extreme difficulty in running more than one thing at a time.  And we found that Apache would do busy-waits when performing PHP Restful API calls to our other systems.  This resulted in 2 concurrent users using 100% CPU usage for the entirety of their sessions.

In the end, the Windows Amazon EC2 solution was completely untenable.  It wouldn’t even have been satisfactory for development let alone production.  So giving up on trying to find a magical “setting” – we thought we’d scale up to a more powerful Amazon instance.  But I didn’t get far before I was casually told that the AMI (the name for an Amazon VM image) I had lovingly crafted for 3 days to our own purposes, was not compatible with the Medium and Large instance settings (since I’d used a 32bit Windows Server as the base of the AMI).  At this pricing level, to constantly run the servers 24/7 for a whole month was going to cost the same, if not more than a similar(ish) physical machine hosted in the ‘old fashioned way. EPIC FAIL!

In the end we did get that physical machine, and despite having less physical memory than is available through EC2, the machine is using virtually 0% CPU and is serving stuff up faster than even we’d thought it would.

Perhaps virtualization technology will improve, and perhaps Microsoft’s Azure platform will be more beneficial – but in my books, using a Windows Server machine on Amazon’s EC2 is about as much fun as putting bamboo shoots under your fingernails.  It really does feel like a wolf in sheep’s clothing