I have a Ubuntu Lucid Lynx VM which I've been tinkering with. I want to set up a VPN and I am happy to learn how to do it on my own but the vastness of options makes my head spin, so I'm just looking for pointers.

Factors I want considered for my setup

* Each user needs personal authentication (not one password for all)
* I want know what OS the client is using (android / iphone other)
* I want to track how much bandwidth is being used by each individual
* Although security is important, it's mainly for bypassing China's great firewall (reach facebook / twitter) so I'm not trying to protect pentagon files. Security is good, as long as it doesn't involve hours of complicated configurations.
* Prevent the same user from using multiple devices to access vpn at the same time
* Any sugggestions?

**So my questions are:**

* What protocol should i use to be compatible with Android (say 1.6+) and iPhones?
* What administrative software should I use (free preferably but willing to invest a little)?
* What guides / tutorials can you recommend that are a little bit less confusing **[than this?](http://www.jacco2.dds.nl/networking/freeswan-l2tp.html)**

Android:
--------

16 IPSec VPN Tunnels  

8 L2TP VPN Tunnels (Dial-in: 4, Dial-out: 4)  

8 PPTP VPN Tunnels (Dial-in: 4, Dial-out: 4) 

* Embedded IPSec & PPTP client/server
* IKE key management
* DES, 3DES and AES encryption for IPSec
* Embedded powerful 3DES accelerator
* MPPE Encryption for PPTP
* L2TP within IPSec
* L2TP/PPTP/IPSec pass-through

iPhone
------

* L2TP / IPSec
* MSChapV2 Password
* RSA SecurID
* CRYPTOCard
* PPTP
* MSChapV2 Password
* RSA SecurID
* CRYPTOCard
* Cisco IPSec VPN
* Password
* RSA SecurID
* CRYPTOCard
* Certificate

**NOTES** 

* I'll be sure to add a bounty after the 2 day period, hope this question can help other people who would like to create a similar setup.
* The title of this question is not that great, feel free to edit
* I don't need all answers answered any pointers would help :)