sexta-feira, janeiro 12, 2024
  • Login
Linux Descomplicado
Advertisement
No Result
View All Result
No Result
View All Result
Linux Descomplicado
No Result
View All Result
Home Destaques

GoTTY – Compartilhe suas ferramentas de terminal Linux como uma aplicação web

23 de março de 2017
Reading Time: 5 mins read
0
GoTTY – Compartilhe suas ferramentas de terminal Linux como uma aplicação web
126
SHARES
463
VIEWS
Compartilhar no FacebookCompartilhar no Twitter

GoTTY é uma ferramenta simples que transforma o terminal Linux como uma aplicação web. Permitindo que qualquer ferramenta ou script de terminal Linux, que possa ter, venham a ser “transformadas” em aplicações web.

Terminal Linux como uma aplicação web

O GoTTY usa o emulador de terminal hterm para executar um terminal baseado em JavaScript em navegadores web. Assim, ele fornece um servidor websocket que, simplesmente, transmite a saída do terminal (TTY) para os usuários na web. Desta maneira, você pode compartilhar e transformar as ferramentas do seu sistema Linux, ou algum programa via terminal, em aplicações web (veja a ferramenta em ação):

gotty-nano

Por padrão, o GoTTY não permite que os usuários, que usam o navegador web, enviem quaisquer comandos ou interações com o teclado; exceto o redimensionamento da janela do terminal. É possível que os usuários interajam com o terminal; desde que você permita! Contudo, aceitar a interação dos usuários remotos é perigoso para a maioria dos casos – permita com moderação 😉

RECOMENDO QUE LEIA
Saiba como fazer pesquisas no Google diretamente pelo terminal Linux
Algumas ferramentas de terminal que podem ser mais práticas do que os aplicativos gráficos

Pode ser útil para mim?!

Esta ferramenta pode ser útil se você não quiser dar o acesso SSH a alguém, por exemplo. Basta saber qual a saída de comando que ele gostaria de ver, e executar esse comando em seu sistema local e permitir que ele veja em seu navegador web de qualquer lugar.

Ou, em um cenário acadêmico, onde precise disponibilizar ou exemplificar ferramentas de linha de comando para várias pessoas, simultaneamente. Ou pretende que outras pessoas editem o mesmo arquivo ou vejam arquivos de logs, por exemplo. Em resumo, você pode compartilhar qualquer comando Linux como uma aplicação web 😉

Mão na massa

AMBIENTE DE TESTES
Eu usei o openSUSE Tumbleweed para testar essa ferramenta. Não precisei instalar nenhum pacote como dependência. Acredito que na maioria das distribuições Linux também não precise 😉

Instalando

Faça o download, de um arquivo compactado, AQUI – conforme a arquitetura do seu sistema (32 ou 64 bits). No meu caso eu segui esses passos:

wget https://github.com/yudai/gotty/releases/download/pre-release/gotty_linux_amd64.tar.gz

Descompactar arquivo tar.gz:

tar zxvf gotty_linux_amd64.tar.gz

Pronto!!

Usando a ferramenta

AVISO
Todo o tráfego entre o servidor e os usuários NÃO são criptografados, por padrão.

O arquivo descompactado possui um arquivo binário chamado gotty. Para transformar as ferramentas do seu sistema Linux, ou algum programa via terminal, em aplicações web use os seguintes parâmetros:

gotty [options] [command>] [arguments…]

Assim, execute o gotty com seu comando preferido, com seus argumentos, e prossiga ao um navegador web. Por exemplo, caso queira ver os processos e recursos do seu sistema usamos o comando top:

./gotty top

Por padrão, o GoTTY inicia um servidor web na porta 8080. Abra a URL em seu navegador e verá o comando em execução como se estivesse sendo executado no seu terminal 😉

gotty-top

E mais… você pode compartilhar um arquivo editável pelo nano ou vim, por exemplo (primeira imagem como exemplo):

./gotty -w nano arquivo

Onde,

-w: Permite usuários interagirem no navegador web com o terminal do seu sistema (seja cuidadoso)

Além disso, o GoTTY permite estabelecer conexões seguras (TLS/SSL), desde que forneça os arquivos de certificados (–tls-crt, –tls-key e –tls-ca-crt) e permite que os usuários enviem parâmetros de execução diretamente pelo navegador web (http://example.com:8080/?arg=AAA&arg=BBB). Para mais funções, verifique a documentação oficial.

Por fim, alguns exemplos:

RECOMENDO QUE LEIA
Saiba como criar aplicações desktop multiplataforma usando JavaScript, HTML e CSS
./gotty tail -f arquivo
./gotty du -h
./gotty nmap host
./gotty sh meuscript.sh

Questões de segurança

Para restringir o acesso de determinado usuário, você pode usar a opção -c para ativar uma autenticação básica. Com esta opção, os usuários precisam inserir o nome de usuário e a senha especificados para se conectarem ao servidor do GoTTY. Observe que as credenciais serão transmitidas entre o servidor e o usuário em texto plano (sem segurança). Para uma autenticação mais segura, considere um módulo de autenticação usando certificado SSL/TLS.

A opção -r é um pouco mais simples. Com esta opção, o GoTTY gera uma URL aleatória para que apenas as pessoas que conheçam a URL possam ter acesso ao servidor.

Para conexão segura (TLS/SSL), recomenda-se que você use a opção -t que habilita o TLS/SSL na sessão. Por padrão, o GoTTY carrega os arquivos crt e key colocados em ~/.gotty.crt e ~/.gotty.key. Você pode substituir esses caminhos de arquivo com as opções –tls-crt e –tls-key. Caso não tenha um certificado válido, você pode gerar um arquivo de certificado auto-assinado usando o openssl 😉

openssl req -x509 -nodes -days 9999 -newkey rsa:2048 -keyout ~/.gotty.key -out ~/.gotty.crt

Mais opções de customizações podem ser feitas em um arquivo que deve ser criado e localizado em ~/.gotty:

// Listen at port 9000 by default
port = "9000"

// Enable TSL/SSL by default
enable_tls = true

// hterm preferences
// Smaller font and a little bit bluer background color
preferences {
    font_size = 5,
    background_color = "rgb(16, 16, 32)"
}

Modelo do arquivo de configuração AQUI.

MAIS INFORMAÇÕES
GitHub Oficial
Tags: aplicaçãoterminalweb

Gosta de Linux?! Receba materiais exclusivos!

Inscreva-se gratuitamente e receba, com exclusividade, postagens e materiais ocultos para o público em geral. Inclusive, promoções e novidades em primeira mão!

Entrar na lista de e-mails

Related Posts

8 dicas para você aumentar sua produtividade enquanto usa o shell Bash
Dicas

8 dicas para você aumentar sua produtividade enquanto usa o shell Bash

19 de setembro de 2019
O poder e a versatilidade do comando xargs
Dicas

O poder e a versatilidade do comando xargs

7 de agosto de 2019
tmate e shellshare – ferramentas para compartilhamento instantâneo do terminal Linux
Dicas

tmate e shellshare – ferramentas para compartilhamento instantâneo do terminal Linux

10 de janeiro de 2019
Saiba como salvar e reproduzir todos os comandos executados em uma sessão no terminal Linux usando o comando script
Comandos Linux

Saiba como salvar e reproduzir todos os comandos executados em uma sessão no terminal Linux usando o comando script

29 de março de 2017
Saiba como fazer pesquisas no Google diretamente pelo terminal Linux
Dicas

Saiba como fazer pesquisas no Google diretamente pelo terminal Linux

20 de dezembro de 2016
Go Terminal – nova proposta para emuladores de terminal para Linux
Comandos Linux

Go Terminal – nova proposta para emuladores de terminal para Linux

11 de julho de 2016

Últimas novidades

A Emoção dos Bônus de Sorteio Semanal no BC Games: Como Aumentar Suas Chances de Vitória

by Linux Descomplicado
7 de novembro de 2023
0

O mundo dos jogos online é vasto e repleto de oportunidades para diversão e, às vezes, recompensas financeiras. Entre esses...

Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais

Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais

by Linux Descomplicado
30 de agosto de 2023
0

Nos últimos anos, o mundo dos jogos vem passando por uma revolução que está redefinindo a forma como entendemos os...

Saiba como acompanhar os jogos da Copa do Mundo no Linux

Saiba como acompanhar os jogos da Copa do Mundo no Linux

by Linux Descomplicado
14 de outubro de 2022
0

Conheça algumas estratégias adotadas por quem deseja acompanhar os jogos da Copa do Mundo 2022 usando o Linux

Como aproveitar o uso de proxy móvel no seu negócio?

Como aproveitar o uso de proxy móvel no seu negócio?

by Linux Descomplicado
31 de agosto de 2022
0

Dados são a nova moeda do mercado, e quanto mais uma empresa conhece as necessidades e desejo dos usuários, mais...

Metaverso: o que precisamos entender sobre esse conceito

Metaverso: o que precisamos entender sobre esse conceito

by Linux Descomplicado
23 de maio de 2022
0

Se um dia alguém dissesse ser possível combinar realidade virtual imersiva, MMORPG e web, isso seria chamado insanidade. No entanto,...

Load More

Publicaçõesmais recentes

5 Razões pelas quais o Linux Mint é a Distribuição perfeita para usuários vindos do Windows
Distribuições

5 Razões pelas quais o Linux Mint é a Distribuição perfeita para usuários vindos do Windows

by Linux Descomplicado
4 de dezembro de 2023
0

Existem muitas versões do Linux que são boas para iniciantes, mas o Linux Mint é especialmente voltado para pessoas que...

Read more
Linux ou Windows: Guia completo para você fazer a escolha certa
Dicas

Linux ou Windows: Guia completo para você fazer a escolha certa

by Linux Descomplicado
3 de dezembro de 2023
0

Escolher entre Linux e Windows é uma decisão crucial que afeta diretamente a experiência do usuário no mundo da tecnologia....

Read more
Noticias

A Emoção dos Bônus de Sorteio Semanal no BC Games: Como Aumentar Suas Chances de Vitória

by Linux Descomplicado
7 de novembro de 2023
0

O mundo dos jogos online é vasto e repleto de oportunidades para diversão e, às vezes, recompensas financeiras. Entre esses...

Read more
Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais
Noticias

Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais

by Linux Descomplicado
30 de agosto de 2023
0

Nos últimos anos, o mundo dos jogos vem passando por uma revolução que está redefinindo a forma como entendemos os...

Read more
SaaS, IaaS, PaaS e FaaS: tipos de serviços em nuvem, suas vantagens e aplicações
Administradores de Rede

SaaS, IaaS, PaaS e FaaS: tipos de serviços em nuvem, suas vantagens e aplicações

by Linux Descomplicado
2 de agosto de 2023
0

Os serviços em nuvem trazem muitas vantagens para qualquer pessoa ou empresa que utilize arquivos digitais. Mas você sabe a...

Read more
Criação de Apps: do Desenvolvimento à Publicação
Tecnologia

Criação de Apps: do Desenvolvimento à Publicação

by Linux Descomplicado
31 de maio de 2023
0

Até 2022, a Google Play Store somava mais de 3,3 milhões de aplicativos móveis disponíveis para download. Já na Apple...

Read more
Load More

Mantenha-se conectado

  • Área Exclusiva 200 Membros
  • 23k Fãs
  • 8k Seguidores
  • 500 Leitores
  • 100 Seguidores
  • 1k Inscritos
  • 2k Leitores

Quer receber as novidades mais recentes no seu e-mail? Informe-o no campo de e-mail e clique em Assinar! Mais de 2000 já se inscreveram

*Sem spam, eu prometo :).

ATENÇÃO
Os comentários abaixo são de inteira responsabilidade de seus respectivos autores e não representam, necessariamente, a opinião do Linux Descomplicado.

Deixe uma resposta Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Next Post
Saiba como prevenir que seus arquivos e pastas sejam removidos ou modificados acidentalmente

Saiba como prevenir que seus arquivos e pastas sejam removidos ou modificados acidentalmente

O Linux Descomplicado nasceu, em 2011, com o intuito de trazer informações relevantes e promover fácil acesso a todos usuários interessados em aprender a usar o sistema Linux, independentemente se está iniciando ou tem certa experiência com Linux.

Participe

  • Publique seu artigo
  • Login como articulista
  • Pesquisa – sobre os leitores

Editorial

  • Contato
  • Anuncie aqui
  • Política de privacidade

Newsletter

Quer receber as novidades mais recentes no seu e-mail? Informe-o no campo de e-mail e clique em Assinar! Mais de 2000 já se inscreveram

*Sem spam, eu prometo :).

Promoções e materiais exclusivos!

Cadastre-se gratuitamente
  • #9720 (sem título)
  • Anuncie aqui
  • Contato
  • Excluir conta
  • Home
  • Login Customizer
  • Newsletter
  • Newsletter personalizada
  • Pesquisa – sobre os leitores
  • Política de privacidade
  • Promoções e novidades
  • Publicações especias
  • Publicações favoritas
  • Publique seu artigo
  • Saiba como você pode contribuir
  • Sobre
  • Termos de uso

© 2024 JNews - Premium WordPress news & magazine theme by Jegtheme.

No Result
View All Result
  • #9720 (sem título)
  • Anuncie aqui
  • Contato
  • Excluir conta
  • Home
  • Login Customizer
  • Newsletter
  • Newsletter personalizada
  • Pesquisa – sobre os leitores
  • Política de privacidade
  • Promoções e novidades
  • Publicações especias
  • Publicações favoritas
  • Publique seu artigo
  • Saiba como você pode contribuir
  • Sobre
  • Termos de uso

© 2024 JNews - Premium WordPress news & magazine theme by Jegtheme.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In