I'm operating a CyberCafe as well (and was a consultant in this for nearly a decade) and I can safely say this..
1) You need to have some form of software security
2) You need to observe your customers needs and install the software they need
On point 1, there is no such thing as giving users full rights over the system (even when I experimented with disk image based management systems which reset on reboot, access to system settings were locked down).
If they need admin rights for installing software then you need to have some form of lock down on the critical aspects of the system.
In Windows, you can use registry hacks to:
1) Disable right clicking on the desktop (no changing of graphics settings, wallpaper etc)
2) Disable taskbar icons (no disabling of antivirus, changing of network settings)
3) Disable right-clicks on Start Menu (no adding/ removing shortcuts)
4) Disable Command Prompt (No access to what you need to secure via the command line)
5) Disable Batch/ CMD files, VBscripts or Registry Files (choose one of the latter 2 since you need either to unlock the secured system for maintenance; I recommend disabling Registry files since it's far harder to find and download a VBscript to unlock system policies)
6) Disable drive access and Windows Explorer (all downloaded files will hit the desktop since that is the one folder you cannot deny access to)
Couple this with removing the shortcuts to Control Panel and Network settings in the Start Menu and the user won't be able to muck around with changing the Network Adapter settings for a start.
In such an environment, run Deepfreeze or Windows SteadyState to reset the software installations upon a reboot.
On the second point, if you start to learn what your customers need and install them, then you need not give them access rights.
I have helped setup and managed CyberCafes with more than 100 applications and games per PC simply because a lockdown was required.
It takes time to update and patch these but trust me, you'll lose more money and man hours if anything screws up because of a user messing around with the system.