Skip to content


Configuring VSCodium on Windows for remote development (on Linux)

In line with the original aim of this notepad, this is more of a personal note than a proper post, so I’ll mostly just provide a list of instructions. They should be more than sufficient, but may lack details if your setup is too different from mine – but most likely any of those trendy LLMs should allow you to fill in the gaps, if any.
So, I’m setting this up on a Windows 10 client, with VSCodium 1.106.37943, for an Ubuntu 24 (LTS) server that’s running on some remarkably ancient hardware.

– Upgrade to the latest VSCodium version (yes, it is actually important, just being 2 major versions late caused the thing to fail for me with an error that wasn’t obvious at all and made me waste quite a bit of time – don’t be me 👀)

– Install the Open Remote – SSH extension

– Make sure the ssh-agent (“OpenSSH Authentication Agent”) service is running. It was already there in my Windows, if not you might look up how to install it, or try using the one that’s provided with Git for Windows (this is actually the one I tried first, but failed to use)

– Using for instance puttygen, create an EdDSA (Ed25519) key, without a passphrase (of course, you can put one, but here we won’t keep the key file for long so that seems pointless), and 1) put the public key on your server in the .ssh/authorized_keys file and 2) export it as an OpenSSH key (let’s call it mykey.asc)

– Run cmd.exe as Admin, and restrict the permissions of the key file using this command:
icacls.exe "mykey.asc" /inheritance:r /grant:r "%USERNAME%:(F)" /grant "Administrators:(F)" /grant "SYSTEM:(F)"
This is needed, as the next step will fail if the key file has too permissive restrictions (yes, this is stupid since we’ll delete said key file right after that, but well, Windows 🤷)
On a side note, simply icacls.exe "mykey.asc" will list the permissions for the key file.

– Now use this command:
ssh-add "mykey.asc"
And then you can delete mykey.asc already

– Now everything should be in order… Go to VSCodium, hit F1 and look for “Remote-SSH: Connect to Host…”, then type username@hostname_or_ip (obviously, replace username and hostname_or_ip with whatever).

The first time, it will take a short while to set up the server side (if you check what’s running on the server, you’ll notice it added a local Node.js binary) and then you should be in and bravo, you’re done.
If it fails, double-check that you did listen to my first bullet point: if not, do it. If yes… sorry you’re on your own now, but feeding the error log to your favorite LLM might hopefully help.

Bonus: how to add the remote host to the list of “SSH targets” that the extension provides without any helpful details:
Hitting the plus or cog icons next to the “SSH TARGETS” title should open an empty config (.ssh/config) file.
The syntax for it is as follows:

Host fancy-host-name
  HostName hostname_or_ip
  User username
  IdentityFile path/to/mykey.asc

The IdentityFile part is optional, and not needed in our case since we used ssh-agent.
I realized only at the end that the key could be used as a file from here, and I had already everything configured as above, and the key file deleted, so I didn’t set IdentityFile, but that’s probably a way you could use OpenSSH from Git for Windows, as well as skip importing the key via ssh-add. Needs exploring.

Posted in programming.


0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.

I’m painfully aware that KeyCaptcha suddenly vanished, and at the worst moment of course. I’ll look into acceptable replacements when able. In the meantime, as before, if you want you can still send me your comment via e-mail and I’ll post it for you.

Please solve the CAPTCHA below in order to fight spamWordPress CAPTCHA