WeTTY – Terminal no Navegador

Acesse seu terminal diretamente no navegador, seja localhost ou remotamente, usando o wetty, e como tornar esse acesso mais seguro!


| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.


1. Introdução

O Terminal é uma ferramenta poderosa entre os sistemas baseados em UNIX®, afinal com ele se faz praticamente qualquer coisa: Pode abrir o ChatGPT, cultivar um Bonsai, dar comandos de manutenção, enfim, é uma solução eficiente!

Mas já imaginou executar ele diretamente em seu navegador de internet? Dessa forma o terminal fica disponível localmente ou remotamente, bastando abrir o IP do seu computador em outro dispositivo usando qualquer navegador de internet de sua escolha.

E para isso, recomendo o WeTTY! Existem soluções melhores como o shellhub.io mas eu particularmente gostei do WeTTY pela simplicidade. O ShellHub possui recursos mais avançados para administração de Cloud Servers como Azure® ou Amazon WS.

2. WeTTY: Web + TTY

De acordo com o próprio projeto, “o WeTTY é uma alternativa para ajaxterm e anyterm, mas muito melhor do que eles por usar xterm.js, que é uma implementação completa de emulação de terminal escrita inteiramente em JavaScript. O WeTTY usa websockets em vez de Ajax e, portanto, possui melhor tempo de resposta”.

Concordo com tais afirmações:

Em meus testes o acesso foi simples e fluído herdando as configurações padrão do meu arquivo .bashrc!

3. Instalação

A instalação pode ser realizada de 2 formas, escolha a que for mais conveniente.

Particularmente prefiro a opção com containers Docker por ser mais simples de configurar e remover se houver necessidade.

3.1 Yarn

Para a primeira maneira de configurar o WeTTY utilizaremos o gerenciador de pacotes YARN para aplicar o WeTTY ao sistema. Instale o Yarn em sua distribuição, normalmente disponível nos repositórios:

Para Ubuntu, Debian e derivados:

$ sudo apt install yarn

Para sistemas ArchLinux-based:

$ sudo pacman -S yarn

Se sua distro não possuir o Yarn nos repositórios, execute o comando genérico de instalação:

$ curl -o- -L https://yarnpkg.com/install.sh | bash

3.2 Docker

Primeiro instale o Docker em seu sistema.

Para Ubuntu, Debian e derivados:

$ sudo apt install docker.io

Para sistemas ArchLinux-based:

$ sudo pacman -S docker.io

Agora execute este comando:

$ docker run --name wetty -it -p 3000:3000 wettyoss/wetty --ssh-host=SEU_IP &

Atento para colocar o seu IP atual do seu sistema no campo acima!
Aguarde alguns minutos e pronto: O serviço estará no ar!

3.2.1 Remoção

Para parar o container, utilize os seguintes comandos:

$ docker stop wetty

Para removê-lo:

$ docker rm wetty

4. Utilização

Uma vez que o WeTTY estiver em execução, se tudo correu bem, você poderá acessa-lo localmente de seu navegador:

http://localhost:3000/wetty

Ele pedirá o usuário e senha do usuário desejado – tanto o atualmente logado como root – e você já estará dentro do terminal!

5. Segurança

Para reforçar a segurança no localhost é interessante ter um certificado SSL, do contrário o acesso Web pode expor seu usuário e senha como plaintext na rede a alguém que utilize a técnica man-in-the-middle.

Se for acessar remotamente, utilize uma VPN; Se for acessar a página web diretamente abrindo a porta 3000 no modem, é imperativo que use um certificado SSL!

Para tal o projeto oferece uma página com dicas, mas adianto que isso requer um conhecimento sobre certificações web e como elas funcionam. Qualquer certificação funcionará, tanto via Apache quanto NGINX.

Devido à natureza do conteúdo não caberá uma explicação maior nesta publicação.

6. Conclusão

Ter acesso direto via Web ao terminal do seu sistema linux pode ser uma solução útil para melhorar a forma como o sistema é gerenciado, principalmente remotamente.

Ou em sistemas cujo uso se dê prioritariamente via navegador, como os Chromebooks, o terminal dentro do navegador pode tornar os trabalhos de manutenção mais produtivos!

Atento se algum plugin/extensão de navegador não vá trazer riscos de segurança também, portanto recomendo cautela extra se utilizar a ferramenta em um navegador com dezenas de extensões!

#UrbanCompassPony

2 comentários em “WeTTY – Terminal no Navegador”

Deixe um comentário