Acesse seu terminal de servidor através de seu navegador da web

Suponhamos que por algum motivo não possamos acessar nosso servidor com um terminal, porque talvez estejamos andando na rua e só temos nosso celular em cima, e como não somos geeks nem nada, não instalamos nenhum aplicativo este tipo.

O que fazemos então? Bem, nada, não podemos fazer nada até chegarmos em casa ou no trabalho, acessar nosso servidor e instalar shellinabox. Mas o que é isso, você come?

shellinabox

shellinabox implementos Um servidor teia que pode Exportar ferramentas de linha comando para uma emulador de terminal baseado na web. este emulador está acessível a partir de qualquer navegador que suporte JavaScript e CSS y não requer Nenhum tipo de plug-in extra para trabalhar.

Embora o projeto original tenha sido descontinuado, há um garfo no Github que nos permite instalá-lo se não o tivermos nos repositórios. No caso do Ubuntu 14.04 sim, então só temos que abrir um terminal e colocar:

$ sudo apt install shellinabox openssl ca-certificates

No caso dos dois últimos pacotes, é para o caso de não os termos já instalados. E uma vez feito isso, podemos agora acessar nosso terminal na web, colocando no navegador:

http://la_ip_o_nombre_del_servidor:4200

shellinabox

Use Shellinabox através da porta 80

Como você pode ver, por padrão o Shellinabox usa a porta 4200 e podemos não ser capazes de acessá-lo se estiver bloqueado por nosso provedor de serviços. Podemos usar uma variante que não é segura, mas funciona, que é usar shellinabox Perto do porto 80, embora mais tarde eu mostre como usar o 443 se tivermos disponível.

O que faremos é acessar o Shellinabox colocando em nosso navegador:

http://la_ip_o_nombre_del_servidor/terminal

Para fazer isso, a primeira coisa que fazemos é instalar o NGinx:

$ sudo apt install nginx

Agora nós criamos o arquivo / etc / nginx / sites-enabled / shellinabox e colocamos dentro:

 servidor {proxy_set_header Host $ http_host; proxy_set_header X-Forwarded-Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; localização / terminal / {proxy_pass http: // localhost: 4200 /; }}

Nós editamos o arquivo / etc / default / shellinabox e colocamos no final:

SHELLINABOX_ARGS="--localhost-only --disable-ssl"

Nós reiniciamos Nginx y shellinabox:

$ sudo /etc/init.d/shellinabox restart $ sudo /etc/init.d/nginx restart

E pronto!!

Use Shellinabox através da porta 443

Este processo é um pouco mais complicado, porque temos que criar nossos certificados SSL. Para isso, faremos o seguinte:

Primeiro, instalamos o OpenSSL:

$ sudo apt-get install openssl

Criamos uma chave privada:

openssl genrsa -out server.key 2024

Criamos a base do certificado, onde colocaremos uma série de dados:

openssl req -new -key server.key -out server.csr

Os dados que preencheremos serão:

  • Nome do país (código de 2 letras): Código do país em formato ISO de duas letras (por exemplo: ES, US, CU, MX ..).
  • Nome do estado ou província (nome completo): Estado ou província (ex: Flórida).
  • Nome da localidade: Vila ou cidade (ex: Miami).
  • Nome da organização: Nome da organização, (ex: DesdeLinux).
  • Nome da unidade organizacional: Setor de organização (ex: Blogs).
  • Nome comum: Nome de domínio ou FQDN. É importante saber que existe uma diferença entre blogs.desdelinux.net e desdelinux.líquido. Você deve registrar o certificado para um ou outro.
  • Endereço de e-mail: Endereço de e-mail para contato.
  • Uma senha de desafio: Em branco.
  • Um nome de empresa opcional: Em branco.

Agora geramos o certificado SSL, que pegará os dados que inserimos:

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Copiamos os certificados para a pasta SSL dentro de / etc:

$ sudo cp server.crt /etc/ssl/certs/ssl.crt $ sudo cp server.key /etc/ssl/certs/ssl.key

Nós editamos o arquivo novamente o arquivo / etc / default / shellinabox e mudamos o que havíamos colocado, colocando no final:

SHELLINABOX_ARGS="--no-beep"

Agora vamos editar o arquivo / etc / nginx / sites-enabled / shellinabox e colocamos dentro:

 servidor {escuta 80; return 301 https: // $ host $ request_uri; } servidor {ouvir 443; server_name myvps.com; ssl_certificate /etc/ssl/certs/ssl.crt; ssl_certificate_key /etc/ssl/certs/ssl.key; ssl on; ssl_session_cache embutido: 1000 compartilhado: SSL: 10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH :! aNULL :! eNULL :! EXPORT :! CAMELLIA :! DES :! MD5 :! PSK :! RC4; ssl_prefer_server_ciphers ativado; access_log /var/log/nginx/shellinabox.access.log; localização / terminal {proxy_set_header Host $ host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; esquema proxy_set_header X-Forwarded-Proto $; # Corrija o erro “Parece que a configuração do proxy reverso está corrompida". Proxy_pass http: // localhost: 4200 /; proxy_read_timeout 90; proxy_redirect http: // localhost: 4200 https://myvps.com/terminal/;} }

Reiniciamos os serviços:

$ sudo /etc/init.d/shellinabox restart $ sudo /etc/init.d/nginx restart

e nós acessamos

http://la_ip_o_nombre_del_servidor/terminal

que deve nos redirecionar para:

https://la_ip_o_nombre_del_servidor/terminal

E isso e tudo.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   palhaço dito

    Isso me lembrou do que sai na série CSI

  2.   Drassil dito

    Um post muito interessante; Nunca tinha ouvido falar desse utilitário e a verdade é que é muito curioso e útil ... Devo presumir que assim como esse conceito foi aplicado ao Ngix, também pode ser aplicado ao Apache, certo?

  3.   mat1986 dito

    Isso me lembra de como o Butterfly funciona, especialmente ao usar o terminal do navegador. Claro, não com tanta complexidade quanto o que eles mostram aqui 🙂

  4.   xykyz dito

    «Suponhamos que por algum motivo não podemos aceder ao nosso servidor com um terminal, porque talvez, estejamos a caminhar pela rua e só temos o nosso telemóvel em cima, e como não somos geeks nem nada, não instalámos nenhuma aplicação deste tipo. "

    Como vamos querer entrar em nosso servidor se não somos geeks? hahaha

    Parece-me muito mais rápido usar um aplicativo ssh do que usar um navegador e você evita instalar software no servidor, mas ainda é uma opção interessante.

  5.   nonex dito

    Vantagem quando você está em um ambiente com Windows puro.

  6.   Nome dito

    "Vantagem quando você está em um lugar com Windows puro."
    entoses ……………… putty ou kitty.

  7.   Jose Manuel Higuera dito

    excelentes homens este super obrigado pela contribuição