To generate the .ssh dir I use this command:
ssh-keygen
taken from this tutorial: http://ebiquity.umbc.edu/Tutorials/Hadoop/05%20-
I am assuming that you have enough permissions to create this directory.
To fix your problem, you can either ssh to some other location:
ssh user@some.host
and accept new key - it will create directory ~/.ssh and known_hosts underneath, or simply create it manually using
mkdir ~/.ssh
chmod 700 ~/.ssh
Note that chmod 700 is an important step!
After that, ssh-keygen should work without complaints.