- Published on
How to solve Load key invalid format in Windows
- Authors
- Name
- Lif
What happened
At this time, I have a ssh key, generated by macos. And I copy the content of my key and paste it on my windows computer.
The key is like
-----BEGIN OPENSSH PRIVATE KEY-----
......
......
-----END OPENSSH PRIVATE KEY-----
I paste it in txt and rename it, then I use command to connect my server:
ssh -i ssh_key [email protected] -p 2222
got
Load key "ssh_key": invalid format
In fact, that doesn't happen on my mac.
Reason
Windows uses two characters the CR LF sequence; Unix only uses LF; and the classic Mac OS used CR.
After pasting, the format of ssh key changed.....
So, there is a simple way to handle this.
Just copy file from mac.
Or I can generate a file use wsl.
wsl
vim ssh_key
# paste content and ensure the content
cp ssh_key /mnt/d
# I dont want to fight with the permission of disk C
Finally, in my windows terminal:
ssh -i ssh_key [email protected] -p 2222
Success!
Other Choice
I can use some software like Termius
.
ssh config
It is a lot different to set a config on windows. This works well:
Host starlight
HostName 1.2.3.4
IdentityFile C:\Users\lif\.ssh\ssh
User root
Port 8888