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

[Resolvido] Intalação do Ubuntu Server 20.04 empacado em 'curtin command in-target'

  Sim, eu sei, a imagem tem marca d'√°gua. Sabe porque? Por que acabou o dinheiro! ūüėÜ √Č meus amigos, criei ambientes de testes como se n√£o houvesse amanh√£, com inst√Ęncias parrudas, usando uma dessas inst√Ęncias como ambiente de desenvolvimento. Os objetivos do lab e as atividades subsequentes foram devidamente entregues, mas a conta do meu descontrole tecnol√≥gico chegou e quase que tive um tro√ßo quando vi a fatura. Decidi trazer meu labs aqui para o meu datacenter, tamb√©m conhecido como note velho, mas parrudo, que j√° t√° fazendo hora-extra.   Estava instalando o Ubuntu Server no Hyper-v e a instala√ß√£o empacou no ' curtin command in-target' , quase l√° nos finais da instala√ß√£o. Tentei em outro hypervisor e tive o mesmo resultado. Duas tratativas s√£o poss√≠veis:  desabilite a placa de rede durante a instala√ß√£o; ou tenha sa√≠da para a internet, no caso utilize uma bridged adaptor (ou external, o nome varia de acordo como hypervisor).  Aparentemente o instalador tenta fazer um '

[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

[Linux] Alterando o nome do computador pelo terminal

 E ai meus amigos, tudo bem? Vamos para mais uma dica do pinguim. ūüźß Para renomear o computador pelo terminal √© bem simples. Primeiro, edite o arquivo ' /etc/hostname ' no seu editor favorito. Mais uma vez eu vou usar o nano aqui. Com o editor aberto, altere o nome atual, neste caso √© o 'ip-172-31-42-238'. Altere para o nome desejado, no meu caso vou alterar para o nome ' lab '. Em seguida salve o arquivo e saia do editor. Agora, edite o ' /etc/hosts ', substituindo qualquer entrada do nome antigo pelo novo nome. E por √ļltimo, execute o comando, com superusu√°rio, o comando ' hostname novo-nome-do-computador ', neste exemplo o nome √© lab , ent√£o: ' hostname lab '. Para confirmar que o nome foi alterado, executei novamente o comando ' hostname '. Pronto, se voc√™ abrir mais uma sess√£o SSH seu computador j√° estar√° com o novo nome configurado. F√°cil n√£o?! :) At√© breve para novas dicas.