How can I change the directory that ssh-keygen outputs to?
I want to run a command like:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
My understanding is that ssh-keygen outputs to the home directory. I'm working on a networked computer using Git Bash (Windows, MYSS MINGW64) where the home directory is one I don't have access to. I change the home directory like so:
export HOME=C:/Users/myusername
so now when I enter:
echo $HOME
it says:
C:/Users/myusername
but when I again try to run the ssh-keygen command it runs in the directory that I don't have access to. I've looked through the profile file for some hard coded path but can't find anything. How do I change it to point to a directory that I do have access to?
You should be able to do this by specifying the name of the output file with the -f
option, e.g.,
ssh-keygen -t rsa -b 4096 -C "[email protected]" -f $HOME/.ssh/id_rsa
Of course, it really helps if the output directory has already been created.
For further reading:
- tutorial (already alluded to, but omitting this informat)
- manual page for ssh-keygen
- ssh-keygen -f confusion (create the directory first)
-
Linux / Unix ssh-keygen: Create A Host Key File (example of
-f
usage)