Don't you need some kind of a cracked version of the game for that? I don't know if you can play on private servers with a Steam version of a game anyway.
It probably depends on the game and how they store server information. For instance, if they hostname for the server that broadcasts available game servers is sitting in a .ini file, you don't need a crack. If it was a hardcoded string in the binary, then you would. Of course some games may also employ other mechanisms to restrict what/where you can connect to, but in a lot of cases I've seen it is a matter of pointing to an IP with a server running.
As an example, Counter Strike: Source stored the servers in a human readable file and you could add alternative servers in the config file without a problem.
In 2007, at least, you could play WoW on a private server merely by changing your config file to point at that server; no crack was necessary. It probably was not worth Blizzard's time to shut down this configurability.
As an example, Counter Strike: Source stored the servers in a human readable file and you could add alternative servers in the config file without a problem.