• Sobre
  • FAQ
  • Enviar artigo
  • Anuncie aqui
sexta-feira, outubro 9, 2020
Linux Descomplicado
  • Iniciante
  • Dicas
  • Saiba Como
  • Notícias
  • Contato
No Result
View All Result
  • Iniciante
  • Dicas
  • Saiba Como
  • Notícias
  • Contato
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

Ricardo Ferreira CostabyRicardo Ferreira Costa
23 de março de 2017
5 min read
0 0
0
GoTTY – Compartilhe suas ferramentas de terminal Linux como uma aplicação web
126
SHARES
220
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):

LeituraRecomendada

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

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

O poder e a versatilidade do comando xargs

7 de agosto de 2019

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
Ricardo Ferreira Costa

Ricardo Ferreira Costa

Fundador do Linux Descomplicado. Há mais de 8 anos trabalha com sistemas Linux, desde desktops a servidores. Aprecia temas voltados para novas tecnologias, internet, Linux, redes de computadores; informática em geral. Sempre em busca de novos conhecimentos. Preza por conteúdo de qualidade e autoexplicativo.

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

Oracle cria o primeiro sistema operacional autônomo do mundo, o Autonomous Linux

Oracle cria o primeiro sistema operacional autônomo do mundo, o Autonomous Linux

by Ricardo Ferreira Costa
18 de setembro de 2019
0

A Oracle proporcionou um grande marco na estratégia autônoma da empresa com a disponibilidade do Oracle Autonomous Linux. Ele, juntamente...

Em 2020, uma conferência sobre Linux ocorrerá em Redmond – sede da Microsoft

Em 2020, uma conferência sobre Linux ocorrerá em Redmond – sede da Microsoft

by Ricardo Ferreira Costa
9 de setembro de 2019
0

Uma conferência sobre Linux na sede da Microsoft não está muito longe de acontecer... Hayden Barnes, CEO e fundador da...

Projeto Manjaro em processo de mudanças

Projeto Manjaro em processo de mudanças

by Ricardo Ferreira Costa
8 de setembro de 2019
0

Iniciado como um projeto apaixonado, por 3 caras ambiciosos, em 2011, o Manjaro evoluiu rapidamente para se estabelecer como uma...

Pesquisadores identificam novo ransomware direcionado a servidores Linux

Pesquisadores identificam novo ransomware direcionado a servidores Linux

by Ricardo Ferreira Costa
7 de setembro de 2019
0

Um novo tipo de Ransomware está sendo divulgado por hackers na web e os pesquisadores deram o nome de "Lilocked...

Desenvolvedores do LibreOffice se unem para melhorar o suporte a arquivos PPT / PPTX

Desenvolvedores do LibreOffice se unem para melhorar o suporte a arquivos PPT / PPTX

by Ricardo Ferreira Costa
4 de setembro de 2019
0

LibreOffice é uma suíte office completa e uma excelente opção para os “concorrentes” diretos, bem como o MS Office. Pois,...

Load More

Publicaçõesmais recentes

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

by Ricardo Ferreira Costa
19 de setembro de 2019
2

Se sua rotina no Linux é definida por executar comandos para agilizar suas operações, essas dicas podem ser muito úteis...

Read more
Oracle cria o primeiro sistema operacional autônomo do mundo, o Autonomous Linux
Noticias

Oracle cria o primeiro sistema operacional autônomo do mundo, o Autonomous Linux

by Ricardo Ferreira Costa
18 de setembro de 2019
0

A Oracle proporcionou um grande marco na estratégia autônoma da empresa com a disponibilidade do Oracle Autonomous Linux. Ele, juntamente...

Read more
Em 2020, uma conferência sobre Linux ocorrerá em Redmond – sede da Microsoft
Noticias

Em 2020, uma conferência sobre Linux ocorrerá em Redmond – sede da Microsoft

by Ricardo Ferreira Costa
9 de setembro de 2019
0

Uma conferência sobre Linux na sede da Microsoft não está muito longe de acontecer... Hayden Barnes, CEO e fundador da...

Read more
Projeto Manjaro em processo de mudanças
Noticias

Projeto Manjaro em processo de mudanças

by Ricardo Ferreira Costa
8 de setembro de 2019
0

Iniciado como um projeto apaixonado, por 3 caras ambiciosos, em 2011, o Manjaro evoluiu rapidamente para se estabelecer como uma...

Read more
Pesquisadores identificam novo ransomware direcionado a servidores Linux
Noticias

Pesquisadores identificam novo ransomware direcionado a servidores Linux

by Ricardo Ferreira Costa
7 de setembro de 2019
0

Um novo tipo de Ransomware está sendo divulgado por hackers na web e os pesquisadores deram o nome de "Lilocked...

Read more
Desenvolvedores do LibreOffice se unem para melhorar o suporte a arquivos PPT / PPTX
Noticias

Desenvolvedores do LibreOffice se unem para melhorar o suporte a arquivos PPT / PPTX

by Ricardo Ferreira Costa
4 de setembro de 2019
0

LibreOffice é uma suíte office completa e uma excelente opção para os “concorrentes” diretos, bem como o MS Office. Pois,...

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.

Discussion about this post

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
  • Sobre
  • FAQ
  • Anuncie aqui
  • Enviar artigo
  • Política de privacidade
  • Termos de uso

CC BY-NC-SA 4.0 Copyleft | Compartilhe livremente! Você só precisa informar o autor e criar conteúdo com a mesma licença para poder usá-lo. 2011-2019 Linux Descomplicado

  • Login
No Result
View All Result
  • Iniciante
  • Dicas
  • Saiba Como
  • Noticias

CC BY-NC-SA 4.0 Copyleft | Compartilhe livremente! Você só precisa informar o autor e criar conteúdo com a mesma licença para poder usá-lo. 2011-2019 Linux Descomplicado

Welcome Back!

Login to your account below

Forgotten Password?

Create New Account!

Fill the forms bellow to register

* Ao cadastrar-se, você estará automaticamente ciente e concordando com Política de Privacidade e Termos de uso do site.
All fields are required. Log In

Retrieve your password

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

Log In