Here are some challenges and training list sorted by domain.
Crypto
You want to learn by doing, this is a great challenge to lean basic real world attacks.
Linux
You want to learn how to compile your own linux kernel. You want (have to) to send plaintext e-mails :)