Skip to content

Instantly share code, notes, and snippets.

@carlosanders
Last active December 30, 2023 18:33
Show Gist options
  • Save carlosanders/4428209fe46b742f39e10eefd11872f6 to your computer and use it in GitHub Desktop.
Save carlosanders/4428209fe46b742f39e10eefd11872f6 to your computer and use it in GitHub Desktop.
Passos para configurar o servidor sshd no Windows 10, por meio do bash no Ubuntu no Windows (WSL)

Servidor ssh no Windows 10 WSL

A Microsoft fez uma parceria com a Canonical para criar o Bash no Ubuntu no Windows, executando uma tecnologia chamada Windows Subsystem for Linux. Abaixo estão as instruções sobre como instalar e configurar o servidor ssh para ser executado automaticamente na inicialização.

  • Requisitos:
  • Bash do Ubuntu instalado no Windows 10.

Instalando e configruando o Servidor sshd

  1. Desinstale e reinstale o servidor ssh usando os seguintes comandos:
    sudo apt remove openssh-server
    sudo apt install openssh-server
  2. Edite o arquivo de configuração do servidor /etc/ssh/sshd_configexecutando o comando sudo vi /etc/ssh/sshd_config e altere o seguinte 2. Altere UsePrivilegeSeparation para no; 3. Altere PasswordAuthentication para yes. Isso pode ser alterado de volta para não se você configurar o par de chaves pública/privada no servidor ssh.
  3. Reinicieo ssh server:
    • sudo service ssh --full-restart
  4. Com esta configuração, o servidor ssh deve ser iniciado toda vez que você executar o Bash do Ubuntu no Windows, pois por padrão ele vem desativado. Use este comando para ativá-lo:
    • sudo service ssh start

Como iniciar automaticamente o sshd na inicialização no Windows 10

Siga os próximos passos que criarão scripts que iniciem o servidor ssh automaticamente:

  1. Crie um arquivo sshd.bat no diretório do seu usuário do Windows e edite-o com os seguintes comandos:
# crie o arquivo no diretório home do seu usuário do windows 10
touch /mnt/c/Users/bryan/sshd.bat
# adicione a seguinte linha no arquivo, substituindo o nome do usuario no exemplo para o seu
echo 'C:\Windows\System32\bash.exe -c "sudo /usr/sbin/sshd -D"' > /mnt/c/Users/bryan/sshd.bat

# ou abra o arquivo e cole o codigo
vim /mnt/c/Users/bryan/sshd.bat
# adicione o codigo no arquivo
C:\Windows\System32\bash.exe -c "sudo /usr/sbin/sshd -D"

Salve o arquivo e certifique-se de corresponder ao seu nome de usuário! Anote este local para a próxima etapa, pois no Windows isso correspondeC:\Users\SeuNomeUsuario.

  1. Crie um arquivo sshd.vbs e edite-o com os seguintes comandos:

    # crie o arquivo no diretório home do seu usuário do windows 10
    touch /mnt/c/Users/bryan/sshd.vbs
    # Adicione o seguinte código, certificando-se de colocar seu nome de usuário real:
    Set WinScriptHost = CreateObject("WScript.Shell")
    WinScriptHost.Run Chr(34) & "C:\Users\SeuNomeUsuario\sshd.bat" & Chr(34), 0
    Set WinScriptHost = Nothing
  2. Abra a caixa de comando executar com as teclas: window+r ou no menu Iniciar, digite run. Então digite shell:startup. Copie o arquivo vbs para a pasta de inicialização do windows.

  3. Finalmente, você precisará configurar o servidor ssh para iniciar sem exigir senha. Execute o comando sudo visudo no bash do Ubuntu no Windows e adicione esta linha ao final do arquivo:

    • %sudo ALL=NOPASSWD: /usr/sbin/sshd
  4. Se configurado corretamente, o servidor ssh deverá iniciar automaticamente em segundo plano quando o Windows for iniciado.

Até a próxima!

By Carlos Anders.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment