Como instalar o Windows 10 OpenSSH Server

Buviadas na lista de recursos opcionais que podem ser instalados no Windows 10 estão as versões beta de um OpenSSH Client e de um OpenSSH Server. O cliente permite que você se conecte a servidores SSH remotos diretamente da linha de comando do Windows e o servidor permite que usuários remotos se conectem remotamente ao Windows 10 e recebam um prompt de comando sobre SSH.

Para aqueles que gostariam de ter acesso ao console remoto de seus computadores Windows 10, o OpenSSH Server do Windows 10 pode ser o que você está procurando. Melhor ainda, para aqueles que estão familiarizados com o OpenSSH por utilizá-lo no Linux, a versão do Windows 10 opera praticamente da mesma forma.

Embora o cliente OpenSSH do Windows 10 seja realmente fácil de instalar e usar. descobrir como colocar o OpenSSH Server em funcionamento foi uma verdadeira dor, pois você tem que fazer muitas alterações não documentadas nas permissões & privilégios e a geração de chaves não funciona como esperado. Agora que eu descobri tudo, no entanto, você não deve levar mais do que 10 minutos para seguir estas instruções e instalar uma implementação do OpenSSH Server no Windows 10.

Instalando o Windows 10 OpenSSH Server

O primeiro passo é clicar no Menu Iniciar do Windows () e depois na opção de tipo de campo de busca. Um resultado de pesquisa rotulado Manage optional features será exibido, no qual você deve clicar. Isto abrirá a tela Gerenciar recursos opcionais como mostrado abaixo.

Tela Gerenciar recursos opcionais

Esta tela mostra todos os recursos opcionais do Windows atualmente instalados. Agora clique no botão Adicionar um recurso, como indicado pela seta vermelha acima. Isto abrirá uma lista de recursos opcionais que podem ser instalados. A maioria deles são pacotes de fontes, mas se você rolar para baixo, você verá um recurso chamado OpenSSH Server (Beta).

Install the OpenSSH Server Feature

Para instalar o OpenSSH Server (Beta), basta selecioná-lo e clicar no botão Install (Instalar). Uma vez que você clique no botão Instalar, você verá o recurso desaparecer da lista. Isto é normal e nada com o que se preocupar. Basta clicar na seta para trás na parte superior esquerda da janela e você estará de volta à lista de recursos instalados, mas agora com o OpenSSH Server (Beta) instalado.

Windows 10 OpenSSH Server Installed

Pode agora fechar esta janela.

Após a instalação, dois novos serviços Windows chamados sshd e sshd-agent terão sido criados e os arquivos associados serão armazenados na pasta C:\Windows\System32\OpenSSH. A lista de arquivos instalados é:

Para finalizar a instalação, você deve reiniciar o seu computador.

Após o login, o serviço sshd não será iniciado e se você tentar iniciá-lo, o Windows informará que ele não tem os privilégios necessários para que o serviço seja iniciado.

OpenSSH Service is missing a privilege

O privilégio que o serviço precisa é Replace a Process Level Token e temos que adicioná-lo à conta do NT Service\sshd. Para fazer isso, abra o Editor Local de Política de Segurança, procurando por secpol no Menu Iniciar e selecionando o resultado da Política Local de Segurança que aparece.

Quando o Editor Local de Políticas de Segurança abrir, você deve expandir as Políticas Locais e clicar com o botão esquerdo do mouse na Atribuição de Direitos do Usuário. Depois de ter selecionado Atribuição de Direitos de Usuário, você verá vários privilégios no painel direito. Role para baixo até ver a opção Replace a process level token privilege e clique duas vezes sobre ela. Isto abrirá as propriedades desse privilégio e mostrará as contas ou grupos aos quais ele está atualmente atribuído.

Substituir um token de nível de processo Propriedades de permissão

Agora clique no botão Adicionar usuário ou grupo e digite NT Service\sshd no campo Enter the object names to select field as shown below.

Adicionar conta para privilégio

Quando estiver feito, clique ok no botão OK para dar este privilégio ao sshd. Você pode então pressionar o botão OK para fechar as propriedades e depois fechar o editor da Política Local de Segurança.

Even com o privilégio ativado, quando você tentar iniciar o serviço sshd, o Windows exibirá o erro “Windows não conseguiu iniciar o serviço sshd no Computador Local”. Erro 1067: O processo terminou inesperadamente.”

Error 1067 quando tentar iniciar o serviço SSHD

Se você olhar no C:\System32\OpenSSH\Logs\sshd.log ele exibirá erros como os seguintes.

SSHD está exibindo estes erros porque você não gerou as chaves do host que serão usadas para criptografar o tráfego entre o servidor e o cliente. Para criar estas chaves precisamos executar o comando C:\Windows\System32\OpenSSH\ssh-keygen.exe -A a partir de um prompt de comando elevado para que as chaves sejam criadas na pasta C:\Windows\System32\OpenSSH.

Usar o comando “ssh-keygen -A” irá gerar uma chave usando o caminho padrão do arquivo de chave, uma frase-chave vazia, bits padrão para o tipo de chave, e comentário padrão. Normalmente, eu adicionaria uma frase-chave, mas na versão atual do OpenSSH do Windows 10 , o ssh-keygen responderá com um erro “failed: invalid argument” quando você tentar adicionar uma frase-chave.

Executar ssh-keygen.exe

Quando o ssh-keygen terminar de criar e salvar sua chave, ele o levará de volta ao prompt de comando como mostrado acima. Você pode digitar exit e pressionar enter para sair do prompt de comando elevado.

Felizmente, ainda não terminamos e se você tentar iniciar o serviço sshd, o Windows irá responder novamente com um “Erro 1067”. Isto porque a conta NT Service\sshd não tem acesso ao C:\Windows\system32\OpenSSH\ssh_host_ed25519_key file. Para corrigir isso, vá para as propriedades do arquivo ssh_host_ed25519_key e faça as seguintes alterações:

  • Mude o dono do arquivo para NT Service\sshd.
  • Dê ao NT Service\sshd apenas a permissão de leitura para este arquivo.
  • Remover permissões para todos os usuários para este arquivo. Por exemplo, a sua conta com sessão iniciada terá permissões, que devem ser removidas.

Quando feito, as suas permissões no ficheiro ssh_host_ed25519_key deverão parecer:

Bom permissões

Se não definir as permissões correctamente, não poderá iniciar o serviço sshd e o ficheiro de log irá exibir os seguintes erros:

Quando tiver as permissões correctas definidas no ficheiro de chave privada, pode iniciar novamente o serviço sshd. Desta vez, no entanto, o serviço sshd será iniciado e estará disponível para computadores se conectarem.

SSHD Service Started

Agora que o serviço está sendo executado você pode se conectar remotamente à sua caixa do Windows 10 sobre SSH. Abaixo está um exemplo de como ele se parece quando você SSH em um computador com Windows 10. Note que você recebe um prompt de comando completo onde você pode executar todas as ferramentas de linha de comando, incluindo PowerShell.

Windows 10 Prompt de comando sobre SSH

O serviço sshd é para Automatic (Delayed Start), o que significa que o Windows irá iniciar este serviço depois de todos os outros serviços que estão configurados para Automatic terem terminado de iniciar. Portanto, depois de reiniciar um computador pode levar alguns minutos antes que o OpenSSH Server esteja em funcionamento e possa ser conectado a.

Com um OpenSSH Server rodando no Windows 10, você adicionou uma camada extra de flexibilidade com a forma como você pode gerenciar um computador. Se você decidir ativar o OpenSSH Server, certifique-se de que a porta 22, que o sshd escuta, é acessível apenas por endereços IP confiáveis.

Deixe uma resposta

O seu endereço de email não será publicado.