Pular para o conteúdo principal

Guia definitivo para habilitar o SSH no Windows Subsystem for Linux (WSL)

No post anterior, eu mostrei como instalar o Windows Subsystem for Linux (WSL) no Windows 10 de forma simples e rápida.

No meu caso uso dois laptops, sendo um deles para laboratório. Acesso o laptop que uso para laboratório remotamente. Já o fazia com o Remote Desktop e agora com a instância do WSL lá instalada utilizando SSH. 

Convenhamos que não é pratico acessar a máquina por RDP para, então, executar os comandos no Linux. Então Por isso vou mostrar o passo a passo de como habilitar o SSH no WSL e conectar nela a partir de outros computadores em sua rede.

Primeiro vamos rodar um 'sudo apt update', para atualizar a lista das versões dos pacotes disponíveis.


Lista de pacotes atualizados, vamos instalar o SSH Server com o comando 'sudo apt install openssh-server'.


Finalizado a instalação do SSH Server, vamos habilitar o bind na porta 22, editando o 'sshd_config', excutando 'sudo nano /etc/ssh/sshd_config'. Neste exemplo estou utilizando o Nano para edição, mas você pode usar o Vi, Vim ou qualquer outro editor que prefira.

Com o editor aberto vamos descomentar, simplesmente tirando o '#', as linhas Port e, caso deseje utilizar outra porta, altere para o número de porta que deseje, como 2222, por exemplo. Neste exemplo vamos seguir com a porta 22.

ListenAddress em '0.0.0.0', como está na configuração, escuta a porta configurada em qualquer IP configurado no WSL. No exemplo tenho somente um endereço IP, manterei a configuração como está. Mas caso tenha mais de um endereço IP no seu WSL e queira que seja possível conectar em um por SSH em um endereço IP específico, altere esta configuração para o endereço IP que deseja.

Ainda com o editor aberto, localize 'PasswordAuthentication', descomente e altere para 'yes'. Feche o editor apertando 'CTRL+X' e salve o 'sshd_config'.


SSH instalado e configurado, vamos iniciar o serviço utilizando o comando 'sudo service ssh start'.


Vamos pegar o IP do Linux como o comando 'ip a' que está sendo executado no WSL, precisaremos disto no passo seguinte. Também é possível ver o IP pelo comando 'ifconfig' caso tenho o Net tools instalado Linux. A interface deste exemplo é a eth0.


Agora no Windows onde o WSL está sendo executado vamos executar o comando, abrindo o prompt ou PowerShell como Administrador, 'netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=22 connectaddress=172.31.200.74 connectport=22'. O portproxy vai encaminhar todo o tráfego que chegar na porta 22 na máquina que executa o WSL para o endereço IP do WSL. Substitua o '172.31.200.74' pelo endereço IP que você anotou (anotou né?!) no passo anterior.


Como o comando não dá retorno, caso queira confirmar execute o 'netsh interface portproxy show v4tov4'


Agora vamos conectar por SSH no nosso WSL. Utilize o IP da máquina onde roda o WSL, utilizando o formato 'usurio@host'. Neste exemplo vou utilizar o SSH nativo do Windows. Mas você pode utilizar outra ferramenta, como o Putty ou o Windows Terminal, que falaremos em breve.


Agora conseguimos acessar o nosso WSL por SSH remotamente. Divirtam-se! :)

Postagens mais visitadas deste blog

Listando no Active Directory usuários ativos e inativos com PowerShell

E aí meus amigos! Tudo bem com vocês?  Por aqui tudo ótimo! :) Trago hoje mais um script em PowerShell que me auxiliou muito. Estávamos em um call com um fornecedor para adquirir uma solução e essa solução tinha seu valor de licenciamento calculado na quantidade de usuários ativos no Active Directory.  Foi necessário extrair uma lista dos usuários que tivessem feito logon no Active Directory nos últimos 3 meses. Também era necessário que fossem contabilizadas somente contas que estivessem habilitadas. A partir daí, bolei um script em PowerShell que resolvesse essa necessidade. Basta alterar a variável ‘ $daysActive ’ para a quantidade de dias que você precisa. Nesse caso está configurado para ‘90’, que são 3 meses. Mas você pode configurar isso de acordo com a sua necessidade. “Ah cara, muito legal isso, mas eu precisava de um script que listasse os usuários inativos.”  Muito simples! Usa o script abaixo. Ele lista usuários que não tenham se logado há mais de 90 dias. Caso precise alte

[Passo a Passo] Instalando o Gradle 7.2 no Windows

  O Gradle é uma ferramenta de automação de builds conhecida por sua flexibilidade e automação para criação de aplicações. O processo de build inclui complilação e empacotamento do código. Além disso o Gradle é capaz de automatizar builds em variadas linguagens, como Java, Kotlin, Groovy, Scala, Swift e C++.  Ao contrário do Maven e do Ant, que utilizam o XML para configuração e construção do build, o Gradle utiliza scripts escritos em Groovy, permitindo o build, testes e deploy em diversas plataformas. Sem mais delongas, vamos seguir com a instalação. Antes de começar a instalação, o óbvio precisa ser dito. Presumo que você chegou aqui por que já desenvolve em Java ou quer desenvolver, então tem o JRE ou JDK (que traz o JRE) instalado. Caso não tenha o JRE (Java Runtime Environment) instalado, baixe em https://www.java.com/pt-BR/download. Agora vamos baixar o Gradle em https://gradle.org/releases/. O último relase no momento desse post é a 7.2. A opção que escolhida, e como a própria