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

[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.