Advertisement Jump to content
Sign in to follow this  
CodeButcher

OpenSSH on windows

This topic is 1769 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm having a problem with OpenSSH.
I've been using openssh provided by http://www.mls-software.com/opensshd.html on windows 7 ultimate, and discovered the problem following the instructions to generate keys for github on https://help.github.com/articles/generating-ssh-keys.
 
If I generate the keys and then try to ssh localhost on the same machine, the banner displays but immediately I get "Connection closed by 127.0.0.1". However, if remove the keys from home/.ssh directory and try to ssh localhost on again, it works and prompts me for my password as it did before generating the keys. With this, I've deducted that the keys are relate to the cause of the server closing the connection.
I've tried running opensshd in debug mode, and it works as expected without closing. It seems this problem happens when I try to start opensshd as a service like normal (using the command prompt and typing 'net start opensshd' or by starting it via Windows Services)
 
What's causing this? Edited by phantom

Share this post


Link to post
Share on other sites
Advertisement
Please don't redact your post like that. The preferred approach is to reply to the thread with the solution you found. This allows others to learn from your question, and also means that someone else might chime in with an alternative solution that is better or easier, or just interesting.

Share this post


Link to post
Share on other sites
And to that end I've restored the post.

Please don't do that again and please share the solution you found so that, as mentioned, others can learn from it.

Share this post


Link to post
Share on other sites

The problem is solved. The problem comes from the account running the service. I'm guessing that opensshd.exe that comes with the OpenSSH bundle checks the environment variables of the user that runs it. By default, services are run by the local system administrator account, and I've deducted that it tries to read the that user's profile, which is buried in "C:\Windows\System32\config\systemprofile" (at least on a Win7 machine). It can be fixed by using Windows Services and selecting 'properties' of 'OpenSSH Server' service to change the log-on account from 'Local System Administrator' to 'this account' (and setting the username/password accordingly). Of course, the service must be restarted for the changes to take effect.

This resolves the connection-closed issue, but it still prompts for the ssh session password even if the keys are set. I've deducted that OpenSSH is being picky about permissions, but changing the option from 'yes' to 'no' for the variable 'StrictModes' in the file located at "OpenSSH/etc/sshd_config" and restarting the service fixes this problem and it will run as expected.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!