03/09/2026
Small thing that catches people out, including me the first time.
When I set up a new server, the very first thing I do is install my laptop's security key on it, so that from then on I can log in without ever typing a password again. On Linux and Mac there is a single command for this that everyone in the field has used for twenty years.
On Windows, that command does not exist. Not missing from a menu, not needing to be switched on. It simply is not there.
Windows does include proper SSH tools these days, and they are good. There are nine programs in the folder. The one that copies your key over is not among them.
The reason is a bit of trivia that explains a lot: that command was never a program. It is a small script written for Linux-style shells, and when Microsoft ported the toolkit to Windows they built the real programs and left the scripts behind. Which means it is not an oversight that will get fixed. It is just not coming.
The good news is the script does something simple, so you can do the same thing yourself in one line: read your key, connect, create the folder, add the key, set the permissions. Type the password once and never again for that machine.
Better news, if you already have the Git software installed on your Windows machine: you already have the missing command. The Git installer bundles a second, more Linux-like set of these same tools, and that set includes it. So it works perfectly in one window and does not exist in another window on the same computer. Worth knowing before you spend twenty minutes concluding your installation is broken.
The problem that actually eats time is the one where the key arrives correctly and the server still asks for a password. Nine times out of ten it is folder permissions. The server quietly refuses keys if the folder they live in is writable by anyone other than you, and it will not tell you that. It just falls back to asking for a password, which looks exactly like the key never arrived. The server's own log says precisely what happened, and that is the only place it says it.
Why I bother with all of this: the password gets typed exactly once, by me, on my own machine, and never goes into a note, a message or a file. After that, adding a new machine is a thirty second job instead of a decision about where to write a password down.
Every server I have built this year got this treatment on its first boot, and I have never once had to go looking for one of their passwords. For most of them I genuinely do not remember what it was.
Full write-up: https://www.iamkay.eu/blog/ssh-copy-id-windows?utm_source=facebook&utm_medium=social&utm_campaign=post-14-ssh-copy-id-windows